Share via


SecurityTokenServiceConfiguration 類別

定義

定義 Security Token Service (STS) 的組態。 實作衍生自 SecurityTokenService 類別之 STS 的類別。

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
繼承
SecurityTokenServiceConfiguration

範例

主題中使用的 SecurityTokenService 程式代碼範例取自 Custom Token 範例。 此範例提供自定義類別,可讓您處理簡單的 Web 令牌 (SWT) ,並包含能夠提供 SWT 令牌的被動 STS 實作。 如需如何實作作用中 STS 的範例,您可以查看 Federation Metadata 範例。 如需這些範例和其他可供 WIF 使用之範例以及下載位置的相關信息,請參閱 WIF 程式代碼範例索引。 下列程式代碼示範 類別的自定義實作,以支持處理 SWT 令牌的 SecurityTokenServiceConfiguration 被動 STS。 設定會在第一次存取靜態 Current 屬性時初始化並儲存在 HTTP 應用程式狀態中。 建構函式會使用自定義 STS 的類型、自定義簽發者令牌解析程式,以及預設令牌類型, (SWT 令牌類型的 URI) ,初始化自定義組態的屬性。 它也會將 SWT 令牌處理程式新增至預設處理程式集合。

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")
        { }
    }
}

下列程式代碼示範如何叫用自定義被動 STS,以從 檔案中的程式代碼後default.aspx.cs置呼叫 FederatedPassiveSecurityTokenServiceOperations.ProcessRequest(HttpRequest, ClaimsPrincipal, SecurityTokenService, HttpResponse) 方法來處理 WS-Federation 要求。 方法CreateSecurityTokenService會使用上一個範例所示類別上CustomSecurityTokenServiceConfiguration設定的屬性,初始化 類別的PassiveSTS.CustomSecurityTokenService實例。

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 );
        }
    }
}

建構函式

SecurityTokenServiceConfiguration()

初始化 SecurityTokenServiceConfiguration 類別的新執行個體。

SecurityTokenServiceConfiguration(Boolean)

初始化 SecurityTokenServiceConfiguration 類別的新執行個體。 選擇性地從目前組態中載入設定。

SecurityTokenServiceConfiguration(String)

初始化 SecurityTokenServiceConfiguration 類別的新執行個體,這個執行個體具有指定的簽發者名稱。

SecurityTokenServiceConfiguration(String, Boolean)

初始化 SecurityTokenServiceConfiguration 類別的新執行個體,這個執行個體具有指定的簽發者名稱。 選擇性地從目前組態中載入設定。

SecurityTokenServiceConfiguration(String, SigningCredentials)

初始化 SecurityTokenServiceConfiguration 類別的新執行個體,這個執行個體具有指定的簽發者名稱和簽署認證。

SecurityTokenServiceConfiguration(String, SigningCredentials, Boolean)

初始化 SecurityTokenServiceConfiguration 類別的新執行個體,這個執行個體具有指定的簽發者名稱和簽署認證。 選擇性地從目前組態中載入設定。

SecurityTokenServiceConfiguration(String, SigningCredentials, String)

初始化 SecurityTokenServiceConfiguration 類別的新執行個體,這個執行個體具有指定的簽發者名稱和簽署認證。 會從指定的具名組態中載入設定。

欄位

DefaultServiceName

預設服務名稱;空字串。

(繼承來源 IdentityConfiguration)

屬性

AudienceRestriction

取得或設定設定的 AudienceRestriction

(繼承來源 IdentityConfiguration)
Caches

取得或設定設定的 IdentityModelCaches

(繼承來源 IdentityConfiguration)
CertificateValidationMode

取得或設定處理常式用來驗證簽發者憑證的憑證驗證模式。

(繼承來源 IdentityConfiguration)
CertificateValidator

取得或設定處理常式用來驗證簽發者憑證的憑證驗證程式。

(繼承來源 IdentityConfiguration)
ClaimsAuthenticationManager

取得或設定宣告驗證管理員。 預設為 ClaimsAuthenticationManager 類別的執行個體。

(繼承來源 IdentityConfiguration)
ClaimsAuthorizationManager

取得或設定宣告授權管理員。

(繼承來源 IdentityConfiguration)
DefaultMaxSymmetricKeySizeInBits

取得或設定預設金鑰大小限制 (以位元為單位),用來檢查要求中指定的 KeySize 是否在此限制內。

DefaultSymmetricKeySizeInBits

取得或設定用於所發出權杖的預設金鑰大小 (以位元為單位)。

DefaultTokenLifetime

取得或設定用於所發出權杖的預設存留期。

DefaultTokenType

取得或設定在發出權杖時所用的預設權杖型別。

DetectReplayedTokens

取得或設定預設處理常式組態中的值,指出處理常式是否應該會偵測重新執行的語彙基元。

(繼承來源 IdentityConfiguration)
DisableWsdl

取得或設定值,這個值會指定是否應針對安全性權杖服務 (STS) 啟用 WSDL 產生。

IsInitialized

取得或設定值,指出是否已呼叫 Initialize() 方法。

(繼承來源 IdentityConfiguration)
IssuerNameRegistry

取得或設定用於解析簽發者名稱的簽發者名稱登錄。

(繼承來源 IdentityConfiguration)
IssuerTokenResolver

取得或設定簽發者權杖解析程式。

(繼承來源 IdentityConfiguration)
MaxClockSkew

取得或設定通訊雙方系統時鐘之間可允許的最大時間差異。

(繼承來源 IdentityConfiguration)
MaximumTokenLifetime

取得或設定所發行權杖的最大權杖存留期。

Name

取得此組態的服務名稱。

(繼承來源 IdentityConfiguration)
RevocationMode

取得或設定處理常式用來驗證簽發者憑證的撤銷模式。

(繼承來源 IdentityConfiguration)
SaveBootstrapContext

取得或設定值,指出 BootstrapContext 物件是否儲存在 ClaimsIdentity 和權杖驗證後的工作階段。

(繼承來源 IdentityConfiguration)
SecurityTokenHandlerCollectionManager

取得包含 SecurityTokenHandlerCollectionManager 物件集合的 SecurityTokenHandler,這些物件用來序列化及驗證 WS-Trust 訊息中的權杖。

(繼承來源 IdentityConfiguration)
SecurityTokenHandlers

取得 SecurityTokenHandler 物件的集合,用來序列化和驗證在 WS-Trust 訊息中找到的權杖。

(繼承來源 IdentityConfiguration)
SecurityTokenService

取得或設定安全性權杖服務 (STS) 的 Type

ServiceCertificate

取得或設定服務憑證。

(繼承來源 IdentityConfiguration)
ServiceTokenResolver

取得或設定服務權杖解析程式。

(繼承來源 IdentityConfiguration)
SigningCredentials

取得或設定簽署認證。

TokenIssuerName

取得或設定簽發者名稱,以便設定在發出的權杖中。

TokenReplayCacheExpirationPeriod

取得或設定放入 TokenReplayCache 中之項目的有效期限。

(繼承來源 IdentityConfiguration)
TrustedStoreLocation

取得或設定處理常式用來驗證簽發者憑證的受信任存放區位置。

(繼承來源 IdentityConfiguration)
WSTrust13RequestSerializer

取得或設定 WS-Trust 1.3 要求 (RST) 序列化程式。

WSTrust13ResponseSerializer

取得或設定 WS-Trust 1.3 回應 (RSTR) 序列化程式。

WSTrustFeb2005RequestSerializer

取得或設定 WS-Trust Feb 2005 要求 (RST) 序列化程式。

WSTrustFeb2005ResponseSerializer

取得或設定 WS-Trust Feb 2005 回應 (RSTR) 序列化程式。

方法

CreateSecurityTokenService()

Type 屬性中指定的 SecurityTokenService 建立 Security Token Service (STS) 執行個體。

Equals(Object)

判斷指定的物件是否等於目前的物件。

(繼承來源 Object)
GetHashCode()

做為預設雜湊函式。

(繼承來源 Object)
GetType()

取得目前執行個體的 Type

(繼承來源 Object)
Initialize()

針對 SecurityTokenHandlerConfiguration內含的 SecurityTokenHandlerCollection物件,更新 SecurityTokenHandlerCollectionManager 物件中的屬性,以符合此 IdentityConfiguration 執行個體上的屬性值。

(繼承來源 IdentityConfiguration)
LoadConfiguration(IdentityConfigurationElement)

從應用程式或 Web 組態檔載入這個 IdentityConfiguration 執行個體的設定。

(繼承來源 IdentityConfiguration)
LoadHandlerConfiguration(IdentityConfigurationElement)

藉由直接使用指定之 SecurityTokenHandlerConfiguration 底下的項目,載入 IdentityConfigurationElement

(繼承來源 IdentityConfiguration)
LoadHandlerConfiguration(SecurityTokenHandlerConfiguration, SecurityTokenHandlerConfigurationElement)

載入與 SecurityTokenHandlerCollection 相關的組態項目。

(繼承來源 IdentityConfiguration)
LoadHandlers(IdentityConfigurationElement)

載入為指定之服務定義的 SecurityTokenHandlerCollectionManager

(繼承來源 IdentityConfiguration)
MemberwiseClone()

建立目前 Object 的淺層複製。

(繼承來源 Object)
ToString()

傳回代表目前物件的字串。

(繼承來源 Object)

適用於

另請參閱