Aracılığıyla paylaş


SessionSecurityTokenHandler Sınıf

Tanım

SecurityTokenHandler türünde SessionSecurityTokengüvenlik belirteçlerini işleyen bir .

public ref class SessionSecurityTokenHandler : System::IdentityModel::Tokens::SecurityTokenHandler
public class SessionSecurityTokenHandler : System.IdentityModel.Tokens.SecurityTokenHandler
type SessionSecurityTokenHandler = class
    inherit SecurityTokenHandler
Public Class SessionSecurityTokenHandler
Inherits SecurityTokenHandler
Devralma
SessionSecurityTokenHandler
Türetilmiş

Örnekler

Aşağıdaki XML, bir belirteç işleyicisi koleksiyonundaki varsayılan oturum güvenlik belirteci işleyicisinin yapılandırmadaki sınıfının bir örneğiyle nasıl değiştirileceğini MachineKeySessionSecurityTokenHandler gösterir.

<securityTokenHandlers>
  <remove type="System.IdentityModel.Tokens.SessionSecurityTokenHandler, System.IdentityModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
  <add type="System.IdentityModel.Services.Tokens.MachineKeySessionSecurityTokenHandler, System.IdentityModel.Services, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
</securityTokenHandlers>

Açıklamalar

SessionSecurityTokenHandler sınıfı oturum belirteçlerini serileştirir, seri durumdan çıkartır ve doğrular. Oturum belirteçleri türünde SessionSecurityTokenbelirteçlerdir. SessionSecurityTokenHandler sınıfı, tanımlama bilgisi biçimindeki ve tanımlama bilgisi biçimindeki belirteçleri seri hale getirmektedir. Varsayılan olarak, sınıf belirteçleri WS-Secure Konuşma Şub2005 veya WS-Secure Konuşma 1.3 <wsc:SecurityContextToken> öğelerine serileştirir. Oturum belirteçleri , (WSFAM) ve SessionAuthenticationModule (SAM) tarafından WSFederationAuthenticationModule bir oturum hakkındaki bilgileri depolamak için kullanılır; bu öncelikle ClaimsPrincipal kimliği doğrulanmış kullanıcıyla ve oturumun başlangıç ve sona erme süreleriyle ilişkilidir.

Pasif senaryolarda, WSFederationAuthenticationModuleSessionAuthenticationModule kimliği doğrulanmış kullanıcıyı temsil eden oturum belirtecini oluşturmak için kimlik doğrulama işlem hattından ClaimsPrincipal (SAM) çağrısı yapar. SAM, belirteci oluşturmak ve bir tanımlama bilgisi olarak seri hale getirmek (ve sonraki isteklerde tanımlama bilgisinden belirteci seri durumdan çıkarmak için) için yapılandırılan SessionSecurityTokenHandler kullanır. SAM, tanımlama bilgisini HTTP Yanıtına geri yazmak için yapılandırılmış CookieHandler sınıfının bir örneğini kullanır. Bu tanımlama bilgisi daha sonra istemciye döndürülür ve sonraki isteklerde istemci, kimlik sağlayıcısına bir güvenlik belirtecini yeniden almak için gidiş dönüş yapmak yerine tanımlama bilgisini sunabilir. Oturumların WIF ile nasıl çalıştığı hakkında daha fazla bilgi için bkz. WIF Oturum Yönetimi.

Uyarı

<securityTokenHandlers> yapılandırma öğesi, uygulamanın oturumlarının güvenliğini sağlama sorumluluğuna sahip bir SessionSecurityTokenHandler belirtmek için kullanılabilir. Yanlış yapılandırılmış bir sistem uygulama güvenliğinin aşılmasına neden olabileceğinden, geliştiriciler bu yapılandırma ayarını değiştirirken dikkatli olmalıdır. Örneğin, türetilmiş SessionSecurityTokenHandler bir belirtip boş bir Dönüşümler (CookieTransform) koleksiyonunu tabana geçirmek, kullanıcı kimliğinin korunmayan bir tanımlama bilgisi halinde serileştirilmesine neden olur. Bu, bir saldırganın kimliği değiştirmesine ve dolayısıyla erişim ayrıcalıklarını değiştirmesine izin verebilir.

Oturum belirteci başvuru modundaysa, yani özelliği isetrue, SessionSecurityToken.IsReferenceMode oturum belirteci işleyicisi yalnızca içinde anahtarını SessionSecurityTokenCacheyeniden oluşturmak için gereken oturum belirtecinin özelliklerini serileştirir. Varsayılan durumda, SessionSecurityTokenCacheKey önbellek anahtarlarını temsil etmek için sınıfı kullanılır ve belirteç işleyicisi belirtecin ve SessionSecurityToken.KeyGeneration özelliklerini yazarSessionSecurityToken.ContextId. Oturum belirteci başvuru modunda değilse, yani SessionSecurityToken.IsReferenceMode özelliği olur false, daha önce bahsedilen özelliklere ek olarak işleyici, belirteçten seri hale getirilmiş bir bayt dizisinde yöntemini çağırır ApplyTransforms ve sonuçta elde edilen değeri de tanımlama bilgisinde depolar. Belirtecin nasıl seri hale getirildiği hakkında daha fazla bilgi için yöntemine SessionSecurityTokenHandler.WriteToken(XmlWriter, SecurityToken) bakın.

özelliği, Transforms yöntemindeki oturum belirtecine ApplyTransforms uygulanan dönüşümlerin listesini alır. Tüm dönüşümler sınıfından CookieTransform türetilir. Varsayılan durumda DeflateCookieTransform ve ProtectedDataCookieTransform uygulanır. , ProtectedDataCookieTransform tanımlama bilgisi malzemesini korumak için Veri Koruma API'sini (DPAPI) kullanır. DPAPI, koruma algoritmalarında çalıştığı bilgisayara özgü bir anahtar kullanır. Bu nedenle, web grubu senaryolarında varsayılan oturum belirteci işleyicisi kullanılamaz çünkü bu tür senaryolarda bir bilgisayara yazılan belirteçlerin başka bir bilgisayarda okunması gerekebilir. Bu sorunu aşmak için birçok strateji kullanabilirsiniz. Örneğin şunları yapabilirsiniz:

Web grubu senaryolarında oturumları kullanma hakkında daha fazla bilgi için bkz. WIF ve Web Grupları.

SessionSecurityTokenHandler varsayılan belirteç işleyicisi koleksiyonuna dahil edilir; ancak, varsayılan işleyiciyi koleksiyondan kaldırmak için önce securityTokenHandlers> öğesinin< altında bir <remove> öğesi belirterek ve ardından add> öğesini kullanarak< özel belirteç işleyicinizi ekleyerek bunu özel bir oturum belirteci işleyicisiyle değiştirebilirsiniz. Varsayılan olarak, öğesinin altına sessionTokenRequirement> öğesini ekleyerek< varsayılan belirteç ömrünü belirtebilirsiniz.<add> Özel bir belirteç işleyicisi tasarlayarak özel yapılandırma öğelerini işlemek için mantığı sağlamak için yöntemini geçersiz kılarak LoadCustomConfiguration öğesinin altına <add> alabilirsiniz.

Oluşturucular

Name Description
SessionSecurityTokenHandler()

Varsayılan tanımlama bilgisi dönüşümlerini ve belirteç ömrünü kullanan sınıfın yeni bir örneğini SessionSecurityTokenHandler başlatır.

SessionSecurityTokenHandler(ReadOnlyCollection<CookieTransform>, TimeSpan)

Belirtilen tanımlama bilgisi dönüşümlerini ve belirteç ömrünü kullanan sınıfının yeni bir örneğini SessionSecurityTokenHandler başlatır.

SessionSecurityTokenHandler(ReadOnlyCollection<CookieTransform>)

Belirtilen tanımlama bilgisi dönüşümlerini kullanan sınıfının yeni bir örneğini SessionSecurityTokenHandler başlatır.

Alanlar

Name Description
DefaultCookieTransforms

Tanımlama bilgilerine DeflateCookieTransform uygulanacak varsayılan dönüşümlerin listesini içeren salt okunur koleksiyon ve ProtectedDataCookieTransform.

DefaultLifetime

Tanımlama bilgileri için varsayılan yaşam süresi olan on saati belirten sabit.

Özellikler

Name Description
CanValidateToken

Bu işleyicinin türünde SessionSecurityTokenbelirteç doğrulamayı destekleyip desteklemediğini gösteren bir değer alır.

CanWriteToken

Bu işleyicinin türünde SessionSecurityTokenbelirteçler yazıp yazamayacağını gösteren bir değer alır.

Configuration

Geçerli örnek için yapılandırma sağlayan nesneyi alır veya ayarlar SecurityTokenHandlerConfiguration .

(Devralındığı yer: SecurityTokenHandler)
ContainingCollection

Geçerli örneği içeren belirteç işleyici koleksiyonunu alır.

(Devralındığı yer: SecurityTokenHandler)
CookieElementName

Tanımlama bilgisi öğesinin adını alır.

CookieNamespace

Tanımlama bilgisi öğesinin ad alanını alır.

DefaultTokenLifetime

Varsayılan belirteç ömrünü alır.

TokenLifetime

Belirteç ömrünü alır veya ayarlar.

TokenType

Bu işleyicinin işlediği belirteçlerin türünü alır.

Transforms

Tanımlama bilgisine uygulanacak dönüşümleri alır.

Yöntemler

Name Description
ApplyTransforms(Byte[], Boolean)

Özelliği tarafından Transforms belirtilen dönüştürmeleri belirtilen tanımlama bilgisini kodlamak veya kodunu çözmek için uygular.

CanReadKeyIdentifierClause(XmlReader)

Belirtilen XML okuyucusu tarafından başvuruda bulunılan XML öğesinin bu örnek tarafından seri durumdan çıkarılabilen bir anahtar tanımlayıcı yan tümcesi olup olmadığını gösteren bir değer döndürür.

(Devralındığı yer: SecurityTokenHandler)
CanReadToken(String)

Belirtilen dizenin bu örnek tarafından işlenen türün belirteci olarak seri durumdan çıkarılıp çıkarılamayacağını gösteren bir değer döndürür.

(Devralındığı yer: SecurityTokenHandler)
CanReadToken(XmlReader)

Okuyucunun bir öğeye konumlandırılıp konumlandırılmadığını gösteren bir <wsc:SecurityContextToken> değer döndürür.

CanWriteKeyIdentifierClause(SecurityKeyIdentifierClause)

Belirtilen anahtar tanımlayıcı yan tümcesinin bu örnek tarafından serileştirilip serileştirilemeyeceğini gösteren bir değer döndürür.

(Devralındığı yer: SecurityTokenHandler)
CreateSecurityTokenReference(SecurityToken, Boolean)

Türetilmiş bir sınıfta geçersiz kılındığında, bu sınıf tarafından işlenen belirteçler için güvenlik belirteci başvurusu oluşturur. Bu yöntem genellikle bir güvenlik belirteci hizmeti (STS) tarafından çağrılır.

(Devralındığı yer: SecurityTokenHandler)
CreateSessionSecurityToken(ClaimsPrincipal, String, String, DateTime, DateTime)

Belirtecin geçerli olduğu belirtilen talep sorumlusunu ve zaman aralığını temel alan bir SessionSecurityToken oluşturur.

CreateToken(SecurityTokenDescriptor)

Belirtilen belirteç tanımlayıcısını temel alan bir güvenlik belirteci oluşturur.

DetectReplayedToken(SecurityToken)

Türetilmiş bir sınıfta geçersiz kılındığında, belirtilen belirteç yeniden yürütülüyor olarak algılanırsa bir özel durum oluşturur.

(Devralındığı yer: SecurityTokenHandler)
Equals(Object)

Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler.

(Devralındığı yer: Object)
GetHashCode()

Varsayılan karma işlevi işlevi görür.

(Devralındığı yer: Object)
GetTokenTypeIdentifiers()

Bu işleyici tarafından işlenebilen belirteç türleri için belirteç türü URI'lerini alır.

GetType()

Geçerli örneğin Type alır.

(Devralındığı yer: Object)
LoadCustomConfiguration(XmlNodeList)

XML'den özel yapılandırma yükler.

MemberwiseClone()

Geçerli Objectbasit bir kopyasını oluşturur.

(Devralındığı yer: Object)
ReadKeyIdentifierClause(XmlReader)

Türetilmiş bir sınıfta geçersiz kılındığında, belirtilen XML okuyucusu tarafından başvuruda bulunan XML'nin seri durumdan çıkarılarak türetilen sınıf tarafından işlenen bir belirtece başvuran bir anahtar tanımlayıcı yan tümcesi kullanılır.

(Devralındığı yer: SecurityTokenHandler)
ReadToken(Byte[], SecurityTokenResolver)

Belirtilen belirteç çözümleyicisini SessionSecurityToken kullanarak bayt akışından öğesini okur.

ReadToken(String)

Türetilmiş bir sınıfta geçersiz kılındığında, belirtilen dizeyi türetilmiş sınıf tarafından işlenen türün belirtecine seri durumdan çıkar.

(Devralındığı yer: SecurityTokenHandler)
ReadToken(XmlReader, SecurityTokenResolver)

SessionSecurityToken Belirtilen XML okuyucuyu ve belirteç çözümleyicisini kullanarak öğesini okur.

ReadToken(XmlReader)

Belirtilen XML okuyucuyu kullanarak öğesini SessionSecurityToken okur.

SetTransforms(IEnumerable<CookieTransform>)

Tanımlama bilgilerine uygulanacak dönüşümleri ayarlar.

ToString()

Geçerli nesneyi temsil eden bir dize döndürür.

(Devralındığı yer: Object)
TraceTokenValidationFailure(SecurityToken, String)

İzleme etkinleştirildiğinde güvenlik belirteçlerinin doğrulanması sırasında hata olayını izler.

(Devralındığı yer: SecurityTokenHandler)
TraceTokenValidationSuccess(SecurityToken)

İzleme etkinleştirildiğinde güvenlik belirteçlerinin başarılı bir şekilde doğrulanması olayını izler.

(Devralındığı yer: SecurityTokenHandler)
ValidateSession(SessionSecurityToken)

Belirtilen belirteçle ilişkili oturumun hala geçerli olup olmadığını belirler. Geçerlilik, belirtilen belirtecin ve ValidTo özellikleri denetlenerek ValidFrom belirlenir. Oturum artık geçerli değilse bir özel durum oluşturulur.

ValidateToken(SecurityToken)

Belirtilen belirteci doğrular ve taleplerini döndürür.

ValidateToken(SessionSecurityToken, String)

Belirtilen oturum belirtecini doğrular ve taleplerini döndürür.

WriteKeyIdentifierClause(XmlWriter, SecurityKeyIdentifierClause)

Türetilmiş bir sınıfta geçersiz kılındığında, belirtilen anahtar tanımlayıcı yan tümcesini XML için serileştirir. Anahtar tanımlayıcı yan tümcesi, türetilmiş sınıf tarafından desteklenen türde olmalıdır.

(Devralındığı yer: SecurityTokenHandler)
WriteToken(SecurityToken)

Türetilmiş bir sınıfta geçersiz kılındığında, belirtilen güvenlik belirtecini bir dizeye serileştirir. Belirteç, türetilmiş sınıf tarafından işlenen türden olmalıdır.

(Devralındığı yer: SecurityTokenHandler)
WriteToken(SessionSecurityToken)

Belirtilen belirteci bir bayt dizisine serileştirir.

WriteToken(XmlWriter, SecurityToken)

Belirtilen XML yazıcısını kullanarak belirtilen belirteci serileştirir.

Şunlara uygulanır

Ayrıca bkz.