Claim Sınıf
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Bir talebi temsil eder.
public ref class Claim
public class Claim
[System.Serializable]
public class Claim
type Claim = class
[<System.Serializable>]
type Claim = class
Public Class Claim
- Devralma
-
Claim
- Öznitelikler
Örnekler
Aşağıdaki örnek, BIR HTTP isteği gerçekleştiren kimliği doğrulanmış kullanıcıyla ilişkili talepleri ayıklar ve bunları HTTP yanıtına yazar. Geçerli kullanıcı' dan HttpContext olarak ClaimsPrincipal okunur ve talepler ondan okunur. Talepler daha sonra nesnesine HttpResponse yazılır.
ClaimsPrincipal principal = HttpContext.Current.User as ClaimsPrincipal;
if (null != principal)
{
foreach (Claim claim in principal.Claims)
{
Response.Write("CLAIM TYPE: " + claim.Type + "; CLAIM VALUE: " + claim.Value + "</br>");
}
}
Açıklamalar
Talep, verenin bir konuyla ilgili bildirimidir. Talepler, kimlik doğrulama ve yetkilendirme işlemleri bağlamında yararlı olan konunun özniteliklerini temsil eder. Konular ve verenler, kimlik senaryosunun parçası olan varlıklardır. Bir konunun bazı tipik örnekleri şunlardır: kullanıcı, uygulama veya hizmet, cihaz veya bilgisayar. Verene bazı tipik örnekler şunlardır: işletim sistemi, uygulama, hizmet, rol sağlayıcısı, kimlik sağlayıcısı veya federasyon sağlayıcısı. Veren, genellikle bir Güvenlik Belirteci Hizmeti (STS) aracılığıyla güvenlik belirteçleri vererek talepleri teslim eder. (WIF'de, sınıfından SecurityTokenService türeterek bir STS oluşturabilirsiniz.) Bazen, bir verenden alınan taleplerin koleksiyonu doğrudan kaynakta depolanan konu öznitelikleri tarafından genişletilebilir. Bir talep, yetkilendirme işlemi sırasında verilere ve diğer güvenli kaynaklara erişim haklarını belirlemek için değerlendirilebilir ve bir konu hakkında kimlik doğrulaması kararları almak veya ifade etmek için de kullanılabilir.
.NET 4.5 sürümünden başlayarak, talep tabanlı kimlik uygulayan Windows Identity Foundation (WIF) sınıfları .NET Framework tamamen tümleştirilmiştir. Talep kavramı sınıfı tarafından Claim uygulanır.
Sınıfın önemli özellikleri Claim aşağıda açıklanmaktadır:
Type özelliği, taleple ilgili semantik bilgileri içeren bir dizedir (genellikle bir URI' dir; size talebin değerinin ne anlama geldiğini söyler. Örneğin, talep türü GivenName (
"http://schemas.xmlsoap.org/ws/2005/05/identity/claims/givenname"
) olan bir talep, kullanıcının adını temsil eder. özelliğinin Type değeri, sınıfında tanımlanan ClaimTypes iyi bilinen talep türlerinden biri olabilir veya veren tarafından tanımlanan rastgele bir URI olabilir. Örneğin, "urn:spendinglimit" talep türü, verenin iş bağlamında anlamlı olan bir kullanıcı özniteliğini temsil edebilir.özelliği, Value talebin değerini içerir. Bağımlılıkları azaltmak ve yönetimi basitleştirmek için WIF'de bir talebin değeri yalnızca dize olarak temsil edilir. Daha karmaşık değer türleri için, değerin bir dizede nasıl seri hale getirileceğini ve seri durumdan çıkarıldığını belirtmek için standart XML şema türlerini kullanmanız önerilir.
özelliği, ValueType değerin tür bilgilerini tanımlayan bir dize içerir. Bu özellik, değerin biçimini anlamak ve seri durumdan çıkarma hakkında bilgi sağlamak için kullanılmalıdır. Çözümünüz karmaşık değer türleri gerektiriyorsa, özelliğin bir dizede ValueType nasıl Value seri hale getirileceğini ve seri durumdan çıkarıldığını belirtmek için özelliğinde standart XML şema türlerini kullanmanız önerilir.
Subject özelliği, talebin konusunu temsil eden bir ClaimsIdentity nesnedir. Talebin konusu, talebin onaylandığı varlıktır (genellikle bir kaynağa erişim isteyen kullanıcıdır). ClaimsIdentity, özellikleri arasında, bir veya daha fazla veren tarafından kanıtlandığı gibi konunun özelliklerini ve özniteliklerini açıklayan bir talep koleksiyonu içerir.
özelliği, Issuer talebi veren varlığın adını içerir. Bir talebi veren, WIF'de, veren adı kayıt defteri tarafından tutulan iyi bilinen verenler listesinden alınan bir adı içeren bir dizeyle temsil edilir. Veren adı kayıt defteri, sınıfından türetilen bir sınıfın IssuerNameRegistry örneğidir. Veren adı kayıt defteri, ilgili veren tarafından üretilen belirteçlerin imzalarını doğrulamak için gereken şifreleme malzemesiyle bir anımsatıcı adı ilişkilendirir. Örneğin, ConfigurationBasedIssuerNameRegistry .NET 4.5 ile birlikte kullanıma sunulan sınıfı, her verenin anımsatıcı adını ilgili X.509 sertifikasıyla ilişkilendirir. İyi bilinen verenlerin listesi genellikle başlangıç zamanında verenin adı kayıt defteri tarafından oluşturulur. tarafından ConfigurationBasedIssuerNameRegistry kullanılan liste, uygulama yapılandırma dosyasında belirtilir.
özelliği, OriginalIssuer talebi ilk olarak veren varlığın adını içerir. Bu özellik, bir talebin istemci tarafından RP uygulamasına sunulmadan önce birden çok verenden geçebileceği senaryoları kolaylaştırmak için tasarlanmıştır; federasyon senaryoları gibi. Talebi ilk olarak veren varlığı belirlemek için özelliğini inceleyebilirsiniz OriginalIssuer . Ad, özelliğinde olduğu gibi veren adı kayıt defteri tarafından tutulan iyi bilinen verenler listesinden Issuer alınır.
Oluşturucular
Claim(BinaryReader) |
Belirtilen BinaryReaderile bir örneğini Claim başlatır. |
Claim(BinaryReader, ClaimsIdentity) |
Belirtilen okuyucu ve konu ile sınıfının yeni bir örneğini Claim başlatır. |
Claim(Claim) |
Claim sınıfının yeni bir örneğini başlatır. |
Claim(Claim, ClaimsIdentity) |
Belirtilen güvenlik talebi ve konu ile sınıfının yeni bir örneğini Claim başlatır. |
Claim(String, String) |
Belirtilen talep türü ve değeriyle sınıfının yeni bir örneğini Claim başlatır. |
Claim(String, String, String) |
Belirtilen talep türü, değer ve değer türüyle sınıfının yeni bir örneğini Claim başlatır. |
Claim(String, String, String, String) |
Belirtilen talep türü, değer, değer türü ve veren ile sınıfının yeni bir örneğini Claim başlatır. |
Claim(String, String, String, String, String) |
Belirtilen talep türü, değer, değer türü, veren ve özgün veren ile sınıfının yeni bir örneğini Claim başlatır. |
Claim(String, String, String, String, String, ClaimsIdentity) |
Belirtilen talep türü, değer, değer türü, veren, özgün veren ve konu ile sınıfının yeni bir örneğini Claim başlatır. |
Özellikler
CustomSerializationData |
Türetilmiş bir tür tarafından sağlanan ek verileri içerir. |
Issuer |
Talebi vereni alır. |
OriginalIssuer |
Talebin özgün verenini alır. |
Properties |
Bu taleple ilişkilendirilmiş ek özellikleri içeren bir sözlük alır. |
Subject |
Talebin konusunu alır. |
Type |
Talebin talep türünü alır. |
Value |
Talebin değerini alır. |
ValueType |
Talebin değer türünü alır. |
Yöntemler
Clone() |
Bu nesneden kopyalanan yeni Claim bir nesne döndürür. Yeni talebin konusu yok. |
Clone(ClaimsIdentity) |
Bu nesneden kopyalanan yeni Claim bir nesne döndürür. Yeni talebin konusu belirtilen ClaimsIdentity olarak ayarlanır. |
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) |
GetType() |
Type Geçerli örneğini alır. (Devralındığı yer: Object) |
MemberwiseClone() |
Geçerli Objectöğesinin sığ bir kopyasını oluşturur. (Devralındığı yer: Object) |
ToString() |
Bu Claim nesnenin dize gösterimini döndürür. |
WriteTo(BinaryWriter) |
Bunu Claim yazara yazar. |
WriteTo(BinaryWriter, Byte[]) |
Bunu Claim yazara yazar. |