Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Utilizzo dei privilegi di appartenenza al gruppo di sicurezza AD
Eredità dei privilegi a livello di server
Gli utenti AD che sono membri di un determinato gruppo di sicurezza AD ereditano i privilegi a livello di server concessi all’accesso del gruppo Windows mappato. Ad esempio, considera il gruppo di sicurezza AD accounts-group, a cui viene concessa l’appartenenza al ruolo del server sysadmin su Babelfish. È possibile ereditare i privilegi a livello di server utilizzando il comando seguente:
1>ALTER SERVER ROLE sysadmin ADD MEMBER [corp\accounts-group];
Di conseguenza, qualsiasi utente Active Directory che è membro del gruppo di sicurezza AD accounts-group erediterà i privilegi a livello di server associati al ruolo sysadmin. Ciò significa che un utente come corp\user1, in qualità di membro di accounts-group, ora avrà la possibilità di eseguire operazioni a livello di server all’interno di Babelfish.
Nota
Per eseguire le DDL a livello di server, è necessario l’accesso Windows per il singolo utente AD. Per ulteriori informazioni, consulta Limitazioni.
Eredità dei privilegi a livello di database
Per concedere i privilegi a livello di database, è necessario creare e mappare un utente del database con l’accesso del gruppo Windows. Gli utenti AD che sono membri di un determinato gruppo di sicurezza AD ereditano i privilegi a livello di database concessi a tale utente del database. Nell’esempio seguente, è possibile vedere come vengono assegnati i privilegi a livello di database per il gruppo Windows [corp\accounts-group].
1>CREATE DATABASE db1;2>GO1>USE db1;2>GO Changed database context to 'db1'.1>CREATE TABLE dbo.t1(a int);2>GO
Crea un utente del database [corp\sales-group] per l’accesso al gruppo Windows [corp\accounts-group]. Per eseguire questo passaggio, connettiti tramite l’endpoint TDS utilizzando l’accesso come membro di sysadmin.
1>CREATE USER [corp\accounts-group] FOR LOGIN [corp\accounts-group];2>GO
Ora, connettiti come l’utente AD user1 per verificare l’accesso alla tabella t1. Poiché non abbiamo ancora concesso i privilegi a livello di database, si verificherà un errore di autorizzazione negata.
1>SELECT * FROM dbo.t1;2>GO Msg 33557097, Level 16, State 1, Server db-inst, Line 1 permission denied for table t1
Esegui GRANT SELECT sulla tabella t1 per l’utente del database [corp\accounts-group]. Per eseguire questo passaggio, connettiti tramite l’endpoint TDS utilizzando l’accesso come membro di sysadmin.
1>GRANT SELECT ON dbo.t1 TO [corp\accounts-group];2>GO
Connettiti come l’utente AD user1 per convalidare l’accesso.
1>SELECT * FROM dbo.t1;2>GO a ----------- (0 rows affected)