IAzApplication::InitializeClientContextFromStringSid-Methode (azroles.h)
Die InitializeClientContextFromStringSid-Methode ruft einen IAzClientContext-Objektzeiger aus der angegebenen Sicherheits-ID (SID) in Textform ab.
Syntax
HRESULT InitializeClientContextFromStringSid(
[in] BSTR SidString,
[in] LONG lOptions,
[in, optional] VARIANT varReserved,
[out] IAzClientContext **ppClientContext
);
Parameter
[in] SidString
Eine Zeichenfolge, die die Textform der SID des Sicherheitsprinzipals enthält. Dies muss eine gültige Zeichenfolgen-SID sein, die von der ConvertStringSidToSid-Funktion konvertiert werden kann.
[in] lOptions
Optionen für die Kontexterstellung.
Wenn AZ_CLIENT_CONTEXT_SKIP_GROUP angegeben ist, ist die im SidString-Parameter angegebene SID nicht unbedingt ein gültiges Benutzerkonto. Die SID wird verwendet, um den Kontext ohne Validierung zu erstellen. Der erstellte Kontext wird als aus einer SID erstellt gekennzeichnet, die SID-Zeichenfolge wird im Feld Clientname gespeichert, und das Feld domänenname ist leer. Tokengruppen werden bei der Clientkontexterstellung nicht verwendet. LDAP-Abfragegruppen (Lightweight Directory Access Protocol) werden nicht unterstützt, wenn AZ_CLIENT_CONTEXT_SKIP_GROUP angegeben wird. Da das Konto in Active Directory nicht überprüft wird, sind die Benutzerinformationseigenschaften des Clientkontexts, z. B . UserSamCompat, ungültig, und wenn darauf zugegriffen wird, geben sie ERROR_INVALID_HANDLE zurück. Die RoleForAccessCheck-Eigenschaft und die AccessCheck-Methode von IAzClientContext können weiterhin verwendet werden, um eine Rolle für die Zugriffsüberprüfung anzugeben. Die GetRoles-Methode von IAzClientContext kann weiterhin verwendet werden, um Rollen aufzulisten, die dem Kontext innerhalb eines bestimmten Bereichs zugewiesen sind.
Wenn AZ_CLIENT_CONTEXT_SKIP_GROUP nicht angegeben ist, muss die SID ein gültiges Benutzerkonto darstellen.
[in, optional] varReserved
Für die zukünftige Verwendung reserviert. Dieser Parameter kann einer der folgenden Werte sein:
- varReserved.vt == VT_ERROR und varReserved.scode == DISP_E_PARAMNOTFOUND
- varReserved.vt == VT_EMPTY
- varReserved.vt == VT_NULL
- varReserved.vt == VT_I4 und varReserved.lVal == 0
- varReserved.vt == VT_I2 und varReserved.iVal == 0
[out] ppClientContext
Ein Zeiger auf einen Zeiger auf das zurückgegebene IAzClientContext-Objekt .
Rückgabewert
Wenn die Funktion erfolgreich ist, gibt die Funktion S_OK zurück.
Wenn die Funktion fehlschlägt, wird ein HRESULT-Wert zurückgegeben, der den Fehler angibt. Eine Liste allgemeiner Fehlercodes finden Sie unter Allgemeine HRESULT-Werte.
Hinweise
Rufen Sie nach Möglichkeit die InitializeClientContextFromToken-Funktion anstelle von InitializeClientContextFromStringSid auf. InitializeClientContextFromStringSid versucht, die in einem Anmeldetoken verfügbaren Informationen abzurufen, wenn der Client tatsächlich angemeldet war. Ein tatsächliches Anmeldetoken bietet weitere Informationen, z. B. Anmeldetyp und Anmeldeeigenschaften, und spiegelt das Verhalten des für die Anmeldung verwendeten Authentifizierungspakets wider. Der von InitializeClientContextFromToken erstellte Clientkontext verwendet ein Anmeldetoken, und der resultierende Clientkontext ist vollständiger und genauer als ein von InitializeClientContextFromStringSid erstellter Clientkontext.
Anforderungen
Unterstützte Mindestversion (Client) | Windows Vista [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Windows Server 2003 [nur Desktop-Apps] |
Zielplattform | Windows |
Kopfzeile | azroles.h |
Bibliothek | Azroles.lib |
DLL | Azroles.dll |
Verteilbare Komponente | Windows Server 2003 Administration Tools Pack unter Windows XP |