Freigeben über


ISecurityCallContext::IsCallerInRole-Methode (comsvcs.h)

Bestimmt, ob sich der direkte Aufrufer in der angegebenen Rolle befindet.

Syntax

HRESULT IsCallerInRole(
  [in]  BSTR         bstrRole,
  [out] VARIANT_BOOL *pfInRole
);

Parameter

[in] bstrRole

Der Name der Rolle.

[out] pfInRole

TRUE , wenn sich der Aufrufer in der angegebenen Rolle befindet; FALSE , falls nicht. Wenn die angegebene Rolle nicht für die Anwendung definiert ist, wird FALSE zurückgegeben. Dieser Parameter ist auf TRUE festgelegt, wenn die rollenbasierte Sicherheit nicht aktiviert ist.

Rückgabewert

Diese Methode kann die Standardrückgabewerte E_INVALIDARG, E_OUTOFMEMORY, E_UNEXPECTED und E_FAIL sowie die folgenden Werte zurückgeben.

Rückgabecode BESCHREIBUNG
S_OK
Die im bstrRole-Parameter angegebene Rolle ist eine erkannte Rolle, und das im pfIsInRole-Parameter zurückgegebene boolesche Ergebnis gibt an, ob sich der Aufrufer in dieser Rolle befindet.
CONTEXT_E_ROLENOTFOUND
Die im bstrRole-Parameter angegebene Rolle ist nicht vorhanden.

Hinweise

Verwenden Sie diese Methode, um den Zugriff auf Codeabschnitte zu beschränken, die nicht ausgeführt werden sollen, es sei denn, der Aufrufer ist Mitglied der angegebenen Rolle. Windows-Gruppen und -Benutzer werden mithilfe des Component Services-Verwaltungstools den Rollen einer Anwendung zugewiesen. Weitere Informationen zu Rollen finden Sie unter Rollenbasierte Sicherheit.

IsCallerInRole gilt nur für den direkten Aufrufer der derzeit ausgeführten Methode. IsCallerInRole gilt nicht für andere Aufrufer in der Aufrufsequenz, von der aus die aktuelle Methode aufgerufen wurde. Sie können jedoch Informationen zu anderen Aufrufern in der Sequenz abrufen, indem Sie die get_Item-Eigenschaftsmethode verwenden, um die Callers-Eigenschaft des Kontextobjekts des Sicherheitsaufrufs abzurufen.

Da IsCallerInRoleTRUE ist, wenn die rollenbasierte Sicherheit nicht aktiviert ist, empfiehlt es sich, IsSecurityEnabled vor dem Aufruf von IsCallerInRole aufzurufen, um sicherzustellen, dass IsCallerInRole nützliche Informationen zurückgibt.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows 2000 Professional [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows 2000 Server [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile comsvcs.h

Weitere Informationen

ISecurityCallContext

Programmgesteuerte Komponentensicherheit

Rollenbasierte Sicherheit