SecurityTokenServiceConfiguration 類別
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
定義 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
- 繼承
範例
主題中使用的 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")
{ }
}
}
下列程式代碼示範如何從檔案後default.aspx.cs
置的程式代碼呼叫 FederatedPassiveSecurityTokenServiceOperations.ProcessRequest(HttpRequest, ClaimsPrincipal, SecurityTokenService, HttpResponse) 方法,叫用自定義被動 STS 來處理 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) |