Condividi tramite


REVOKE, autorizzazioni del gruppo di disponibilità (Transact-SQL)

Si applica a: SQL Server database SQL di Azure Istanza gestita di SQL di Azure database SQL in Microsoft Fabric

Revoca le autorizzazioni su un gruppo di disponibilità AlwaysOn.

Convenzioni relative alla sintassi Transact-SQL

Sintassi

REVOKE [ GRANT OPTION FOR ] permission  [ ,...n ]   
    ON AVAILABILITY GROUP :: availability_group_name  
    { FROM | TO } < server_principal >  [ ,...n ]  
    [ CASCADE ]  
    [ AS SQL_Server_login ]   
  
<server_principal> ::=   
        SQL_Server_login  
    | SQL_Server_login_from_Windows_login   
    | SQL_Server_login_from_certificate   
    | SQL_Server_login_from_AsymKey  

Argomenti

permission
Specifica un'autorizzazione che può essere revocata su un gruppo di disponibilità. Per un elenco delle autorizzazioni, vedere la sezione Osservazioni di seguito in questo argomento.

ON AVAILABILITY GROUP ::availability_group_name
Specifica il gruppo di disponibilità per cui vengono revocate le autorizzazioni. Il qualificatore di ambito (::) è obbligatorio.

{ FROM | TO } <server_principal> Specifica l'account di accesso di SQL Server per cui viene revocata l'autorizzazione.

SQL_Server_login
Specifica il nome di un account di accesso di SQL Server.

SQL_Server_login_from_Windows_login
Specifica il nome di un account di accesso di SQL Server creato da un account di accesso di Windows.

SQL_Server_login_from_certificate
Specifica il nome di un account di accesso di SQL Server con il mapping a un certificato.

SQL_Server_login_from_AsymKey
Specifica il nome di un account di accesso di SQL Server con il mapping a una chiave asimmetrica.

GRANT OPTION
Indica che verrà revocato il diritto di concedere l'autorizzazione specificata ad altre entità. L'autorizzazione stessa non verrà revocata.

Importante

Se l'autorizzazione specificata è stata concessa all'entità senza l'opzione GRANT, l'autorizzazione stessa verrà revocata.

CASCADE
Indica che l'autorizzazione che viene revocata anche ad altre entità a cui è stata concessa o negata da questa entità.

Importante

La revoca propagata di un'autorizzazione concessa con WITH GRANT OPTION comporterà la revoca sia delle autorizzazioni GRANT che delle autorizzazioni DENY per tale autorizzazione.

AS SQL_Server_login
Specifica l'account di accesso di SQL Server dal quale l'entità che esegue la query ottiene il diritto di revocare l'autorizzazione.

Osservazioni:

È possibile revocare autorizzazioni nell'ambito del server solo se il database corrente è il database master.

Le informazioni sui gruppi di disponibilità sono visibili nella vista del catalogo sys.availability_groups (Transact-SQL). Le informazioni sulle autorizzazioni del server sono visibili nella vista del catalogo sys.server_permissions e le informazioni sulle entità server sono visibili nella vista del catalogo sys.server_principals.

Un gruppo di disponibilità è un'entità a protezione diretta a livello server. Nella tabella seguente sono elencate le autorizzazioni più specifiche e limitate che è possibile revocare per un gruppo di disponibilità, insieme alle autorizzazioni più generali che le includono in modo implicito.

Autorizzazione del gruppo di disponibilità Autorizzazione del gruppo di disponibilità in cui è inclusa Autorizzazione del server in cui è inclusa
ALTER CONTROL ALTER ANY AVAILABILITY GROUP
CONNECT CONTROL CONTROL SERVER
CONTROL CONTROL CONTROL SERVER
TAKE OWNERSHIP CONTROL CONTROL SERVER
VIEW DEFINITION CONTROL VIEW ANY DEFINITION

Autorizzazioni

È richiesta l'autorizzazione CONTROL per il gruppo di disponibilità o l'autorizzazione ALTER ANY AVAILABILITY GROUP per il server.

Esempi

R. Revoca dell'autorizzazione VIEW DEFINITION per un gruppo di disponibilità

Nell'esempio seguente viene revocata l'autorizzazione VIEW DEFINITION sul gruppo di disponibilità MyAg per l'account di accesso di ZArifin.

USE master;  
REVOKE VIEW DEFINITION ON AVAILABILITY GROUP::MyAg TO ZArifin;  
GO  

B. Revoca dell'autorizzazione TAKE OWNERSHIP con l'opzione CASCADE

Nell'esempio seguente viene revocata l'autorizzazione TAKE OWNERSHIP sul gruppo di disponibilità MyAg per l'utente PKomosinski di SQL Server e da tutte le entità di sicurezza a cui PKomosinski ha concesso l'autorizzazione TAKE OWNERSHIP per MyAg.

USE master;  
REVOKE TAKE OWNERSHIP ON AVAILABILITY GROUP::MyAg TO PKomosinski   
    CASCADE;  
GO  

C. Revoca di una clausola WITH GRANT OPTION concessa in precedenza

Se un'autorizzazione è stata concessa con WITH GRANT OPTION, usare REVOKE GRANT OPTION FOR ... per rimuovere WITH GRANT OPTION. Nell'esempio seguente viene concessa l'autorizzazione e viene rimossa la parte WITH GRANT dell'autorizzazione.

USE master;  
GRANT CONTROL ON AVAILABILITY GROUP::MyAg TO PKomosinski   
    WITH GRANT OPTION;  
GO  
REVOKE GRANT OPTION FOR CONTROL ON AVAILABILITY GROUP::MyAg TO PKomosinski  
CASCADE  
GO  

Vedi anche

GRANT - Autorizzazioni del gruppo di disponibilità (Transact-SQL)
DENY - Autorizzazioni del gruppo di disponibilità (Transact-SQL)
CREATE AVAILABILITY GROUP (Transact-SQL)
sys.availability_groups (Transact-SQL)
Viste del catalogo dei Gruppi di disponibilità Always On (Transact-SQL)
Autorizzazioni (Motore di database)
Entità di sicurezza (motore di database)