PrincipalPermission 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.
Dikkat
Code Access Security is not supported or honored by the runtime.
Hem bildirim temelli hem de kesinlik temelli güvenlik eylemleri için tanımlanan dil yapılarını kullanarak etkin sorumluya (bkz IPrincipal. ) karşı denetimlere izin verir. Bu sınıf devralınamaz.
public ref class PrincipalPermission sealed : System::Security::IPermission, System::Security::Permissions::IUnrestrictedPermission
[System.Obsolete("Code Access Security is not supported or honored by the runtime.", DiagnosticId="SYSLIB0003", UrlFormat="https://aka.ms/dotnet-warnings/{0}")]
public sealed class PrincipalPermission : System.Security.IPermission, System.Security.Permissions.IUnrestrictedPermission
[System.Serializable]
public sealed class PrincipalPermission : System.Security.IPermission, System.Security.Permissions.IUnrestrictedPermission
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public sealed class PrincipalPermission : System.Security.IPermission, System.Security.Permissions.IUnrestrictedPermission
public sealed class PrincipalPermission : System.Security.IPermission, System.Security.Permissions.IUnrestrictedPermission
[<System.Obsolete("Code Access Security is not supported or honored by the runtime.", DiagnosticId="SYSLIB0003", UrlFormat="https://aka.ms/dotnet-warnings/{0}")>]
type PrincipalPermission = class
interface IPermission
interface ISecurityEncodable
interface IUnrestrictedPermission
[<System.Serializable>]
type PrincipalPermission = class
interface IPermission
interface IUnrestrictedPermission
interface ISecurityEncodable
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type PrincipalPermission = class
interface IPermission
interface IUnrestrictedPermission
interface ISecurityEncodable
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type PrincipalPermission = class
interface IPermission
interface ISecurityEncodable
interface IUnrestrictedPermission
type PrincipalPermission = class
interface IPermission
interface ISecurityEncodable
interface IUnrestrictedPermission
Public NotInheritable Class PrincipalPermission
Implements IPermission, IUnrestrictedPermission
- Devralma
-
PrincipalPermission
- Öznitelikler
- Uygulamalar
Açıklamalar
Caution
Kod Erişim Güvenliği (CAS), .NET Framework ve .NET'in tüm sürümlerinde kullanım dışı bırakılmıştır. .NET'in son sürümleri CAS ek açıklamalarını dikkate almaz ve CAS ile ilgili API'ler kullanılırsa hata üretir. Geliştiriciler, güvenlik görevlerini yerine getirmek için alternatif yöntemler aramalıdır.
Oluşturucuya kimlik bilgileri (kullanıcı adı ve rol) geçirilerek, PrincipalPermission etkin sorumlunun kimliğinin bu bilgilerle eşleşmesini talep etmek için kullanılabilir.
Etkin IPrincipal ve ilişkili IIdentityile eşleştirmek için hem belirtilen kimlik hem de rol eşleşmelidir. Kimlik dizesi kullanılırsa null , herhangi bir kimlikle eşleşme isteği olarak yorumlanır. Rol dizesinin null kullanımı herhangi bir rolle eşleşecektir. Etkiyle, veya nullname için role parametresi geçirilmesi PrincipalPermission herhangi bir IPrincipaliçindeki kimlik ve rollerle eşleşecektir. Yalnızca kimliği doğrulanmış veya kimliği doğrulanmamış bir varlığı temsil edip etmediğini PrincipalPermission belirleyen bir de oluşturmak IIdentity mümkündür. Bu durumda ve namerole yoksayılır.
Diğer izinlerin çoğundan farklı olarak genişletmez PrincipalPermissionCodeAccessPermission. Ancak arabirimini IPermission uygular. Bunun nedeni PrincipalPermission kod erişim izni olmamasıdır; başka bir ifadeyle, yürütülen derlemenin kimliğine göre verilmemesidir. Bunun yerine, kodun geçerli kullanıcı kimliğine yönelik eylemleri (Demand, Union, Intersectvb.) kod erişimi ve kod kimliği izinleri için gerçekleştirilen eylemlerle tutarlı bir şekilde gerçekleştirmesine olanak tanır.
Important
Asıl izin talebi öncesinde, geçerli uygulama etki alanının asıl ilkesini numaralandırma değerine WindowsPrincipalayarlamak gerekir. Varsayılan olarak, asıl ilke olarak UnauthenticatedPrincipalayarlanır. Asıl ilkeyi olarak WindowsPrincipalayarlamazsanız, asıl izin talebi başarısız olur. Asıl izin talep edilmeden önce aşağıdaki kod yürütülmelidir:
AppDomain.CurrentDomain.SetPrincipalPolicy(PrincipalPolicy.WindowsPrincipal).
Oluşturucular
| Name | Description |
|---|---|
| PrincipalPermission(PermissionState) |
Geçersiz.
belirtilen PrincipalPermissionile sınıfının yeni bir örneğini PermissionState başlatır. |
| PrincipalPermission(String, String, Boolean) |
Geçersiz.
Belirtilen PrincipalPermission, |
| PrincipalPermission(String, String) |
Geçersiz.
Belirtilen PrincipalPermission ve |
Yöntemler
| Name | Description |
|---|---|
| Copy() |
Geçersiz.
Geçerli iznin özdeş bir kopyasını oluşturur ve döndürür. |
| Demand() |
Geçersiz.
Çalışma zamanında geçerli sorumlunun geçerli izin tarafından belirtilen sorumluyla eşleşip eşleşmediğini belirler. |
| Equals(Object) |
Geçersiz.
Belirtilen PrincipalPermission nesnenin geçerli PrincipalPermissionöğesine eşit olup olmadığını belirler. |
| Equals(Object) |
Geçersiz.
Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler. (Devralındığı yer: Object) |
| FromXml(SecurityElement) |
Geçersiz.
XML kodlamasından belirtilen duruma sahip bir izni yeniden oluşturur. |
| GetHashCode() |
Geçersiz.
Karma algoritmalarda ve karma tablo gibi veri yapılarında kullanıma uygun nesne için PrincipalPermission bir karma kodu alır. |
| GetHashCode() |
Geçersiz.
Varsayılan karma işlevi işlevi görür. (Devralındığı yer: Object) |
| GetType() |
Geçersiz.
Geçerli örneğin Type alır. (Devralındığı yer: Object) |
| Intersect(IPermission) |
Geçersiz.
Geçerli iznin ve belirtilen iznin kesişimi olan bir izin oluşturur ve döndürür. |
| IsSubsetOf(IPermission) |
Geçersiz.
Geçerli iznin belirtilen iznin bir alt kümesi olup olmadığını belirler. |
| IsUnrestricted() |
Geçersiz.
Geçerli iznin kısıtlanıp kısıtlanmadığını belirten bir değer döndürür. |
| MemberwiseClone() |
Geçersiz.
Geçerli Objectbasit bir kopyasını oluşturur. (Devralındığı yer: Object) |
| ToString() |
Geçersiz.
Geçerli izni temsil eden bir dize oluşturur ve döndürür. |
| ToXml() |
Geçersiz.
İznin ve geçerli durumunun XML kodlamasını oluşturur. |
| Union(IPermission) |
Geçersiz.
Geçerli iznin ve belirtilen iznin birleşimi olan bir izin oluşturur. |