Partager via


structure RADIUS_EXTENSION_CONTROL_BLOCK (authif.h)

Note Le service d’authentification Internet (IAS) a été renommé serveur de stratégie réseau (NPS) à partir de Windows Server 2008. Le contenu de cette rubrique s’applique à IAS et NPS. Tout au long du texte, NPS est utilisé pour faire référence à toutes les versions du service, y compris les versions initialement appelées IAS.
 
La structure RADIUS_EXTENSION_CONTROL_BLOCK fournit des informations sur la requête RADIUS actuelle. Il fournit également des fonctions permettant d’obtenir les attributs associés à la requête et de définir la disposition de la requête.

Syntaxe

typedef struct _RADIUS_EXTENSION_CONTROL_BLOCK {
  DWORD                    cbSize;
  DWORD                    dwVersion;
  RADIUS_EXTENSION_POINT   repPoint;
  RADIUS_CODE              rcRequestType;
  RADIUS_CODE              rcResponseType;
  PRADIUS_ATTRIBUTE_ARRAY()(_RADIUS_EXTENSION_CONTROL_BLOCK *This) * GetRequest;
  PRADIUS_ATTRIBUTE_ARRAY()(_RADIUS_EXTENSION_CONTROL_BLOCK *This,RADIUS_CODE rcResponseType) * GetResponse;
  DWORD()(_RADIUS_EXTENSION_CONTROL_BLOCK *This,RADIUS_CODE rcResponseType)                   * SetResponseType;
} RADIUS_EXTENSION_CONTROL_BLOCK, *PRADIUS_EXTENSION_CONTROL_BLOCK;

Membres

cbSize

Spécifie la taille de la structure.

dwVersion

Spécifie la version de la structure.

repPoint

Spécifie une valeur de type RADIUS_EXTENSION_POINT qui indique à quel moment du processus de requête RadiusExtensionProcess2 a été appelé.

rcRequestType

Spécifie une valeur de type RADIUS_CODE qui spécifie le type de requête RADIUS reçue par le serveur du service d’authentification Internet.

rcResponseType

Spécifie une valeur de type RADIUS_CODE qui indique la disposition de la requête RADIUS.

GetRequest

Pointeur vers la fonction GetRequest fournie par NPS. NPS définit la valeur de ce membre.

La fonction GetRequest retourne les attributs reçus dans le processus de requête RADIUS et tous les attributs internes décrivant l’état de la requête.

La DLL d’extension peut modifier les attributs dans la requête RADIUS. Par exemple, si NPS agit comme un proxy RADIUS, une DLL d’extension peut filtrer les attributs qui sont transférés vers le serveur RADIUS distant.

Pour modifier les attributs, la DLL d’extension utilise les fonctions fournies en tant que membres de la structure RADIUS_ATTRIBUTE_ARRAY .

Cette

Pointeur vers une structure RADIUS_EXTENSION_CONTROL_BLOCK . NPS transmet à la DLL d’extension un pointeur vers cette structure lorsqu’il appelle la structure RadiusExtensionProcess2 .

GetResponse

Pointeur vers la fonction GetResponse fournie par NPS. NPS définit la valeur de ce membre.

La fonction GetRequest retourne les attributs reçus dans le processus de requête RADIUS et tous les attributs internes décrivant l’état de la requête.

Une DLL d’extension peut utiliser GetResponse pour récupérer et modifier les attributs de n’importe quel type de réponse valide, quelle que soit la disposition actuelle de la requête. Par exemple, une DLL d’extension peut définir le type de réponse sur rcAccessAccept, mais toujours ajouter des attributs à ceux retournés dans le cas d’un rcAccessReject. La réponse spécifiée par la DLL d’extension (rcAccessAccept dans cet exemple) peut être remplacée pendant le traitement ultérieur.

Pour modifier les attributs, la DLL d’extension utilise les fonctions fournies en tant que membres de la structure RADIUS_ATTRIBUTE_ARRAY .

Cette

Pointeur vers une structure RADIUS_EXTENSION_CONTROL_BLOCK . NPS transmet à la DLL d’extension un pointeur vers cette structure lorsqu’il appelle la fonction RadiusExtensionProcess2 .

rcResponseType

Spécifie le type de réponse. Ce paramètre doit être l’une des valeurs énumérées par le type d’énumération RADIUS_CODE . Dans le cas contraire, la fonction échoue, retournant NULL.

SetResponseType

Pointeur vers la fonction SetResponseType fournie par NPS. NPS définit la valeur de ce membre.

La fonction SetResponseType définit la disposition finale de la requête.

Notez que la disposition définie par la DLL d’extension peut être remplacée pendant le traitement ultérieur. Par exemple, la DLL d’extension peut définir le type de réponse sur rcAccessAccept, mais au cours d’un traitement ultérieur, la réponse peut être remplacée par rcAccessReject.

Cette

Pointeur vers une structure RADIUS_EXTENSION_CONTROL_BLOCK . NPS transmet à la DLL d’extension un pointeur vers cette structure lorsqu’il appelle la fonction RadiusExtensionProcess2 .

rcResponseType

Spécifie le type de réponse. Ce paramètre doit être l’une des valeurs contenues dans le RADIUS_CODE type énuméré et est lié au membre rcRequestType de la structure RADIUS_EXTENSION_CONTROL_BLOCK . Si rcRequestType est égal à rcAccessRequest, cette valeur peut être rcAccessAccept, rcAccessReject, rcAccessChallenge ou rcDiscard. Si rcRequestType est égal à rcAccountingRequest, cette valeur peut être rcAccountingResponse ou rcDiscard. Sinon, la fonction échoue, renvoyant ERROR_INVALID_PARAMETER.

Remarques

La DLL d’extension ne doit pas modifier cette structure. Les modifications apportées au tableau d’attributs doivent être effectuées en appelant les fonctions fournies en tant que membres de cette structure.

NPS transmet cette structure à la DLL d’extension lorsqu’il appelle l’implémentation de RadiusExtensionProcess2 de la DLL d’extension.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Aucun pris en charge
Serveur minimal pris en charge Windows Server 2008
En-tête authif.h

Voir aussi

GetRequest

Getresponse

RADIUS_ATTRIBUTE_ARRAY

SetResponseType