RADIUS_EXTENSION_CONTROL_BLOCK struttura (authif.h)
Sintassi
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;
Members
cbSize
Specifica le dimensioni della struttura.
dwVersion
Specifica la versione della struttura.
repPoint
Specifica un valore di tipo RADIUS_EXTENSION_POINT che indica a quale punto del processo di richiesta è stato chiamato RadiusExtensionProcess2 .
rcRequestType
Specifica un valore di tipo RADIUS_CODE che specifica il tipo di richiesta RADIUS ricevuta dal server del servizio di autenticazione Internet.
rcResponseType
Specifica un valore di tipo RADIUS_CODE che indica l'eliminazione della richiesta RADIUS.
GetRequest
Puntatore alla funzione GetRequest fornita da NPS. NpS imposta il valore di questo membro.
La funzione GetRequest restituisce gli attributi ricevuti nel processo di richiesta RADIUS e gli attributi interni che descrivono lo stato della richiesta.
La DLL di estensione può modificare gli attributi nella richiesta RADIUS. Ad esempio, se i criteri di rete agiscono come proxy RADIUS, una DLL di estensione potrebbe filtrare gli attributi inoltrati al server RADIUS remoto.
Per modificare gli attributi, la DLL estensione usa le funzioni fornite come membri della struttura RADIUS_ATTRIBUTE_ARRAY .
This
Puntatore a una struttura RADIUS_EXTENSION_CONTROL_BLOCK . NpS passa la DLL di estensione a questa struttura quando chiama la struttura RadiusExtensionProcess2 .
GetResponse
Puntatore alla funzione GetResponse fornita da NpS . NpS imposta il valore di questo membro.
La funzione GetRequest restituisce gli attributi ricevuti nel processo di richiesta RADIUS e gli attributi interni che descrivono lo stato della richiesta.
Una DLL di estensione può usare GetResponse per recuperare e modificare gli attributi per qualsiasi tipo di risposta valido indipendentemente dall'eliminazione corrente della richiesta. Ad esempio, una DLL di estensione potrebbe impostare il tipo di risposta su rcAccessAccept, ma aggiungere ancora attributi a quelli restituiti nel caso di un rcAccessReject. La risposta specificata dalla DLL di estensione (rcAccessAccept in questo esempio) può essere sostituita durante un'ulteriore elaborazione.
Per modificare gli attributi, la DLL estensione usa le funzioni fornite come membri della struttura RADIUS_ATTRIBUTE_ARRAY .
This
Puntatore a una struttura RADIUS_EXTENSION_CONTROL_BLOCK . NpS passa la DLL estensione a questa struttura quando chiama la funzione RadiusExtensionProcess2 .
rcResponseType
Specifica il tipo di risposta. Questo parametro deve essere uno dei valori enumerati dal tipo di enumerazione RADIUS_CODE . In caso contrario, la funzione ha esito negativo, restituisce NULL.
SetResponseType
Puntatore alla funzione SetResponseType fornita da NPS. NpS imposta il valore di questo membro.
La funzione SetResponseType imposta l'eliminazione finale della richiesta.
Si noti che l'eliminazione impostata dalla DLL di estensione può essere sostituita durante un'ulteriore elaborazione. Ad esempio, la DLL di estensione può impostare il tipo di risposta su rcAccessAccept, ma durante un'ulteriore elaborazione, la risposta può essere modificata in rcAccessReject.
This
Puntatore a una struttura RADIUS_EXTENSION_CONTROL_BLOCK . NpS passa la DLL estensione a questa struttura quando chiama la funzione RadiusExtensionProcess2 .
rcResponseType
Specifica il tipo di risposta. Questo parametro deve essere uno dei valori contenuti all'interno del tipo enumerato RADIUS_CODE ed è correlato al membro rcRequestTypedella struttura RADIUS_EXTENSION_CONTROL_BLOCK. Se rcRequestType è uguale a rcAccessRequest, questo valore può essere rcAccessAccept, rcAccessReject, rcAccessChallenge o rcDiscard. Se rcRequestType è uguale a rcAccountingRequest, questo valore può essere rcAccountingResponse o rcDiscard. In caso contrario, la funzione ha esito negativo, restituendo ERROR_INVALID_PARAMETER.
Commenti
La DLL dell'estensione non deve modificare questa struttura. Le modifiche alla matrice di attributi devono essere apportate chiamando le funzioni fornite come membri di questa struttura.
I criteri di rete passano questa struttura alla DLL di estensione quando chiama l'implementazione della DLL di estensione di RadiusExtensionProcess2.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Nessuno supportato |
Server minimo supportato | Windows Server 2008 |
Intestazione | authif.h |