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;
Copy

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