estructura de RADIUS_EXTENSION_CONTROL_BLOCK (authif.h)
Sintaxis
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;
Miembros
cbSize
Especifica el tamaño de la estructura.
dwVersion
Especifica la versión de la estructura.
repPoint
Especifica un valor de tipo RADIUS_EXTENSION_POINT que indica en qué momento se llamó al proceso de solicitud RadiusExtensionProcess2 .
rcRequestType
Especifica un valor de tipo RADIUS_CODE que especifica el tipo de solicitud RADIUS recibida por el servidor del servicio de autenticación de Internet.
rcResponseType
Especifica un valor de tipo RADIUS_CODE que indica la disposición de la solicitud RADIUS.
GetRequest
Puntero a la función GetRequest proporcionada por NPS. NPS establece el valor de este miembro.
La función GetRequest devuelve los atributos recibidos en el proceso de solicitud RADIUS y los atributos internos que describen el estado de la solicitud.
El archivo DLL de extensión puede modificar los atributos de la solicitud RADIUS. Por ejemplo, si NPS actúa como proxy RADIUS, un archivo DLL de extensión podría filtrar qué atributos se reenvía al servidor RADIUS remoto.
Para modificar los atributos, el archivo DLL de extensión usa las funciones proporcionadas como miembros de la estructura RADIUS_ATTRIBUTE_ARRAY .
Este
Puntero a una estructura de RADIUS_EXTENSION_CONTROL_BLOCK . NPS pasa al ARCHIVO DLL de extensión un puntero a esta estructura cuando llama a la estructura RadiusExtensionProcess2 .
GetResponse
Puntero a la función GetResponse proporcionada por NPS. NPS establece el valor de este miembro.
La función GetRequest devuelve los atributos recibidos en el proceso de solicitud RADIUS y los atributos internos que describen el estado de la solicitud.
Un archivo DLL de extensión puede usar GetResponse para recuperar y modificar los atributos de cualquier tipo de respuesta válido independientemente de la disposición actual de la solicitud. Por ejemplo, un archivo DLL de extensión podría establecer el tipo de respuesta en rcAccessAccept, pero seguir agregando atributos a los devueltos en el caso de un rcAccessReject. La respuesta especificada por el archivo DLL de extensión (rcAccessAccept en este ejemplo) se podría invalidar durante el procesamiento posterior.
Para modificar los atributos, el archivo DLL de extensión usa las funciones proporcionadas como miembros de la estructura RADIUS_ATTRIBUTE_ARRAY .
Este
Puntero a una estructura de RADIUS_EXTENSION_CONTROL_BLOCK . NPS pasa al archivo DLL de extensión un puntero a esta estructura cuando llama a la función RadiusExtensionProcess2 .
rcResponseType
Especifica el tipo de respuesta. Este parámetro debe ser uno de los valores enumerados por el tipo de enumeración RADIUS_CODE . De lo contrario, se produce un error en la función y se devuelve NULL.
SetResponseType
Puntero a la función SetResponseType proporcionada por NPS. NPS establece el valor de este miembro.
La función SetResponseType establece la disposición final de la solicitud.
Tenga en cuenta que la disposición establecida por el archivo DLL de extensión se puede invalidar durante el procesamiento posterior. Por ejemplo, el archivo DLL de extensión puede establecer el tipo de respuesta en rcAccessAccept, pero durante el procesamiento posterior, la respuesta se puede cambiar a rcAccessReject.
Este
Puntero a una estructura de RADIUS_EXTENSION_CONTROL_BLOCK . NPS pasa al archivo DLL de extensión un puntero a esta estructura cuando llama a la función RadiusExtensionProcess2 .
rcResponseType
Especifica el tipo de respuesta. Este parámetro debe ser uno de los valores contenidos en el tipo enumerado RADIUS_CODE y está relacionado con el miembro rcRequestType de la estructura RADIUS_EXTENSION_CONTROL_BLOCK . Si rcRequestType es igual a rcAccessRequest, este valor puede ser rcAccessAccept, rcAccessReject, rcAccessChallenge o rcDiscard. Si rcRequestType es igual a rcAccountingRequest, este valor puede ser rcAccountingResponse o rcDiscard. De lo contrario, se produce un error en la función y se devuelve ERROR_INVALID_PARAMETER.
Comentarios
El archivo DLL de extensión no debe modificar esta estructura. Los cambios en la matriz de atributos se deben realizar llamando a las funciones proporcionadas como miembros de esta estructura.
NPS pasa esta estructura al archivo DLL de extensión cuando llama a la implementación del archivo DLL de extensión de RadiusExtensionProcess2.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | No se admite ninguno |
Servidor mínimo compatible | Windows Server 2008 |
Encabezado | authif.h |