Freigeben über


Gewusst wie: Erstellen eines Forderungsanbieters

Letzte Änderung: Mittwoch, 23. März 2011

Gilt für: SharePoint Foundation 2010

Ein Forderungsanbieter gibt Forderungen heraus und packt Forderungen in Sicherheitstoken. Ein Forderungsanbieter erfüllt zwei Aufgaben: Erweiterung und Auswahl.

Mit der Forderungserweiterung kann eine Anwendung das Benutzertoken mit zusätzlichen Forderungen erweitern. Bei einer Windows-basierten Anmeldung kann der Active Directory-Verzeichnisdienst z. B. alle Sicherheitsgruppen eines Benutzers in das Windows-Token des Benutzers erweitern. Bei einer forderungsbasierten Anmeldung kann eine CRM-Anwendung (Customer Relationship Management, Kundenbeziehungsmanagement) Rollen aus einer CRM-Datenbank erweitern. Wenn diese Forderungen im Benutzertoken enthalten sind, können Ressourcen für diese Forderungen autorisiert werden. Mit diesen Forderungen wird also bestimmt, ob ein bestimmter Benutzer Zugriff auf spezifische Ressourcen hat.

Forderungen können im Personenauswahl-Steuerelement über die Forderungsauswahl angezeigt werden. Mit der Forderungsauswahl kann eine Anwendung Forderungen in der Personenauswahl anzeigen, beispielsweise beim Konfigurieren der Sicherheit einer SharePoint-Website oder eines SharePoint-Diensts. Mithilfe dieser Funktionalität können Sie die Suche, das Auflösen und den angezeigten Namen von Forderungen bereitstellen.

HinweisHinweis

Eine Personenauswahl mit einer Funktion zur Forderungsauswahl wird manchmal auch als Forderungsauswahl bezeichnet.

Wenn Sie einen Forderungsanbieter schreiben möchten, müssen Sie zunächst eine Klasse erstellen, die von der SPClaimProvider-Klasse abgeleitet ist.

TippTipp

Ein Codebeispiel und weitere Informationen zur SPClaimProvider-Klasse und ihren Membern finden Sie unter SPClaimProvider.

Erforderliche Implementierungen

Es folgen die erforderlichen Methoden und Eigenschaften zum Schreiben eines Forderungsanbieters.

Erforderlich

Die folgende Name-Eigenschaft ist erforderlich. Der Name muss in der Farm eindeutig sein.

public abstract String Name
      

Erforderlich für die Forderungsauswahl

Forderungen können im Personenauswahl-Steuerelement über die Forderungsauswahl angezeigt werden. Die folgenden Methoden in der SPClaimProvider-Klasse sind erforderlich, wenn Sie die Forderungsauswahl im Personenauswahl-Steuerelement implementieren möchten.

protected abstract void FillSchema(SPProviderSchema schema);
     protected abstract void FillClaimTypes(List<String> claimTypes);
     protected abstract void FillClaimValueTypes(List<String> claimValueTypes);
     protected abstract void FillEntityTypes(List<String> entityTypes);

Erforderlich für die Forderungserweiterung

Wenn Sie zusätzliche Forderungen in das Sicherheitstoken eines Benutzers einschließen, erweitern Sie Forderungen. Wenn Sie Forderungen erweitern möchten, müssen Sie die folgenden Methoden in der SPClaimProvider-Klasse implementieren.

public abstract bool SupportsEntityInformation
      protected abstract void FillClaimsForEntity(Uri context, SPClaim entity, List<SPClaim> claims);

Erforderlich zum Anzeigen der Hierarchie im linken Bereich der Forderungsauswahl

Wenn Sie die Hierarchie im linken Bereich der Forderungsauswahl anzeigen möchten, müssen Sie die folgenden Methoden in der SPClaimProvider-Klasse implementieren.

public abstract bool SupportsHierarchy
     protected abstract void FillHierarchy(Uri context, String[] entityTypes, String hierarchyNodeID, int numberOfLevels, bool includeEntityData, SPProviderHierarchyTree hierarchy);

Erforderlich für das Auflösen von Forderungen im Eingabesteuerelement der Forderungsauswahl

Wenn Sie Forderungen mithilfe des Eingabesteuerelements der Forderungsauswahl auflösen möchten, müssen Sie die folgenden Methoden in der SPClaimProvider-Klasse implementieren.

public abstract bool SupportsResolve
     protected abstract void FillResolve(Uri context, String[] entityTypes, String resolveInput, List<PickerEntity> resolved);
     protected abstract void FillResolve(Uri context, String[] entityTypes, SPClaim resolveInput, List<PickerEntity> resolved);

Erforderlich für die Suche nach Forderungen in der Forderungsauswahl

Wenn Sie nach Forderungen in der Forderungsauswahl suchen möchten, müssen Sie die folgende Eigenschaft und Methode in der SPClaimProvider-Klasse implementieren.

public abstract bool SupportsSearch
     protected abstract void FillSearch(Uri context, String[] entityTypes, String searchPattern, String hierarchyNodeID, int maxCount, SPProviderHierarchyTree searchTree);

Nützliche Hilfsmethode

Sie können auch eine Hilfsmethode implementieren, die Sie beim Erstellen von SPClaim-Objekten unterstützt.

Nützliche Hilfsmethode zum Erstellen von SPClaim-Objekten

Die folgende Hilfsmethode können Sie implementieren, damit Sie sie beim Erstellen von SPClaim-Objekten unterstützt.

protected SPClaim CreateClaim(String claimType, String value, String valueType)

Siehe auch

Konzepte

Anspruchsanbieter