Refus ou autorisation de l’affichage des noms de base de données pour Amazon RDS for SQL Server - Amazon Relational Database Service

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Refus ou autorisation de l’affichage des noms de base de données pour Amazon RDS for SQL Server

L’utilisateur principal ne peut pas définir DENY VIEW ANY DATABASE TO LOGIN pour masquer les bases de données à un utilisateur. 
 Pour modifier cette autorisation, utilisez plutôt la procédure stockée suivante :

  • Refus de l’accès à la base de données à LOGIN :

    EXEC msdb.dbo.rds_manage_view_db_permission @permission=‘DENY’, @server_principal=‘LOGIN’
 go
  • Autorisation de l’accès à la base de données à LOGIN :

    EXEC msdb.dbo.rds_manage_view_db_permission @permission='GRANT', @server_principal='LOGIN' 
go

Tenez compte des éléments suivants lorsque vous utilisez cette procédure stockée :

  • Les noms des bases de données sont masqués dans le SSMS et dans les DMV (vues de gestion dynamique) internes. Cependant, les noms des bases de données sont toujours visibles dans les tables d’audit, les journaux et les tables de métadonnées. Il s’agit d’autorisations de serveur VIEW ANY DATABASE sécurisées. Pour plus d’informations, consultez REFUSER autorisations du serveur.

  • Une fois l’autorisation rétablie sur GRANT (autorisée), le LOGIN peut afficher toutes les bases de données.

  • Si vous supprimez et recréez le LOGIN, l’autorisation d’affichage associée au LOGIN est réinitialisée à ALLOW.

  • Pour les instances multi-AZ, définissez l’autorisation GRANT ou DENY uniquement pour le LOGIN sur l’hôte principal. Les modifications sont automatiquement répercutées sur l’hôte secondaire.

  • Cette autorisation change uniquement si un identifiant peut afficher les noms de base de données. Toutefois, l’accès aux bases de données et aux objets qu’elles contiennent est géré séparément.