SiteIdentityPermission Classe

Definizione

Definisce l'autorizzazione di identità per il sito Web dal quale ha origine il codice.Defines the identity permission for the Web site from which the code originates. Questa classe non può essere ereditata.This class cannot be inherited.

public ref class SiteIdentityPermission sealed : System::Security::CodeAccessPermission
[System.Runtime.InteropServices.ComVisible(true)]
[System.Serializable]
public sealed class SiteIdentityPermission : System.Security.CodeAccessPermission
type SiteIdentityPermission = class
    inherit CodeAccessPermission
Public NotInheritable Class SiteIdentityPermission
Inherits CodeAccessPermission
Ereditarietà
SiteIdentityPermission
Attributi

Commenti

Utilizzando questa classe, è possibile garantire che i chiamanti si trovino da un sito Web specifico.Using this class, it is possible to ensure that callers are from a specific Web site. L'identità del sito viene definita solo per il codice dagli URL con i protocolli HTTP, HTTPS e FTP.Site identity is only defined for code from URLs with the protocols of HTTP, HTTPS, and FTP. Un sito è la stringa tra il "//" dopo il protocollo di un URL e il seguente "/", se presente, ad esempio, www.fourthcoffee.com nell'URL. http://www.fourthcoffee.com/process/grind.htmA site is the string between the "//" after the protocol of a URL and the following "/", if present, for example, www.fourthcoffee.com in the URL http://www.fourthcoffee.com/process/grind.htm. Vengono esclusi i numeri di porta.This excludes port numbers. Se un URL specificato è http://www.fourthcoffee.com:8000/, il sito è www.fourthcoffee.com, non www.fourthcoffee.com:8000.If a given URL is http://www.fourthcoffee.com:8000/, the site is www.fourthcoffee.com, not www.fourthcoffee.com:8000.

È possibile trovare una corrispondenza esatta tra i siti oppure un prefisso (*"") in corrispondenza del delimitatore del punto.Sites can be matched exactly, or by a wildcard ("*") prefix at the dot delimiter. Ad esempio, la stringa *.fourthcoffee.com del nome del sito corrisponde fourthcoffee.com a www.fourthcoffee.come.For example, the site name string *.fourthcoffee.com matches fourthcoffee.com as well as www.fourthcoffee.com. Senza un carattere jolly, il nome del sito deve essere una corrispondenza precisa.Without a wildcard, the site name must be a precise match. La stringa * del nome del sito corrisponderà a qualsiasi sito, ma non corrisponderà al codice privo di evidenza del sito.The site name string * will match any site, but will not match code that has no site evidence.

Importante

A partire da .NET Framework 4.NET Framework 4, le autorizzazioni di identità non vengono utilizzate.Starting with the .NET Framework 4.NET Framework 4, identity permissions are not used.

Nelle versioni .NET Framework 1,0 e 1,1, le richieste sulle autorizzazioni di identità sono valide, anche quando l'assembly chiamante è completamente attendibile.In the .NET Framework versions 1.0 and 1.1, demands on the identity permissions are effective, even when the calling assembly is fully trusted. Ciò significa che, anche se l'assembly chiamante dispone di attendibilità totale, la richiesta di un'autorizzazione di identità ha esito negativo se l'assembly non soddisfa i criteri richiesti.That is, although the calling assembly has full trust, a demand for an identity permission fails if the assembly does not meet the demanded criteria. A partire dalla versione .NET Framework 2,0, le richieste di autorizzazioni di identità sono inefficaci se l'assembly chiamante dispone di attendibilità totale.Starting with the .NET Framework version 2.0, demands for identity permissions are ineffective if the calling assembly has full trust. In questo modo si garantisce la coerenza per tutte le autorizzazioni, eliminando il trattamento delle autorizzazioni di identità come caso speciale.This assures consistency for all permissions, eliminating the treatment of identity permissions as a special case.

Nota

Nelle versioni del .NET Framework prima .NET Framework 4.NET Framework 4di, è possibile utilizzare il CodeAccessPermission.Deny metodo per impedire l'accesso accidentale alle risorse di sistema da parte del codice attendibile.In versions of the .NET Framework before the .NET Framework 4.NET Framework 4, you could use the CodeAccessPermission.Deny method to prevent inadvertent access to system resources by trusted code. Denyè ora obsoleto e l'accesso alle risorse è ora determinato esclusivamente dal set di autorizzazioni concesso per un assembly.Deny is now obsolete, and access to resources is now determined solely by the granted permission set for an assembly. Per limitare l'accesso ai file, è necessario eseguire codice parzialmente attendibile in un ambiente sandbox e assegnare le autorizzazioni solo alle risorse a cui il codice può accedere.To limit access to files, you must run partially trusted code in a sandbox and assign it permissions only to resources that the code is allowed to access. Per informazioni sull'esecuzione di un'applicazione in una sandbox, vedere Procedura: Eseguire codice parzialmente attendibile in un oggetto sandbox.For information about running an application in a sandbox, see How to: Run Partially Trusted Code in a Sandbox.

Nota

Nelle versioni .NET Framework 1,0 e 1,1, le autorizzazioni di identità non possono Unrestricted avere un valore dello stato di autorizzazione.In the .NET Framework versions 1.0 and 1.1, identity permissions cannot have an Unrestricted permission state value. A partire da .NET Framework versione 2,0, le autorizzazioni di identità possono avere qualsiasi valore dello stato di autorizzazione.Starting with the .NET Framework version 2.0, identity permissions can have any permission state value. Ciò significa che in 2,0 e versioni successive le autorizzazioni di identità hanno lo stesso comportamento delle autorizzazioni che implementano l' IUnrestrictedPermission interfaccia.This means that in 2.0 and later versions, identity permissions have the same behavior as permissions that implement the IUnrestrictedPermission interface.

Costruttori

SiteIdentityPermission(PermissionState)

Inizializza una nuova istanza della classe SiteIdentityPermission con l'oggetto PermissionState specificato.Initializes a new instance of the SiteIdentityPermission class with the specified PermissionState.

SiteIdentityPermission(String)

Inizializza una nuova istanza della classe SiteIdentityPermission per rappresentare l'identità del sito specificato.Initializes a new instance of the SiteIdentityPermission class to represent the specified site identity.

Proprietà

Site

Ottiene o imposta il sito corrente.Gets or sets the current site.

Metodi

Assert()

Dichiara che il codice chiamante può accedere alla risorsa protetta da una richiesta di autorizzazione tramite il codice che chiama il metodo, anche se ai chiamanti più in alto nello stack non è stata concessa l'autorizzazione per accedere alla risorsa.Declares that the calling code can access the resource protected by a permission demand through the code that calls this method, even if callers higher in the stack have not been granted permission to access the resource. L'uso di Assert() può creare problemi di sicurezza.Using Assert() can create security issues.

(Ereditato da CodeAccessPermission)
Copy()

Crea e restituisce una copia identica dell'autorizzazione corrente.Creates and returns an identical copy of the current permission.

Demand()

Forza un oggetto SecurityException in fase di esecuzione se tutti i chiamanti in posizioni superiori nello stack di chiamate non hanno l'autorizzazione specificata dall'istanza corrente.Forces a SecurityException at run time if all callers higher in the call stack have not been granted the permission specified by the current instance.

(Ereditato da CodeAccessPermission)
Deny()

Impedisce ai chiamanti in posizione più elevata nello stack di chiamate di usare il codice che chiama questo metodo per accedere alla risorsa specificata dall'istanza corrente.Prevents callers higher in the call stack from using the code that calls this method to access the resource specified by the current instance.

(Ereditato da CodeAccessPermission)
Equals(Object)

Consente di determinare se l'oggetto CodeAccessPermission specificato è uguale all'oggetto CodeAccessPermission corrente.Determines whether the specified CodeAccessPermission object is equal to the current CodeAccessPermission.

(Ereditato da CodeAccessPermission)
FromXml(SecurityElement)

Ricostruisce un'autorizzazione con uno stato specificato da una codifica XML.Reconstructs a permission with a specified state from an XML encoding.

GetHashCode()

Ottiene un codice hash per l'oggetto CodeAccessPermission adatto per l'uso in algoritmi di hash e in strutture di dati, come una tabella hash.Gets a hash code for the CodeAccessPermission object that is suitable for use in hashing algorithms and data structures such as a hash table.

(Ereditato da CodeAccessPermission)
GetType()

Ottiene l'oggetto Type dell'istanza corrente.Gets the Type of the current instance.

(Ereditato da Object)
Intersect(IPermission)

Crea e restituisce un'autorizzazione che rappresenta l'intersezione tra l'autorizzazione corrente e quella specificata.Creates and returns a permission that is the intersection of the current permission and the specified permission.

IsSubsetOf(IPermission)

Determina se l'autorizzazione corrente è un subset di quella specificata.Determines whether the current permission is a subset of the specified permission.

MemberwiseClone()

Crea una copia superficiale dell'oggetto Object corrente.Creates a shallow copy of the current Object.

(Ereditato da Object)
PermitOnly()

Impedisce ai chiamanti in posizione più elevata nello stack di chiamate di usare il codice che chiama questo metodo per accedere a tutte le risorse eccetto quella specificata dall'istanza corrente.Prevents callers higher in the call stack from using the code that calls this method to access all resources except for the resource specified by the current instance.

(Ereditato da CodeAccessPermission)
ToString()

Crea e restituisce una rappresentazione in forma di stringa dell'oggetto di autorizzazione corrente.Creates and returns a string representation of the current permission object.

(Ereditato da CodeAccessPermission)
ToXml()

Crea una codifica XML dell'autorizzazione e del relativo stato corrente.Creates an XML encoding of the permission and its current state.

Union(IPermission)

Crea un'autorizzazione che rappresenta l'unione dell'autorizzazione corrente e di quella specificata.Creates a permission that is the union of the current permission and the specified permission.

Implementazioni dell'interfaccia esplicita

IPermission.Demand() (Ereditato da CodeAccessPermission)
IStackWalk.Assert() (Ereditato da CodeAccessPermission)
IStackWalk.Demand() (Ereditato da CodeAccessPermission)
IStackWalk.Deny() (Ereditato da CodeAccessPermission)
IStackWalk.PermitOnly() (Ereditato da CodeAccessPermission)

Si applica a

Vedi anche