Déployer un fournisseur de revendications dans SharePoint
Apprenez à déployer un fournisseur de revendications SharePoint à l'aide de l'infrastructure des fonctionnalités et de création d'une classe qui hérite de SPClaimProviderFeatureReceiver .
Déploiement d'un fournisseur de revendications dans le cadre d'un programme d'installation
Pour déployer un fournisseur de revendications, le plus simple consiste à l'aide de l'infrastructure des fonctionnalités. Pour ce faire, définissez d’abord une fonctionnalité de batterie de serveurs et un récepteur de fonctionnalités qui dérive de la classe SPClaimProviderFeatureReceiver, puis remplacez les propriétés de base.
Voici un exemple de cette procédure.
public class MyClaimProviderFeatureReceiver : SPClaimProviderFeatureReceiver
{
public override string ClaimProviderAssembly { get { return typeof(MyClaimProvider).Assembly.FullName; } }
public override string ClaimProviderType { get { return typeof(MyClaimProvider).FullName; } }
public override string ClaimProviderDisplayName
{
get
{
return StringResourceManager.GetString(MyLocalizedClaimProviderName);
}
}
public override string ClaimProviderDescription
{
get
{
return StringResourceManager.GetString(MyLocalizedClaimProviderDescription);
}
}
}
Déploiement d'un fournisseur de revendications à l'aide de l'infrastructure de fonctionnalité
Voici un exemple qui montre comment définir une fonctionnalité et un récepteur de fonctionnalité qui dérive de SPClaimProviderFeatureReceiver et remplacer les propriétés de base.
// Sample claims provider feature receiver class through which
// the sample claims provider registers itself
// with the Microsoft.SharePoint.Administration.Claims.SPClaimProviderManager class.
using System;
using Microsoft.SharePoint.Administration;
using Microsoft.SharePoint.Administration.Claims;
namespace MySample.Sample.Server.SampleClaimsProvider
{
/// <summary>
/// The NameIdentifierClaimProviderFeatureReceiver class is a feature receiver class
/// that registers the claims provider with the claims provider manager.
/// </summary>
[Microsoft.SharePoint.Security.SharePointPermission(System.Security.Permissions.SecurityAction.Demand, ObjectModel = true)]
public sealed class NameIdentifierClaimProviderFeatureReceiver : SPClaimProviderFeatureReceiver
{
#region Private Methods
/// <summary>
/// Because use of base keyword can lead to unverifiable code inside a lambda expression,
/// this function is created as a wrapper for the base.FeatureActivated function.
/// This function gets called in the following lambda expression.
/// </summary>
/// <param name="properties">Represents the properties of a feature activation.</param>
/// <returns> void </returns>
private void ExecBaseFeatureActivated(Microsoft.SharePoint.SPFeatureReceiverProperties properties)
{
base.FeatureActivated(properties);
}
#endregion Private Methods
#region Public Method\\Properties
/// <summary>
/// Gets the fully qualified name of the MySample.Sample.Server.SampleClaimsProvider assembly.
/// </summary>
/// <returns>String representing fully qualified name of the MySample.Sample.Server.SampleClaimsProvider
/// assembly.</returns>
public override string ClaimProviderAssembly
{
get{ return typeof(SampleNameIdClaimProvider).Assembly.FullName; }
}
/// <summary>
/// Gets the fully qualified name of the claims provider type, including the namespace of the type.
/// </summary>
/// <returns>String representing the fully qualified name of the
///SampleNameIdClaimProvider class.</returns>
public override string ClaimProviderType
{
get{ return typeof(NameIdentifierClaimProvider).FullName; }
}
/// <summary>
/// Gets the display name of the claims provider.
/// </summary>
/// <returns>String representing display name of the claim provider.</returns>
public override string ClaimProviderDisplayName
{
get{ return "Sample NameId Claim Provider"; }
}
/// <summary>
/// Gets the description about the claims provider.
/// </summary>
/// <returns>String representing the description about the SampleClaimProvider.</returns>
public override string ClaimProviderDescription
{
get
{
return "This feature adds SampleNameId claim type in the SAML token created by the STS.";
}
}
/// <summary>
/// This methods gets called after the activation of the feature.
/// </summary>
/// <param name="properties">Represents the properties of a feature activation<./param>
/// <returns>void.</returns>
public override void FeatureActivated(Microsoft.SharePoint.SPFeatureReceiverProperties properties)
{
{
ExecBaseFeatureActivated(properties);
}
}
#endregion Public Method\\Properties
}
}