StrongNameIdentityPermission StrongNameIdentityPermission StrongNameIdentityPermission StrongNameIdentityPermission Class

Définition

Définit l'autorisation d'identité pour les noms forts.Defines the identity permission for strong names. Cette classe ne peut pas être héritée.This class cannot be inherited.

public ref class StrongNameIdentityPermission sealed : System::Security::CodeAccessPermission
[System.Runtime.InteropServices.ComVisible(true)]
[System.Serializable]
public sealed class StrongNameIdentityPermission : System.Security.CodeAccessPermission
type StrongNameIdentityPermission = class
    inherit CodeAccessPermission
Public NotInheritable Class StrongNameIdentityPermission
Inherits CodeAccessPermission
Héritage
StrongNameIdentityPermissionStrongNameIdentityPermissionStrongNameIdentityPermissionStrongNameIdentityPermission
Attributs

Remarques

Important

À compter de .NET Framework 4.NET Framework 4, les autorisations d’identité ne sont pas utilisées.Starting with the .NET Framework 4.NET Framework 4, identity permissions are not used.

Dans les versions de .NET Framework 1,0 et 1,1, les autorisations d’identité Unrestricted ne peuvent pas avoir de valeur d’état d’autorisation.In the .NET Framework versions 1.0 and 1.1, identity permissions cannot have an Unrestricted permission state value. Dans le .NET Framework version 2,0 et versions ultérieures, les autorisations d’identité peuvent avoir n’importe quelle valeur d’état d’autorisation.In the .NET Framework version 2.0 and later, identity permissions can have any permission state value. Cela signifie que dans la version 2,0 et les versions ultérieures, les autorisations d’identité ont le même comportement IUnrestrictedPermission que les autorisations qui implémentent l’interface.This means that in version 2.0 and later versions, identity permissions have the same behavior as permissions that implement the IUnrestrictedPermission interface. Autrement dit, une demande d’identité réussit toujours, quelle que soit l’identité de l’assembly, si la confiance totale est accordée à l’assembly.That is, a demand for an identity always succeeds, regardless of the identity of the assembly, if the assembly has been granted full trust.

Utilisez StrongNameIdentityPermission pour confirmer que le code appelant se trouve dans un assembly de code avec nom fort particulier.Use StrongNameIdentityPermission to confirm that the calling code is in a particular strong-named code assembly. Les demandes complètes StrongNameIdentityPermission de la fonction aboutissent uniquement si tous les assemblys de la pile possèdent la preuve appropriée pour répondre à la demande.Full demands for StrongNameIdentityPermission succeed only if all the assemblies in the stack have the correct evidence to satisfy the demand. Les demandes de liaison qui StrongNameIdentityPermissionAttribute utilisent l’attribut ne sont exécutées que si l’appelant immédiat possède la preuve correcte.Link demands that use the StrongNameIdentityPermissionAttribute attribute succeed only if the immediate caller has the correct evidence.

Une identité de nom fort est basée sur une clé publique de chiffrement appelée objet BLOB (Binary Large Object), qui est éventuellement combinée avec le nom et la version d’un assembly spécifique.A strong name identity is based on a cryptographic public key called a binary large object (BLOB), which is optionally combined with the name and version of a specific assembly. La clé définit un espace de noms unique et assure une vérification poussée du fait que le nom est authentique, car la définition du nom doit se trouver dans un assembly signé par la clé privée correspondante.The key defines a unique namespace and provides strong verification that the name is genuine, because the definition of the name must be in an assembly that is signed by the corresponding private key.

Notez que la validité de la clé de nom fort n’est pas dépendante d’une relation d’approbation ou d’un certificat qui est nécessairement émis pour la clé.Note that the validity of the strong name key is not dependent on a trust relationship or on any certificate necessarily being issued for the key.

Dans les versions 1,0 et 1,1 du .NET Framework, les demandes sur les autorisations d’identité sont efficaces même lorsque l’assembly appelant est entièrement fiable.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. Autrement dit, même si l’assembly appelant bénéficie d’une confiance totale, une demande d’autorisation d’identité échoue si l’assembly ne répond pas aux critères demandés.That is, even if the calling assembly has full trust, a demand for an identity permission fails if the assembly does not meet the demanded criteria. Dans le .NET Framework version 2,0 et versions ultérieures, les demandes d’autorisations d’identité sont inefficaces si l’assembly appelant bénéficie d’une confiance totale.In the .NET Framework version 2.0 and later, demands for identity permissions are ineffective if the calling assembly has full trust. Cela garantit la cohérence de toutes les autorisations et élimine le traitement des autorisations d’identité comme un cas particulier.This ensures consistency for all permissions and eliminates the treatment of identity permissions as a special case.

Pour obtenir une description complète des noms forts, consultez StrongName la page de référence.For a complete description of strong names, see the StrongName reference page. Pour plus d’informations sur les assemblys avec nom fort, consultez assemblys avec nom fort.For more information about strong-named assemblies, see Strong-Named Assemblies.

La StrongNameIdentityPermission classe est utilisée pour définir des exigences de nom fort pour accéder aux membres publics d’un type.The StrongNameIdentityPermission class is used to define strong-name requirements for accessing the public members of a type. L' StrongNameIdentityPermissionAttribute attribut peut être utilisé pour définir des exigences de nom fort au niveau de l’assembly.The StrongNameIdentityPermissionAttribute attribute can be used to define strong-name requirements at the assembly level. Dans la .NET Framework version 2,0 et versions ultérieures, vous pouvez également InternalsVisibleToAttribute utiliser l’attribut pour spécifier que tous les types non publics de cet assembly sont visibles par un autre assembly.In the .NET Framework version 2.0 and later, you can also use the InternalsVisibleToAttribute attribute to specify that all nonpublic types in that assembly are visible to another assembly. Pour plus d’informations, consultez Assemblys friend.For more information, see Friend Assemblies.

Constructeurs

StrongNameIdentityPermission(PermissionState) StrongNameIdentityPermission(PermissionState) StrongNameIdentityPermission(PermissionState) StrongNameIdentityPermission(PermissionState)

Initialise une nouvelle instance de la classe StrongNameIdentityPermission avec le PermissionState spécifié.Initializes a new instance of the StrongNameIdentityPermission class with the specified PermissionState.

StrongNameIdentityPermission(StrongNamePublicKeyBlob, String, Version) StrongNameIdentityPermission(StrongNamePublicKeyBlob, String, Version) StrongNameIdentityPermission(StrongNamePublicKeyBlob, String, Version) StrongNameIdentityPermission(StrongNamePublicKeyBlob, String, Version)

Initialise une nouvelle instance de la classe StrongNameIdentityPermission pour l'identité de nom fort spécifiée.Initializes a new instance of the StrongNameIdentityPermission class for the specified strong name identity.

Propriétés

Name Name Name Name

Obtient ou définit la portion nom simple de l'identité de nom fort.Gets or sets the simple name portion of the strong name identity.

PublicKey PublicKey PublicKey PublicKey

Obtient ou définit l'objet binaire volumineux (BLOB) de clé publique qui définit l'espace de noms pour l'identité de nom fort.Gets or sets the public key blob that defines the strong name identity namespace.

Version Version Version Version

Obtient ou définit le numéro de version de l'identité.Gets or sets the version number of the identity.

Méthodes

Assert() Assert() Assert() Assert()

Déclare que le code appelant peut accéder à la ressource protégée par une demande d’autorisation via le code qui appelle cette méthode, même si les appelants situés plus haut dans la pile n’ont pas reçu l’autorisation d’accéder à la ressource.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’utilisation de Assert() peut créer des problèmes de sécurité.Using Assert() can create security issues.

(Inherited from CodeAccessPermission)
Copy() Copy() Copy() Copy()

Crée et retourne une copie identique de l’autorisation actuelle.Creates and returns an identical copy of the current permission.

Demand() Demand() Demand() Demand()

Au moment de l'exécution, force SecurityException si tous les appelants qui sont plus hauts dans la pile des appels n'ont pas reçu l'autorisation spécifiée par l'instance actuelle.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.

(Inherited from CodeAccessPermission)
Deny() Deny() Deny() Deny()

Empêche les appelants situés plus haut dans la pile des appels d'utiliser le code qui appelle cette méthode pour accéder à la ressource spécifiée par l'instance actuelle.Prevents callers higher in the call stack from using the code that calls this method to access the resource specified by the current instance.

(Inherited from CodeAccessPermission)
Equals(Object) Equals(Object) Equals(Object) Equals(Object)

Détermine si l'objet CodeAccessPermission spécifié est égal à CodeAccessPermission en cours.Determines whether the specified CodeAccessPermission object is equal to the current CodeAccessPermission.

(Inherited from CodeAccessPermission)
FromXml(SecurityElement) FromXml(SecurityElement) FromXml(SecurityElement) FromXml(SecurityElement)

Reconstruit une autorisation avec un état spécifié à partir d’un encodage XML.Reconstructs a permission with a specified state from an XML encoding.

GetHashCode() GetHashCode() GetHashCode() GetHashCode()

Obtient un code de hachage pour l’objet CodeAccessPermission qui peut être utilisé dans des structures de données et des algorithmes de hachage, comme une table de hachage.Gets a hash code for the CodeAccessPermission object that is suitable for use in hashing algorithms and data structures such as a hash table.

(Inherited from CodeAccessPermission)
GetType() GetType() GetType() GetType()

Obtient le Type de l'instance actuelle.Gets the Type of the current instance.

(Inherited from Object)
Intersect(IPermission) Intersect(IPermission) Intersect(IPermission) Intersect(IPermission)

Crée et retourne une autorisation qui constitue l’intersection entre l’autorisation actuelle et l’autorisation spécifiée.Creates and returns a permission that is the intersection of the current permission and the specified permission.

IsSubsetOf(IPermission) IsSubsetOf(IPermission) IsSubsetOf(IPermission) IsSubsetOf(IPermission)

Détermine si l’autorisation actuelle est un sous-ensemble de l’autorisation spécifiée.Determines whether the current permission is a subset of the specified permission.

MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

Crée une copie superficielle de l'objet Object actuel.Creates a shallow copy of the current Object.

(Inherited from Object)
PermitOnly() PermitOnly() PermitOnly() PermitOnly()

Empêche les appelants situés plus haut dans la pile des appels d'utiliser le code qui appelle cette méthode pour accéder à toutes les ressources sauf celle spécifiée par l'instance actuelle.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.

(Inherited from CodeAccessPermission)
ToString() ToString() ToString() ToString()

Crée et retourne la représentation de chaîne de l'objet d'autorisation en cours.Creates and returns a string representation of the current permission object.

(Inherited from CodeAccessPermission)
ToXml() ToXml() ToXml() ToXml()

Crée un encodage XML de l’autorisation et de son état actuel.Creates an XML encoding of the permission and its current state.

Union(IPermission) Union(IPermission) Union(IPermission) Union(IPermission)

Crée une autorisation qui est l’union de l’autorisation actuelle et de l’autorisation spécifiée.Creates a permission that is the union of the current permission and the specified permission.

Implémentations d’interfaces explicites

IPermission.Demand() IPermission.Demand() IPermission.Demand() IPermission.Demand() Inherited from CodeAccessPermission
IStackWalk.Assert() IStackWalk.Assert() IStackWalk.Assert() IStackWalk.Assert() Inherited from CodeAccessPermission
IStackWalk.Demand() IStackWalk.Demand() IStackWalk.Demand() IStackWalk.Demand() Inherited from CodeAccessPermission
IStackWalk.Deny() IStackWalk.Deny() IStackWalk.Deny() IStackWalk.Deny() Inherited from CodeAccessPermission
IStackWalk.PermitOnly() IStackWalk.PermitOnly() IStackWalk.PermitOnly() IStackWalk.PermitOnly() Inherited from CodeAccessPermission

S’applique à

Voir aussi