Zugriffssteuerung: Erteilen von REFERENCE_USAGE auf eine Datenbank für eine Rolle ist nicht mehr zulässig¶
Achtung
Diese Verhaltensänderung ist in Bundle 2023_02 enthalten.
Den aktuellen Status des Bundles finden Sie unter Bundle-Verlauf.
Das Verhalten bei Erteilen der Berechtigung REFERENCE_USAGE hat sich wie folgt geändert:
- Bisher:
Die Berechtigung REFERENCE_USAGE für die Datenbank kann entweder einzeln, zusammen mit anderen Berechtigungen oder mit allen Berechtigungen für ein Rollenobjekt erteilt werden. Beispiel:
grant reference_usage on database mydb to role r1; grant modify, reference_usage on database mydb to role r1; grant all privileges on database mydb to role r1;
Die Ausgabe des Befehls SHOW GRANTS enthielt eine Zeile für jede Zuweisung der Berechtigung REFERENCE_USAGE.
- Jetzt:
Die Berechtigung REFERENCE_USAGE für eine Datenbank kann keinem Rollenobjekt erteilt werden. Diese Berechtigung kann nur einem Freigabeobjekt erteilt werden.
Wenn ein Benutzer versucht, die Berechtigung REFERENCE_USAGE einzeln zu erteilen, gibt Snowflake die folgende Fehlermeldung aus:
REFERENCE_USAGE ON DATABASE can only be granted to share(s).
Wenn ein Benutzer die Berechtigung REFERENCE_USAGE zusammen mit anderen Berechtigungen angibt oder versucht, alle Berechtigungen für eine Datenbank zu erteilen, gibt Snowflake die folgende Meldung aus:
Grant partially executed: privileges [REFERENCE_USAGE] not granted.
Snowflake erlaubt Berechtigungen, die erteilt werden können, und verhindert das Erteilen der Berechtigung REFERENCE_USAGE.
Die Ausgabe des Befehls SHOW GRANTS enthält keine Zeile für das Erteilen der Berechtigung REFERENCE_USAGE für eine Datenbank an ein Rollenobjekt.
Ref.: 944