Otklanjanje grešaka

Korisnici sa administratorskim pravima mogu da mjenjaju RLS u PANTHEON bazi podataka.
- Kreiranje Flat tabele, funkcije RLS i security policies
- Obrišemo (DROP) RLS u bazu podataka (počistimo sve - clear all)
- Template za odabir svih podataka bez provjere autorizacija
- Provjerimo da li je RLS omogućen za PANTHEON bazu podataka
|
1. Kreiramo flat tabele, funkcije RLS i security pravilnike
[dbo].[pPA_RLSCreate]
- Kreiramo RLS flat tabele iz skripta u shemi RLS:
SQL:
Exec [dbo].[pPA_RLSFlatTablesPrepare]
- Napunimo sve flat tabele (podaci iz tabela t%usersecurity u tabele RLS):
SQL:
Exec [dbo].[pPA_RLSFlatTablesFill]
- Kreiramo sve tabelarne funkcije RLS u redu, koje su upotrijebljene u predikatima (all RLS inline table valued functions used in predicates):
SQL:
Exec [dbo].[pPA_RLSCreateFunctions]
- Napunimo podatke, koji su potrebni za kreiranje Security policies(Policies) za tabele:
SQL:
Exec [dbo].[pPA_SetRLSFunctionPolicyFill]
- Kreiramo after-insert triggere za promjene na tabelama t%usersecurity:
SQL:
Exec [dbo].[pPA_RLSCreateTriggers]
- Omogućimo/onemogućimo sve pravilnike (all policies) za uključivanje RLS u bazi podataka:
SQL:
Exec pPA_RLSSecurityPoliciesState 'ON';Exec pPA_RLSSecurityPoliciesState 'OFF';Exec pPA_RLSSecurityPoliciesState 'ON', 'tHE_Move';Exec pPA_RLSSecurityPoliciesState 'OFF', 'tHE_Move';
2. Obrišemo (DROP) RLS u bazu podataka (počistimo sve)
Ukaz SQL: Exec [dbo].[pPA_RLSDrop]
- DROP SECURITY POLICY
- DROP za funkciju [RLS]
- DROP za triggere: exec pPA_RLSCreateTriggers 'F'
- DROP za tabelu [RLS]
- Onemogućimo sve pravilnike, da bi primenili RLS za bazu podataka:
Exec pPA_RLSSecurityPoliciesState 'OFF';
3. Template za izbor svih podataka bez provjere autorizacija
SQL:
execute as user = 'RLS_ALL'
select * from tHE_Move
revert
4. Provjerimo da li je RLS omogućen za PANTHEON bazu podataka
SQL:
select * from [dbo].[fPA_RLSEnabled]()