Tarkibga o'tish

034. Rollar, GRANT va RLS

Bu mavzuda huquqlar va qator darajasidagi xavfsizlik bo'yicha 15 ta masala bor. Har bir masala oldida qavs ichida sxema nomi va qiyinlik darajasi ko'rsatilgan. Sxemalar Sxemalar va tayyorlov sahifasida berilgan.

Masalani o'zingiz yechib, natijani Kutilgan natija bilan solishtiring. O'zgartiruvchi masalalarda (INSERT, UPDATE, DELETE, DDL) natija shartda aytilgan tekshiruv so'rovidan olingan. Natija 10 qatordan ko'p bo'lsa, birinchi 10 qator ko'rsatilgan.

1. (dokon, oson) 'tahlilchi' rolini (LOGIN yo'q) yarating va u mavjudligini tekshiring.

Kutilgan natija
1

2. (dokon, oson) Rolga mijoz jadvalida SELECT huquqini bering va has_table_privilege bilan tekshiring.

Kutilgan natija
t | f

3. (dokon, oson) REVOKE: SELECT huquqini bering va qaytarib oling; natijani tekshiring.

Kutilgan natija
f

4. (dokon, o'rta) Guruh roli: 'savdo' guruh rolini yarating, 'sotuvchi' rolini unga a'zo qiling; pg_has_role bilan tekshiring.

Kutilgan natija
t

5. (dokon, o'rta) Ustun darajasida huquq: faqat mahsulot.nom va narx ustunlariga SELECT bering; has_column_privilege bilan qoldiq ustunni tekshiring.

Kutilgan natija
t | f

6. (dokon, o'rta) GRANT ... ON ALL TABLES IN SCHEMA: rolga dokon sxemasidagi hamma jadvalga SELECT; buyurtma uchun tekshiring.

Kutilgan natija
t

7. (dokon, qiyin) RLS: mijoz jadvalida faqat shahar='Toshkent' qatorlarini ko'rsatuvchi policy; rol sifatida SELECT sonini tekshiring.

Kutilgan natija
5 | 0

8. (dokon, qiyin) DEFAULT PRIVILEGES: kelajak jadvallar uchun SELECT huquqi: ALTER DEFAULT PRIVILEGES; keyin yangi jadval yaratib tekshiring.

Kutilgan natija
t

9. (maktab, oson) Rolga baho jadvalida faqat SELECT va INSERT berish; UPDATE tekshiruvi.

Kutilgan natija
t | f

10. (maktab, qiyin) RLS: o'qituvchi faqat o'z fanining baholarini ko'rsin: policy USING (fan_id=1); rol bilan baholar soni.

Kutilgan natija
18 | 1

11. (bank, oson) 'kassir' roli: tranzaksiya jadvalida INSERT, hisob jadvalida SELECT. Tekshiruv.

Kutilgan natija
t | t | f

12. (bank, o'rta) VIEW orqali cheklangan kirish: mijoz_ochiq view yaratib rolga faqat view ga SELECT bering; jadvalga huquq yo'qligini tekshiring.

Kutilgan natija
t | f

13. (bank, qiyin) RLS: mijoz faqat o'z filiali (filial_id=1) hisoblarini ko'rishi uchun policy (hisob -> mijoz orqali EXISTS). Rol bilan hisoblar soni.

Kutilgan natija
8

14. (kutubxona, oson) 'kutubxonachi' roli ijara jadvalida SELECT, INSERT, UPDATE huquqlariga ega; DELETE yo'qligini tekshiring.

Kutilgan natija
t | f

15. (kutubxona, qiyin) RLS WITH CHECK: faqat azo_id=1 bo'lgan ijaralarni qo'shishga ruxsat beruvchi policy; rol sifatida azo_id=1 ijara qo'shing, keyin sonini tekshiring.

Kutilgan natija
1