Compartilhar via


SecurityTokenServiceConfiguration Classe

Definição

Define a configuração de um STS (serviço de token de segurança). As classes que implementam STSs derivam da classe SecurityTokenService.

public ref class SecurityTokenServiceConfiguration : System::IdentityModel::Configuration::IdentityConfiguration
public class SecurityTokenServiceConfiguration : System.IdentityModel.Configuration.IdentityConfiguration
type SecurityTokenServiceConfiguration = class
    inherit IdentityConfiguration
Public Class SecurityTokenServiceConfiguration
Inherits IdentityConfiguration
Herança
SecurityTokenServiceConfiguration

Exemplos

Os exemplos de código usados nos SecurityTokenService tópicos são obtidos do Custom Token exemplo. Este exemplo fornece classes personalizadas que permitem o processamento de SWT (Tokens Web Simples) e inclui uma implementação de um STS passivo capaz de servir um token SWT. Para obter um exemplo de como implementar um STS ativo, você pode ver o Federation Metadata exemplo. Para obter informações sobre esses exemplos e outros exemplos disponíveis para WIF e sobre onde baixá-los, consulte Índice de exemplo de código WIF. O código a seguir mostra uma implementação personalizada da SecurityTokenServiceConfiguration classe para dar suporte a um STS passivo que processa tokens SWT. A configuração é inicializada e armazenada no estado do aplicativo HTTP na primeira vez que a propriedade estática Current é acessada. O construtor inicializa as propriedades da configuração personalizada com o tipo do STS personalizado, um resolvedor de token de emissor personalizado e o tipo de token padrão (o URI do tipo de token SWT). Ele também adiciona um manipulador de token SWT à coleção de manipuladores padrão.

namespace PassiveSTS
{
    /// <summary>
    /// Extends the Microsoft.IdentityModel.Services.SecurityTokenServiceConfiguration class to 
    /// be consumed by the CustomSecurityTokenService.
    /// </summary>
    public class CustomSecurityTokenServiceConfiguration : SecurityTokenServiceConfiguration
    {
        static readonly object syncRoot = new object();
        static string CustomSecurityTokenServiceConfigurationKey = "CustomSecurityTokenServiceConfigurationKey";
        static string Base64SymmetricKey = "wAVkldQiFypTQ+kdNdGWCYCHRcee8XmXxOvgmak8vSY=";

        public static CustomSecurityTokenServiceConfiguration Current
        {
            get
            {
                HttpApplicationState httpAppState = HttpContext.Current.Application;

                CustomSecurityTokenServiceConfiguration myConfiguration = httpAppState.Get(CustomSecurityTokenServiceConfigurationKey) as CustomSecurityTokenServiceConfiguration;

                if (myConfiguration != null)
                {
                    return myConfiguration;
                }

                lock (syncRoot)
                {
                    myConfiguration = httpAppState.Get(CustomSecurityTokenServiceConfigurationKey) as CustomSecurityTokenServiceConfiguration;

                    if (myConfiguration == null)
                    {
                        myConfiguration = new CustomSecurityTokenServiceConfiguration();
                        httpAppState.Add(CustomSecurityTokenServiceConfigurationKey, myConfiguration);
                    }

                    return myConfiguration;
                }
            }
        }

        public CustomSecurityTokenServiceConfiguration()
            : base("PassiveSTS")
        { }
    }
}

O código a seguir mostra como invocar um STS passivo personalizado para processar uma solicitação WS-Federation chamando o FederatedPassiveSecurityTokenServiceOperations.ProcessRequest(HttpRequest, ClaimsPrincipal, SecurityTokenService, HttpResponse) método do code-behind no default.aspx.cs arquivo. O CreateSecurityTokenService método inicializa uma instância da PassiveSTS.CustomSecurityTokenService classe usando as propriedades definidas na CustomSecurityTokenServiceConfiguration classe mostrada no exemplo anterior.

using System;
using System.IdentityModel.Services;
using System.Security.Claims;

namespace PassiveSTS
{
    public partial class _Default : System.Web.UI.Page
    {
        /// <summary>
        /// We perform the WS-Federation Passive Protocol processing in this method. 
        /// </summary>
        protected void Page_PreRender( object sender, EventArgs e ) 
        {
            FederatedPassiveSecurityTokenServiceOperations.ProcessRequest( Request, User as ClaimsPrincipal, CustomSecurityTokenServiceConfiguration.Current.CreateSecurityTokenService(), Response );
        }
    }
}

Construtores

SecurityTokenServiceConfiguration()

Inicializa uma nova instância da classe SecurityTokenServiceConfiguration.

SecurityTokenServiceConfiguration(Boolean)

Inicializa uma nova instância da classe SecurityTokenServiceConfiguration. Opcionalmente, carrega configurações da configuração atual.

SecurityTokenServiceConfiguration(String)

Inicializa uma nova instância da classe SecurityTokenServiceConfiguration que tem o nome do emissor especificado.

SecurityTokenServiceConfiguration(String, Boolean)

Inicializa uma nova instância da classe SecurityTokenServiceConfiguration que tem o nome do emissor especificado. Opcionalmente, carrega configurações da configuração atual.

SecurityTokenServiceConfiguration(String, SigningCredentials)

Inicializa uma nova instância da SecurityTokenServiceConfiguration classe que tem as credenciais de assinatura e o nome do emissor especificado.

SecurityTokenServiceConfiguration(String, SigningCredentials, Boolean)

Inicializa uma nova instância da SecurityTokenServiceConfiguration classe que tem as credenciais de assinatura e o nome do emissor especificado. Opcionalmente, carrega configurações da configuração atual.

SecurityTokenServiceConfiguration(String, SigningCredentials, String)

Inicializa uma nova instância da SecurityTokenServiceConfiguration classe que tem as credenciais de assinatura e o nome do emissor especificado. As configurações são carregadas da configuração nomeada especificada.

Campos

DefaultServiceName

O nome do serviço padrão; uma cadeia de caracteres vazia.

(Herdado de IdentityConfiguration)

Propriedades

AudienceRestriction

Obtém ou define a AudienceRestriction configurada.

(Herdado de IdentityConfiguration)
Caches

Obtém ou define a IdentityModelCaches configurada.

(Herdado de IdentityConfiguration)
CertificateValidationMode

Obtém ou define o modo de validação de certificado usado por manipuladores para validar certificados do emissor.

(Herdado de IdentityConfiguration)
CertificateValidator

Obtém ou define o validador de certificado usado por manipuladores para validar certificados do emissor.

(Herdado de IdentityConfiguration)
ClaimsAuthenticationManager

Obtém ou define o gerenciador de autenticação de declarações. O padrão é uma instância da classe ClaimsAuthenticationManager.

(Herdado de IdentityConfiguration)
ClaimsAuthorizationManager

Obtém ou define o gerenciador de autorização de declarações.

(Herdado de IdentityConfiguration)
DefaultMaxSymmetricKeySizeInBits

Obtém ou define o limite de tamanho de chave padrão em bits usado para verificar se o KeySize especificado na solicitação está dentro desse limite.

DefaultSymmetricKeySizeInBits

Obtém ou define o tamanho padrão da chave em bits usado no token emitido.

DefaultTokenLifetime

Obtém ou define o tempo de vida padrão usado nos tokens emitidos.

DefaultTokenType

Obtém ou define o tipo de token padrão usado na emissão de tokens.

DetectReplayedTokens

Obtém ou define um valor na configuração do manipulador padrão que indica se os manipuladores devem detectar tokens reproduzidos.

(Herdado de IdentityConfiguration)
DisableWsdl

Obtém ou define um valor que especifica se a geração de WSDL deve ser habilitada para o STS (serviço de token de segurança).

IsInitialized

Obtém ou define um valor que indica se o método Initialize() foi chamado.

(Herdado de IdentityConfiguration)
IssuerNameRegistry

Obtém ou define o registro de nomes de emissor usado para resolver nomes de emissor.

(Herdado de IdentityConfiguration)
IssuerTokenResolver

Obtém ou define o resolvedor de token do emissor.

(Herdado de IdentityConfiguration)
MaxClockSkew

Obtém ou define a diferença máxima permitida de tempo entre os relógios do sistema das duas partes que estão se comunicando.

(Herdado de IdentityConfiguration)
MaximumTokenLifetime

Obtém ou define o tempo de vida máximo do token para tokens emitidos.

Name

Obtém o nome de serviço desta configuração.

(Herdado de IdentityConfiguration)
RevocationMode

Obtém ou define o modo de revogação usado por manipuladores para validar certificados do emissor.

(Herdado de IdentityConfiguration)
SaveBootstrapContext

Obtém ou define um valor que indica se o objeto BootstrapContext é salvo na ClaimsIdentity e nas Sessões após a validação de token.

(Herdado de IdentityConfiguration)
SecurityTokenHandlerCollectionManager

Obtém o SecurityTokenHandlerCollectionManager que contém o conjunto de objetos SecurityTokenHandler que são usados para serializar e validar os tokens encontrados em mensagens WS-Trust.

(Herdado de IdentityConfiguration)
SecurityTokenHandlers

Obtém a coleção de objetos SecurityTokenHandler usados para serializar e validar os tokens encontrados em mensagens WS-Trust.

(Herdado de IdentityConfiguration)
SecurityTokenService

Obtém ou define o Type do STS (serviço de token de segurança).

ServiceCertificate

Obtém ou define o certificado de serviço.

(Herdado de IdentityConfiguration)
ServiceTokenResolver

Obtém ou define o resolvedor de token de serviço.

(Herdado de IdentityConfiguration)
SigningCredentials

Obtém ou define as credenciais de assinatura.

TokenIssuerName

Obtém ou define o nome do emissor para que ele possa ser definido no token emitido.

TokenReplayCacheExpirationPeriod

Obtém ou define o período de validade de itens colocados no TokenReplayCache.

(Herdado de IdentityConfiguration)
TrustedStoreLocation

Obtém ou define o local de repositório confiável usado por manipuladores para validar certificados do emissor.

(Herdado de IdentityConfiguration)
WSTrust13RequestSerializer

Obtém ou define o serializador RST (Solicitação do WS-Trust 1.3).

WSTrust13ResponseSerializer

Obtém ou define o serializador de Resposta do WS-Trust 1.3 (RSTR).

WSTrustFeb2005RequestSerializer

Obtém ou define o serializador de Solicitação de fevereiro de 2005 do WS-Trust (RST).

WSTrustFeb2005ResponseSerializer

Obtém ou define o serializador de Resposta do WS-Trust de fevereiro de 2005 (RSTR).

Métodos

CreateSecurityTokenService()

Cria uma instância do STS (serviço de token de segurança) do Type especificado na propriedade SecurityTokenService.

Equals(Object)

Determina se o objeto especificado é igual ao objeto atual.

(Herdado de Object)
GetHashCode()

Serve como a função de hash padrão.

(Herdado de Object)
GetType()

Obtém o Type da instância atual.

(Herdado de Object)
Initialize()

Atualiza as propriedades nos objetos SecurityTokenHandlerConfiguration para os objetos SecurityTokenHandlerCollection contidos no SecurityTokenHandlerCollectionManager, para que eles sejam consistentes com os valores de propriedades nesta instância IdentityConfiguration.

(Herdado de IdentityConfiguration)
LoadConfiguration(IdentityConfigurationElement)

Carrega as configurações para esta instância IdentityConfiguration do aplicativo ou arquivo de configuração da Web.

(Herdado de IdentityConfiguration)
LoadHandlerConfiguration(IdentityConfigurationElement)

Carrega uma SecurityTokenHandlerConfiguration usando os elementos diretamente no IdentityConfigurationElement especificado.

(Herdado de IdentityConfiguration)
LoadHandlerConfiguration(SecurityTokenHandlerConfiguration, SecurityTokenHandlerConfigurationElement)

Carrega os elementos de configuração pertencentes ao SecurityTokenHandlerCollection.

(Herdado de IdentityConfiguration)
LoadHandlers(IdentityConfigurationElement)

Carrega o SecurityTokenHandlerCollectionManager definido para o serviço especificado.

(Herdado de IdentityConfiguration)
MemberwiseClone()

Cria uma cópia superficial do Object atual.

(Herdado de Object)
ToString()

Retorna uma cadeia de caracteres que representa o objeto atual.

(Herdado de Object)

Aplica-se a

Confira também