Objets de configuration de la messagerie de base de données

La messagerie de base de données fournit deux types d'objets de configuration :

  • Les profils de messagerie de base de données sont des ensembles de comptes.

  • Les comptes de messagerie de base de données contiennent des informations pour les serveurs de messagerie.

La messagerie de base de données inclut des procédures stockées de configuration dans la base de données msdb. Vous pouvez écrire des scripts Transact-SQL pour utiliser directement ces procédures.

Les applications qui envoient du courrier à l'aide de la messagerie de base de données spécifient des profils au lieu d'utiliser directement des comptes. Séparer les informations sur les serveurs de messagerie des objets utilisés par l'application permet d'améliorer la flexibilité et la fiabilité : les profils assurent le basculement automatique ; ainsi, si un serveur de messagerie ne répond pas, la messagerie de base de données peut envoyer directement le courrier à un autre serveur de messagerie. Les administrateurs de base de données peuvent ajouter, supprimer ou reconfigurer des comptes sans avoir à modifier le code de l'application, ni les étapes de travail.

Pour une plus grande sécurité, la messagerie de base de données gère l'accès aux profils de messagerie. Un profil peut être public ou privé. Les profils publics sont disponibles pour tous les membres du rôle de base de données DatabaseMailUserRole de la base de données msdb. Ils permettent à tous les membres du rôle DatabaseMailUserRole d'envoyer des messages électroniques en utilisant ce profil. Les profils privés sont définis pour les entités de sécurité dans la base de données msdb. Ils permettent uniquement aux utilisateurs de base de données spécifiés, aux rôles et aux membres du rôle de serveur fixe sysadmin d'envoyer du courrier en utilisant ce profil. Par défaut, un profil est privé et permet l'accès uniquement aux membres du rôle de serveur fixe sysadmin. Pour utiliser un profil privé, sysadmin doit attribuer aux utilisateurs l'autorisation d'utiliser le profil. En outre, l'autorisation EXECUTE de la procédure stockée sp_send_dbmail est attribuée seulement aux membres du rôle DatabaseMailUserRole. Un administrateur système doit ajouter l'utilisateur au rôle de base de données DatabaseMailUserRole pour que l'utilisateur puisse envoyer des messages électroniques.

La figure ci-dessous montre la relation entre les comptes, les profils et les utilisateurs. Notez qu'un utilisateur peut disposer d'une autorisation lui permettant d'utiliser plusieurs profils, mais qu'un seul profil peut être défini comme profil par défaut. Chaque profil peut utiliser plusieurs comptes. Un compte peut être utilisé par plusieurs profils.

Relations entre utilisateurs, profils et comptes

La figure montre deux profils, trois comptes et trois utilisateurs. L'Utilisateur 1 a accès au Profil 1, lequel utilise le Compte 1 et le Compte 2. L'utilisateur 3 a accès au Profil 2, lequel utilise le Compte 2 et le Compte 3. L'Utilisateur 2 a accès au Profil 1 et au Profil 2.