AuthzInitializeContextFromSid, fonction (authz.h)
La fonction AuthzInitializeContextFromSid crée un contexte client en mode utilisateur à partir d’un identificateur de sécurité utilisateur (SID). Les SID de domaine récupèrent les attributs de groupe de jetons à partir d’Active Directory.
Syntaxe
AUTHZAPI BOOL AuthzInitializeContextFromSid(
[in] DWORD Flags,
[in] PSID UserSid,
[in, optional] AUTHZ_RESOURCE_MANAGER_HANDLE hAuthzResourceManager,
[in] PLARGE_INTEGER pExpirationTime,
[in] LUID Identifier,
[in, optional] PVOID DynamicGroupArgs,
[out] PAUTHZ_CLIENT_CONTEXT_HANDLE phAuthzClientContext
);
Paramètres
[in] Flags
Les indicateurs suivants sont définis.
À compter de Windows 8 et Windows Server 2012, lorsque vous appelez cette fonction sur un handle de contexte distant, les 16 bits supérieurs doivent être zéro.
Valeur | Signification |
---|---|
|
Valeur par défaut.
AuthzInitializeContextFromSid tente de récupérer les informations du groupe de jetons de l’utilisateur en effectuant une ouverture de session S4U. Si l’ouverture de session S4U n’est pas prise en charge par le domaine de l’utilisateur ou l’ordinateur appelant, AuthzInitializeContextFromSid interroge l’objet de compte de l’utilisateur pour obtenir des informations de groupe. Lorsqu’un compte est interrogé directement, certains groupes qui représentent des caractéristiques d’ouverture de session, tels que Network, Interactive, Anonymous, Network Service ou Local Service, sont omis. Les applications peuvent ajouter explicitement ces SID de groupe en implémentant la fonction AuthzComputeGroupsCallback ou en appelant la fonction AuthzAddSidsToContext . |
|
AuthzInitializeContextFromSid ignore toutes les évaluations de groupe. Lorsque cet indicateur est utilisé, le contexte retourné contient uniquement le SID spécifié par le paramètre UserSid . Le SID spécifié peut être un SID arbitraire ou spécifique à l’application. D’autres SID peuvent être ajoutés à ce contexte en implémentant la fonction AuthzComputeGroupsCallback ou en appelant la fonction AuthzAddSidsToContext . |
|
Provoque l’échec d’AuthzInitializeContextFromSid si Les services Windows pour l’utilisateur ne sont pas disponibles pour récupérer les informations du groupe de jetons.
Windows XP : Cet indicateur n’est pas pris en charge. |
|
Provoque authzInitializeContextFromSid la récupération des privilèges pour le nouveau contexte. Si cette fonction effectue une ouverture de session S4U, elle récupère les privilèges du jeton. Sinon, la fonction récupère les privilèges de tous les SID dans le contexte. |
[in] UserSid
SID de l’utilisateur pour lequel un contexte client sera créé. Il doit s’agir d’un compte d’utilisateur ou d’ordinateur valide, sauf si l’indicateur AUTHZ_SKIP_TOKEN_GROUPS est utilisé.
[in, optional] hAuthzResourceManager
Handle pour le gestionnaire de ressources qui crée ce contexte client. Ce handle est stocké dans la structure de contexte client.
À compter de Windows 8 et Windows Server 2012, le gestionnaire de ressources peut être local ou distant et est obtenu en appelant la fonction AuthzInitializeRemoteResourceManager.
[in] pExpirationTime
Date et heure d’expiration du jeton. Si aucune valeur n’est passée, le jeton n’expire jamais. Le délai d’expiration n’est actuellement pas appliqué.
[in] Identifier
Identificateur spécifique du gestionnaire de ressources. Ce paramètre n’est actuellement pas utilisé.
[in, optional] DynamicGroupArgs
Pointeur vers les paramètres à passer à la fonction de rappel qui calcule les groupes dynamiques. Ce paramètre peut être NULL si aucun paramètre dynamique n’est passé à la fonction de rappel.
À compter de Windows 8 et Windows Server 2012, ce paramètre doit avoir la valeur NULL si le gestionnaire de ressources est distant. Sinon, ERROR_NOT_SUPPORTED sera défini.
[out] phAuthzClientContext
Pointeur vers le handle vers le contexte client créé par la fonction AuthzInitializeContextFromSid . Lorsque vous avez terminé d’utiliser le handle, libérez-le en appelant la fonction AuthzFreeContext .
Valeur retournée
Si la fonction réussit, la fonction retourne une valeur différente de zéro.
Si la fonction échoue, elle retourne zéro. Pour obtenir des informations détaillées sur l’erreur, appelez GetLastError.
Remarques
Si possible, appelez la fonction AuthzInitializeContextFromToken au lieu de AuthzInitializeContextFromSid. AuthzInitializeContextFromSid tente de récupérer les informations disponibles dans un jeton d’ouverture de session si le client s’est connecté. Un jeton d’ouverture de session réel fournit plus d’informations, telles que le type d’ouverture de session et les propriétés d’ouverture de session, et reflète le comportement du package d’authentification utilisé pour l’ouverture de session. Le contexte client créé par AuthzInitializeContextFromToken utilise un jeton d’ouverture de session, et le contexte client résultant est plus complet et plus précis qu’un contexte client créé par AuthzInitializeContextFromSid.
Cette fonction résout uniquement les SID d’utilisateur valides.
Windows XP : Cette fonction résout les appartenances aux groupes pour les SID d’utilisateurs et de groupes valides (sauf si l’indicateur AUTHZ_SKIP_TOKEN_GROUPS est utilisé). La prise en charge de la résolution des appartenances aux SID de groupe peut être modifiée ou indisponible dans les versions suivantes.
Cette fonction appelle la fonction de rappel AuthzComputeGroupsCallback pour ajouter des SID au contexte nouvellement créé.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows XP [applications de bureau uniquement] |
Serveur minimal pris en charge | Windows Server 2003 [applications de bureau uniquement] |
Plateforme cible | Windows |
En-tête | authz.h |
Bibliothèque | Authz.lib |
DLL | Authz.dll |
Composant redistribuable | Windows Server 2003 Administration Tools Pack sur Windows XP |