RADIUS_EXTENSION_CONTROL_BLOCK-Struktur (authif.h)
Syntax
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;
Member
cbSize
Gibt die Größe der -Struktur an.
dwVersion
Gibt die Version der -Struktur an.
repPoint
Gibt einen Wert vom Typ RADIUS_EXTENSION_POINT an, der angibt, an welcher Stelle im Anforderungsprozess RadiusExtensionProcess2 aufgerufen wurde.
rcRequestType
Gibt einen Wert vom Typ RADIUS_CODE an, der den Typ der VOM Internetauthentifizierungsdienst-Server empfangenen RADIUS-Anforderung angibt.
rcResponseType
Gibt einen Wert vom Typ RADIUS_CODE an, der die Disposition der RADIUS-Anforderung angibt.
GetRequest
Zeiger auf die von NPS bereitgestellte GetRequest-Funktion . NPS legt den Wert dieses Members fest.
Die GetRequest-Funktion gibt die Attribute zurück, die im RADIUS-Anforderungsprozess empfangen wurden, sowie alle internen Attribute, die den Anforderungsstatus beschreiben.
Die Erweiterungs-DLL kann die Attribute in der RADIUS-Anforderung ändern. Wenn NPS beispielsweise als RADIUS-Proxy fungiert, könnte eine Erweiterungs-DLL filtern, welche Attribute an den RADIUS-Remoteserver weitergeleitet werden.
Um die Attribute zu ändern, verwendet die Erweiterungs-DLL die Funktionen, die als Member der RADIUS_ATTRIBUTE_ARRAY-Struktur bereitgestellt werden.
Diese
Zeiger auf eine RADIUS_EXTENSION_CONTROL_BLOCK-Struktur . NPS übergibt der Erweiterungs-DLL einen Zeiger auf diese Struktur, wenn die RadiusExtensionProcess2-Struktur aufgerufen wird.
GetResponse
Zeiger auf die von NPS bereitgestellte GetResponse-Funktion . NPS legt den Wert dieses Members fest.
Die GetRequest-Funktion gibt die Attribute zurück, die im RADIUS-Anforderungsprozess empfangen wurden, sowie alle internen Attribute, die den Anforderungsstatus beschreiben.
Eine Erweiterungs-DLL kann GetResponse verwenden, um die Attribute für jeden gültigen Antworttyp unabhängig von der aktuellen Anordnung der Anforderung abzurufen und zu ändern. Beispielsweise könnte eine Erweiterungs-DLL den Antworttyp auf rcAccessAccept festlegen, aber bei rcAccessReject zurückgegebenen Attributen hinzufügen. Die von der Erweiterungs-DLL angegebene Antwort (in diesem Beispiel rcAccessAccept) kann während der weiteren Verarbeitung überschrieben werden.
Um die Attribute zu ändern, verwendet die Erweiterungs-DLL die Funktionen, die als Member der RADIUS_ATTRIBUTE_ARRAY-Struktur bereitgestellt werden.
Diese
Zeiger auf eine RADIUS_EXTENSION_CONTROL_BLOCK-Struktur . NPS übergibt der Erweiterungs-DLL einen Zeiger auf diese Struktur, wenn die RadiusExtensionProcess2-Funktion aufgerufen wird.
rcResponseType
Gibt den Antworttyp an. Dieser Parameter muss einer der Werte sein, die vom RADIUS_CODE Enumerationstyp aufgezählt werden. Andernfalls schlägt die Funktion fehl und gibt NULL zurück.
SetResponseType
Zeiger auf die von NPS bereitgestellte SetResponseType-Funktion . NPS legt den Wert dieses Members fest.
Die SetResponseType-Funktion legt die endgültige Disposition der Anforderung fest.
Beachten Sie, dass die von der Erweiterungs-DLL festgelegte Disposition während der weiteren Verarbeitung überschrieben werden kann. Beispielsweise kann die Erweiterungs-DLL den Antworttyp auf rcAccessAccept festlegen, aber während der weiteren Verarbeitung kann die Antwort in rcAccessReject geändert werden.
Diese
Zeiger auf eine RADIUS_EXTENSION_CONTROL_BLOCK-Struktur . NPS übergibt der Erweiterungs-DLL einen Zeiger auf diese Struktur, wenn die RadiusExtensionProcess2-Funktion aufgerufen wird.
rcResponseType
Gibt den Antworttyp an. Dieser Parameter muss einer der Werte sein, die im RADIUS_CODE aufgezählten Typ enthalten sind, und ist mit dem rcRequestType-Element der RADIUS_EXTENSION_CONTROL_BLOCK-Struktur verknüpft. Wenn rcRequestTypegleich rcAccessRequest ist, kann dieser Wert rcAccessAccept, rcAccessReject, rcAccessChallenge oder rcDiscard sein. Wenn rcRequestType gleich rcAccountingRequest ist, kann dieser Wert rcAccountingResponse oder rcDiscard sein. Andernfalls schlägt die Funktion fehl und gibt ERROR_INVALID_PARAMETER zurück.
Hinweise
Die Erweiterungs-DLL darf diese Struktur nicht ändern. Änderungen am Array von Attributen sollten durch Aufrufen der Funktionen vorgenommen werden, die als Member dieser Struktur bereitgestellt werden.
NPS übergibt diese Struktur an die Erweiterungs-DLL, wenn die Implementierung von RadiusExtensionProcess2 der Erweiterungs-DLL aufgerufen wird.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Nicht unterstützt |
Unterstützte Mindestversion (Server) | Windows Server 2008 |
Kopfzeile | authif.h |