Ce que les développeurs d’applications et de services doivent savoir sur les groupes
Lors du développement d’une application ou d’un service, vous pouvez utiliser des groupes pour déléguer l’administration ou contrôler l’accès à l’application ou au service en tout ou en partie. Par exemple, une application peut contrôler qui peut effectuer diverses opérations administratives. Pour ce faire, créez des ACL qui accordent des droits d’accès spécifiés aux groupes appropriés. Il est recommandé de disposer d’un ACE qui accorde l’accès à un groupe plutôt que d’avoir plusieurs ACE qui accordent l’accès à des utilisateurs ou des ordinateurs individuels.
Il est recommandé que les applications utilisent les instructions suivantes lors de l’utilisation de groupes :
- Ne créez pas de dépendances sur des groupes codés en dur, ce qui peut créer des complications si le groupe est supprimé ou déplacé.
- Évitez d’utiliser des groupes intégrés, sauf si la fonction du groupe fournit les besoins spécifiques de l’application. Par exemple, n’exigez pas qu’un utilisateur soit membre du groupe Administrateurs simplement pour lui fournir l’autorisation de créer un compte d’ordinateur. Cela fournit à l’utilisateur des autorisations et des privilèges dont il n’a peut-être pas besoin, ce qui peut entraîner une vulnérabilité de sécurité. Au lieu de cela, vous devez créer un groupe de sécurité qui dispose des autorisations spécifiques requises et ajouter l’utilisateur à ce nouveau groupe.
- Lorsque vous créez des groupes, gardez à l’esprit les recommandations suivantes :
- Protégez le groupe en définissant des ACL qui contrôlent qui peuvent ajouter ou supprimer des membres.
- Utilisez des groupes globaux s’ils sont utilisés pour le contrôle d’accès sur les objets dans services de domaine Active Directory.
- Utilisez des groupes universels uniquement si nécessaire (les données de membre sont requises globalement à l’aide du catalogue global ; le groupe peut contenir n’importe quel utilisateur/groupe). Si vous utilisez des groupes universels, placez des groupes globaux dans le groupe universel et ajoutez/supprimez des utilisateurs du groupe global. Évitez les modifications excessives apportées aux groupes universels pour l’efficacité de la réplication.
- N’utilisez pas l’appartenance au groupe pour le contrôle d’accès. Au lieu de cela, utilisez un ACE et contrôlez l’accès en demandant au système d’effectuer une case activée d’accès.
Pour contrôler l’accès aux opérations qui ne s’inscrivent pas dans les droits d’accès prédéfinis pour les objets dans domaine Active Directory services, utilisez la fonctionnalité contrôler les droits d’accès du contrôle d’accès dans Windows 2000. Pour plus d’informations, consultez ADS_RIGHTS_ENUM.
Pour utiliser un droit d’accès de contrôle pour contrôler le droit d’effectuer une opération
- Créez un droit d’accès de contrôle qui définit le type d’accès à l’application ou au service. Pour plus d’informations, consultez Contrôler les droits d’accès.
- Créez un objet dans services de domaine Active Directory qui représente l’application, le service ou la ressource.
- Ajoutez des AE d’objet à la liste dacl dans le descripteur de sécurité d’objet pour accorder ou refuser aux utilisateurs ou aux groupes le droit d’accès de contrôle sur cet objet. Pour plus d’informations, consultez Définition des droits d’accès sur un objet.
- Lorsqu’un utilisateur tente d’effectuer l’opération protégée, votre application ou service utilise la fonction AccessCheckByTypeResultList pour déterminer si le droit d’accès de contrôle est accordé à l’utilisateur. Pour plus d’informations, consultez Vérification d’un droit d’accès de contrôle dans l’ACL d’un objet.
- En fonction du résultat de l’accès case activée sur l’objet, votre application ou service peut accorder ou refuser à l’utilisateur l’accès à l’application ou au service.
Une application de service peut également créer un groupe dont les membres seraient les différentes instances de service. Par exemple, un service avec des instances installées sur plusieurs ordinateurs d’une entreprise peut avoir un fichier journal commun dans lequel toutes les instances de service écrivent. Le programme d’installation du service crée le fichier journal et utilise une liste dacl pour accorder l’accès uniquement aux membres d’un groupe. Les membres du groupe sont les comptes d’utilisateur sous lesquels les différentes instances de service s’exécutent, ou si les services s’exécutent sous le compte LocalSystem, les membres sont les comptes d’ordinateur des serveurs hôtes.