PrincipalPermission Classe
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Attenzione
Code Access Security is not supported or honored by the runtime.
Consente controlli sull'entità attiva (vedere IPrincipal) usando i costrutti di linguaggio definiti per le azioni di sicurezza dichiarative e imperative. La classe non può essere ereditata.
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
- Ereditarietà
-
PrincipalPermission
- Attributi
- Implementazioni
Commenti
Attenzione
La sicurezza dall'accesso al codice è stata deprecata in tutte le versioni di .NET Framework e .NET. Le versioni recenti di .NET non rispettano le annotazioni CAS e generano errori se vengono usate API correlate a CAS. Gli sviluppatori devono cercare mezzi alternativi per eseguire attività di sicurezza.
Passando le informazioni sull'identità (nome utente e ruolo) al costruttore, PrincipalPermission è possibile usare per richiedere che l'identità dell'entità attiva corrisponda a queste informazioni.
Per trovare la corrispondenza con l'oggetto attivo IPrincipal e associato IIdentity, è necessario che l'identità e il ruolo specificati corrispondano. Se null viene usata una stringa di identità, viene interpretata come una richiesta di corrispondenza con qualsiasi identità. L'uso della stringa di null ruolo corrisponderà a qualsiasi ruolo. In modo implicito, il passaggio del null parametro per name o role a corrisponderà all'identità e ai PrincipalPermission ruoli in qualsiasi IPrincipal. È anche possibile costruire un oggetto PrincipalPermission che determina solo se rappresenta un'entità IIdentity autenticata o non autenticata. In questo caso, name e role vengono ignorati.
A differenza della maggior parte delle altre autorizzazioni, PrincipalPermission non estende CodeAccessPermission. Tuttavia, implementa l'interfaccia IPermission . Questo perché PrincipalPermission non è un'autorizzazione di accesso al codice, ovvero non viene concessa in base all'identità dell'assembly in esecuzione. Consente invece al codice di eseguire azioni (Demand, Union, Intersecte così via) rispetto all'identità utente corrente in modo coerente con il modo in cui tali azioni vengono eseguite per l'accesso al codice e le autorizzazioni di identità del codice.
Importante
Prima di una richiesta di autorizzazione dell'entità, è necessario impostare il criterio principale del dominio applicazione corrente sul valore WindowsPrincipaldi enumerazione . Per impostazione predefinita, il criterio principale è impostato su UnauthenticatedPrincipal. Se non si imposta il criterio principale su WindowsPrincipal, una richiesta di autorizzazione principale avrà esito negativo. È necessario eseguire il codice seguente prima che venga richiesta l'autorizzazione principale:
AppDomain.CurrentDomain.SetPrincipalPolicy(PrincipalPolicy.WindowsPrincipal).
Costruttori
| Nome | Descrizione |
|---|---|
| PrincipalPermission(PermissionState) |
Obsoleti.
Inizializza una nuova istanza della PrincipalPermission classe con l'oggetto specificato PermissionState. |
| PrincipalPermission(String, String, Boolean) |
Obsoleti.
Inizializza una nuova istanza della PrincipalPermission classe per lo stato di autenticazione , |
| PrincipalPermission(String, String) |
Obsoleti.
Inizializza una nuova istanza della PrincipalPermission classe per l'oggetto e |
Metodi
| Nome | Descrizione |
|---|---|
| Copy() |
Obsoleti.
Crea e restituisce una copia identica dell'autorizzazione corrente. |
| Demand() |
Obsoleti.
Determina in fase di esecuzione se l'entità corrente corrisponde all'entità specificata dall'autorizzazione corrente. |
| Equals(Object) |
Obsoleti.
Determina se l'oggetto specificato PrincipalPermission è uguale all'oggetto corrente PrincipalPermission. |
| Equals(Object) |
Obsoleti.
Determina se l'oggetto specificato è uguale all'oggetto corrente. (Ereditato da Object) |
| FromXml(SecurityElement) |
Obsoleti.
Ricostruisce un'autorizzazione con uno stato specificato da una codifica XML. |
| GetHashCode() |
Obsoleti.
Ottiene un codice hash per l'oggetto adatto per l'uso PrincipalPermission negli algoritmi di hash e nelle strutture di dati, ad esempio una tabella hash. |
| GetHashCode() |
Obsoleti.
Funge da funzione hash predefinita. (Ereditato da Object) |
| GetType() |
Obsoleti.
Ottiene il Type dell'istanza corrente. (Ereditato da Object) |
| Intersect(IPermission) |
Obsoleti.
Crea e restituisce un'autorizzazione che rappresenta l'intersezione dell'autorizzazione corrente e l'autorizzazione specificata. |
| IsSubsetOf(IPermission) |
Obsoleti.
Determina se l'autorizzazione corrente è un subset dell'autorizzazione specificata. |
| IsUnrestricted() |
Obsoleti.
Restituisce un valore che indica se l'autorizzazione corrente è senza restrizioni. |
| MemberwiseClone() |
Obsoleti.
Crea una copia superficiale del Objectcorrente. (Ereditato da Object) |
| ToString() |
Obsoleti.
Crea e restituisce una stringa che rappresenta l'autorizzazione corrente. |
| ToXml() |
Obsoleti.
Crea una codifica XML dell'autorizzazione e del relativo stato corrente. |
| Union(IPermission) |
Obsoleti.
Crea un'autorizzazione che rappresenta l'unione dell'autorizzazione corrente e l'autorizzazione specificata. |