REVOKE (Transact-SQL)

Supprime une autorisation accordée ou refusée antérieurement.

Icône Lien de rubriqueConventions de syntaxe Transact-SQL

Syntaxe

Simplified syntax for REVOKE
REVOKE [ GRANT OPTION FOR ]
      { 
        [ ALL [ PRIVILEGES ] ]
        |
                permission [ ( column [ ,...n ] ) ] [ ,...n ]
      }
      [ ON [ class :: ] securable ] 
      { TO | FROM } principal [ ,...n ] 
      [ CASCADE] [ AS principal ]

Arguments

  • GRANT OPTION FOR
    Indique que la possibilité d'accorder l'autorisation spécifiée sera révoquée. C'est obligatoire si vous utilisez l'argument CASCADE.

    Important

    Si l'entité de sécurité possède l'autorisation spécifiée sans l'option GRANT, l'autorisation elle-même sera révoquée.

  • ALL
    Cette option ne révoque pas toutes les autorisations possibles. La révocation complète, ALL, équivaut à révoquer les autorisations suivantes.

    • Si l'élément sécurisable est une base de données, ALL représente BACKUP DATABASE, BACKUP LOG, CREATE DATABASE, CREATE DEFAULT, CREATE FUNCTION, CREATE PROCEDURE, CREATE RULE, CREATE TABLE et CREATE VIEW.

    • Si l'élément sécurisable est une fonction scalaire, ALL représente EXECUTE et REFERENCES.

    • Si l'élément sécurisable est une fonction table, ALL représente DELETE, INSERT, REFERENCES, SELECT et UPDATE.

    • Si l'élément sécurisable est une procédure stockée, ALL représente EXECUTE.

    • Si l'élément sécurisable est une table, ALL représente DELETE, INSERT, REFERENCES, SELECT et UPDATE.

    • Si l'élément sécurisable est une vue, ALL représente DELETE, INSERT, REFERENCES, SELECT et UPDATE.

    [!REMARQUE]

    La syntaxe REVOKE ALL est désapprouvée. Cette fonctionnalité sera supprimée dans une prochaine version de Microsoft SQL Server. Évitez d'utiliser cette fonctionnalité dans de nouveaux travaux de développement et prévoyez de modifier les applications qui utilisent actuellement cette fonctionnalité. Révoquez des autorisations spécifiques à la place.

  • PRIVILEGES
    Inclus pour la conformité aux normes ISO. Ne modifie pas le comportement de ALL.

  • permission
    Nom d'une autorisation. Les mappages valides d'autorisations à des sécurisables sont décrits dans les rubriques répertoriées dans la section Syntaxe spécifique aux éléments sécurisables plus loin dans cette rubrique.

  • column
    Spécifie le nom d'une colonne d'une table sur laquelle les autorisations sont révoquées. Les parenthèses sont obligatoires.

  • class
    Spécifie la classe de l'élément sécurisable sur lequel l'autorisation est révoquée. Le qualificateur d'étendue :: est requis.

  • securable
    Spécifie l'élément sécurisable sur lequel l'autorisation est révoquée.

  • TO | FROM principal
    Nom d'une entité de sécurité. Les entités de sécurité d'où les autorisations portant sur un élément sécurisable peuvent être révoquées varient, selon cet élément sécurisable. Pour plus d'informations sur les combinaisons valides, consultez les rubriques répertoriées dans la section Syntaxe spécifique aux éléments sécurisables plus loin dans cette rubrique.

  • CASCADE
    Indique que l'autorisation qui est révoquée l'est aussi à partir d'autres entités de sécurité auxquelles elle a été accordée par cette entité de sécurité. Lorsque vous utilisez l'argument CASCADE, vous devez également inclure l'argument GRANT OPTION FOR.

    AttentionAttention

    Une révocation en cascade d'une autorisation accordée avec l'option WITH GRANT OPTION entraîne la révocation des deux options GRANT et DENY de cette autorisation.

  • AS principal
    Spécifie une entité de sécurité d'où l'entité de sécurité qui exécute cette requête tient son droit de révoquer l'autorisation.

Notes

La syntaxe complète de l'instruction REVOKE est complexe. Le diagramme précédent a été simplifié pour attirer l'attention sur sa structure. La syntaxe complète pour la révocation des autorisations sur des sécurisables spécifiques est décrite dans les rubriques répertoriées dans la section Syntaxe spécifique aux éléments sécurisables plus loin dans cette rubrique.

L'instruction REVOKE peut être utilisée pour supprimer des autorisations accordées et l'instruction DENY peut servir à empêcher une entité de sécurité d'obtenir une autorisation par le biais d'une instruction GRANT.

L'accord d'une autorisation supprime l'option DENY ou REVOKE de cette autorisation sur l'élément sécurisable spécifié. Si la même autorisation est refusée au niveau d'une étendue supérieure contenant l'élément sécurisable, l'instruction DENY a la priorité. Toutefois, la révocation de l'autorisation accordée à une étendue supérieure ne devient pas prioritaire.

AttentionAttention

Une instruction DENY de niveau table n'a pas la priorité sur une instruction GRANT de niveau colonne. Cette incohérence dans la hiérarchie des autorisations a été préservée pour des raisons de compatibilité descendante. Elle sera supprimée dans une version ultérieure.

La procédure stockée système sp_helprotect répertorie les autorisations sur un objet sécurisable au niveau de la base de données.

L'instruction REVOKE échoue si l'argument CASCADE n'est pas spécifié lorsque vous révoquez une autorisation d'une entité de sécurité à laquelle a été accordée cette autorisation avec GRANT OPTION spécifié.

Autorisations

Les entités de sécurité avec l'autorisation CONTROL sur un élément sécurisable peuvent révoquer l'autorisation sur cet élément sécurisable. Les propriétaires d'objets peuvent révoquer des autorisations sur les objets qu'ils possèdent.

Les bénéficiaires de l'autorisation CONTROL SERVER, par exemple les membres du rôle serveur fixe sysadmin, peuvent révoquer n'importe quelle autorisation sur n'importe quel élément sécurisable du serveur. Les bénéficiaires de l'autorisation CONTROL sur une base de données, par exemple les membres du rôle de base de données fixe db_owner, peuvent révoquer n'importe quelle autorisation sur n'importe quel élément sécurisable de la base de données. Les bénéficiaires de l'autorisation CONTROL sur un schéma peuvent révoquer n'importe quelle autorisation sur n'importe quel objet du schéma.

Syntaxe spécifique aux éléments sécurisables

Le tableau suivant présente les éléments sécurisables et les rubriques qui décrivent leur syntaxe.

Élément sécurisable

Rubrique

Rôle d'application

REVOKE – révocation d'autorisations d'entité de sécurité de base de données (Transact-SQL)

Assembly

REVOKE - Autorisations sur un assembly (Transact-SQL)

Clé asymétrique

REVOKE (Autorisations de clé asymétrique) (Transact-SQL)

Certificat

REVOKE (Autorisations de certificat) (Transact-SQL)

Contrat

Autorisations REVOKE dans Service Broker (Transact-SQL)

Base de données

REVOKE – révocation d'autorisations de base de données (Transact-SQL)

Point de terminaison

REVOKE – révocation d'autorisations de point de terminaison (Transact-SQL)

Catalogue de texte intégral

REVOKE - Autorisations relatives au texte intégral (Transact-SQL)

Liste de mots vides de texte intégral

REVOKE - Autorisations relatives au texte intégral (Transact-SQL)

Fonction

REVOKE – révocation d'autorisations d'objet (Transact-SQL)

Connexion

REVOKE – révocation d'autorisations d'entité de sécurité de serveur (Transact-SQL)

Type de message

Autorisations REVOKE dans Service Broker (Transact-SQL)

Objet

REVOKE – révocation d'autorisations d'objet (Transact-SQL)

File d'attente

REVOKE – révocation d'autorisations d'objet (Transact-SQL)

Liaisons de service distant

Autorisations REVOKE dans Service Broker (Transact-SQL)

Rôle

REVOKE – révocation d'autorisations d'entité de sécurité de base de données (Transact-SQL)

Itinéraire

Autorisations REVOKE dans Service Broker (Transact-SQL)

Schéma

REVOKE - Révoquer les autorisations sur un schéma (Transact-SQL)

Serveur

REVOKE – révocation d'autorisations de serveur (Transact-SQL)

Service

Autorisations REVOKE dans Service Broker (Transact-SQL)

Procédure stockée

REVOKE – révocation d'autorisations d'objet (Transact-SQL)

Clé symétrique

REVOKE – révocation d'autorisations de clé symétrique (Transact-SQL)

Synonyme

REVOKE – révocation d'autorisations d'objet (Transact-SQL)

Objets système

REVOKE – révocation d'autorisations d'objet système (Transact-SQL)

Table

REVOKE – révocation d'autorisations d'objet (Transact-SQL)

Type

REVOKE – révocation d'autorisations de type (Transact-SQL)

Utilisateur

REVOKE – révocation d'autorisations d'entité de sécurité de base de données (Transact-SQL)

Vue

REVOKE – révocation d'autorisations d'objet (Transact-SQL)

Collection de schémas XML

REVOKE – révocation d'autorisations de collection de schémas XML (Transact-SQL)