GRANT (Berechtigungen für XML-Schemaauflistungen) (Transact-SQL)

Erteilt Berechtigungen für eine XML-Schemaauflistung.

Themenlink (Symbol)Transact-SQL-Syntaxkonventionen

Syntax

GRANT permission  [ ,...n ] ON 
    XML SCHEMA COLLECTION :: [ schema_name . ]
    XML_schema_collection_name
    TO <database_principal> [ ,...n ]
    [ WITH GRANT OPTION ]
    [ AS <database_principal> ] 

<database_principal> ::= 
        Database_user 
    | Database_role 
    | Application_role 
    | Database_user_mapped_to_Windows_User 
    | Database_user_mapped_to_Windows_Group 
    | Database_user_mapped_to_certificate 
    | Database_user_mapped_to_asymmetric_key 
    | Database_user_with_no_login

Argumente

  • permission
    Gibt eine Berechtigung an, die für eine XML-Schemaauflistung erteilt werden kann. Eine Liste der Berechtigungen finden Sie im Abschnitt zu den Hinweisen weiter unten in diesem Thema.

  • ON XML SCHEMA COLLECTION :: [ schema_name**.** ] XML_schema_collection_name
    Gibt die XML-Schemaauflistung an, für die die Berechtigung erteilt wird. Der Bereichsqualifizierer (::) ist erforderlich. Wenn schema_name nicht angegeben ist, wird das Standardschema verwendet. Wenn schema_name angegeben ist, ist der Schemabereichsqualifizierer (.) erforderlich.

  • <database_principal>
    Gibt den Prinzipal an, für den die Berechtigung erteilt wird.

  • WITH GRANT OPTION
    Gibt an, dass der Prinzipal die angegebene Berechtigung auch anderen Prinzipalen erteilen kann.

  • AS <database_principal>
    Gibt einen Prinzipal an, von dem der Prinzipal, der diese Abfrage ausführt, sein Recht zum Erteilen der Berechtigung ableitet.

  • Database_user
    Gibt einen Datenbankbenutzer an.

  • Database_role
    Gibt eine Datenbankrolle an.

  • Application_role
    Gibt eine Anwendungsrolle an.

  • Database_user_mapped_to_Windows_User
    Gibt einen Datenbankbenutzer an, der einem Windows-Benutzer zugeordnet ist.

  • Database_user_mapped_to_Windows_Group
    Gibt einen Datenbankbenutzer an, der einer Windows-Gruppe zugeordnet ist.

  • Database_user_mapped_to_certificate
    Gibt einen Datenbankbenutzer an, der einem Zertifikat zugeordnet ist.

  • Database_user_mapped_to_asymmetric_key
    Gibt einen Datenbankbenutzer an, der einem asymmetrischen Schlüssel zugeordnet ist.

  • Database_user_with_no_login
    Gibt einen Datenbankbenutzer ohne entsprechenden Prinzipal auf Serverebene an.

Hinweise

Informationen zu XML-Schemaauflistungen werden in der sys.xml_schema_collections-Katalogsicht angezeigt.

Eine XML-Schemaauflistung ist ein sicherungsfähiges Element auf Schemaebene in dem Schema, das das übergeordnete Element in der Berechtigungshierarchie ist. Die spezifischsten und restriktivsten Berechtigungen, die für eine XML-Schemaauflistung erteilt werden können, sind unten aufgeführt. Auch die allgemeineren Berechtigungen sind aufgeführt, die diese implizit enthalten.

Berechtigung für XML-Schemaauflistungen

Impliziert durch die Berechtigung für XML-Schemaauflistungen

Impliziert durch die Schemaberechtigung

ALTER

CONTROL

ALTER

CONTROL

CONTROL

CONTROL

EXECUTE

CONTROL

EXECUTE

REFERENCES

CONTROL

REFERENCES

TAKE OWNERSHIP

CONTROL

CONTROL

VIEW DEFINITION

CONTROL

VIEW DEFINITION

Berechtigungen

Der Berechtigende (oder der mit der AS-Option angegebene Prinzipal) muss entweder über die Berechtigung selbst mit GRANT OPTION oder über eine höhere Berechtigung verfügen, in der die erteilte Berechtigung impliziert ist.

Falls die AS-Option verwendet wird, gelten die folgenden zusätzlichen Anforderungen.

AS

Zusätzliche Berechtigung erforderlich

Datenbankbenutzer

IMPERSONATE-Berechtigung für den Benutzer, Mitgliedschaft in der festen Datenbankrolle db_securityadmin, Mitgliedschaft in der festen Datenbankrolle db_owner oder Mitgliedschaft in der festen Serverrolle sysadmin.

Einem Windows-Anmeldenamen zugeordneter Datenbankbenutzer

IMPERSONATE-Berechtigung für den Benutzer, Mitgliedschaft in der festen Datenbankrolle db_securityadmin, Mitgliedschaft in der festen Datenbankrolle db_owner oder Mitgliedschaft in der festen Serverrolle sysadmin.

Einer Windows-Gruppe zugeordneter Datenbankbenutzer

Mitgliedschaft in der Windows-Gruppe, Mitgliedschaft in der festen Datenbankrolle db_securityadmin, Mitgliedschaft in der festen Datenbankrolle db_owner oder Mitgliedschaft in der festen Serverrolle sysadmin.

Einem Zertifikat zugeordneter Datenbankbenutzer

Mitgliedschaft in der festen Datenbankrolle db_securityadmin, Mitgliedschaft in der festen Datenbankrolle db_owner oder Mitgliedschaft in der festen Serverrolle sysadmin.

Einem asymmetrischen Schlüssel zugeordneter Datenbankbenutzer

Mitgliedschaft in der festen Datenbankrolle db_securityadmin, Mitgliedschaft in der festen Datenbankrolle db_owner oder Mitgliedschaft in der festen Serverrolle sysadmin.

Keinem Serverprinzipal zugeordneter Datenbankbenutzer

IMPERSONATE-Berechtigung für den Benutzer, Mitgliedschaft in der festen Datenbankrolle db_securityadmin, Mitgliedschaft in der festen Datenbankrolle db_owner oder Mitgliedschaft in der festen Serverrolle sysadmin.

Datenbankrolle

ALTER-Berechtigung für die Rolle, Mitgliedschaft in der festen Datenbankrolle db_securityadmin, Mitgliedschaft in der festen Datenbankrolle db_owner oder Mitgliedschaft in der festen Serverrolle sysadmin.

Anwendungsrolle

ALTER-Berechtigung für die Rolle, Mitgliedschaft in der festen Datenbankrolle db_securityadmin, Mitgliedschaft in der festen Datenbankrolle db_owner oder Mitgliedschaft in der festen Serverrolle sysadmin.

Beispiele

Im folgenden Beispiel wird die EXECUTE-Berechtigung für die XML-Schemaauflistung Invoices4 dem Benutzer Wanida erteilt. Die XML-Schemaauflistung Invoices4 befindet sich im Sales-Schema der AdventureWorks-Datenbank.

USE AdventureWorks;

GRANT EXECUTE ON XML SCHEMA COLLECTION::Sales.Invoices4 TO Wanida;

GO