HostProtectionResource Énumération
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Attention
Code Access Security is not supported or honored by the runtime.
Spécifie des catégories de fonctionnalités qui présentent des risques pour l'hôte si elles sont appelées par une méthode ou une classe.
Cette énumération prend en charge une combinaison au niveau du bit de ses valeurs membres.
public enum class HostProtectionResource
[System.Flags]
[System.Obsolete("Code Access Security is not supported or honored by the runtime.", DiagnosticId="SYSLIB0003", UrlFormat="https://aka.ms/dotnet-warnings/{0}")]
public enum HostProtectionResource
[System.Flags]
[System.Runtime.InteropServices.ComVisible(true)]
[System.Serializable]
public enum HostProtectionResource
[System.Flags]
public enum HostProtectionResource
[<System.Flags>]
[<System.Obsolete("Code Access Security is not supported or honored by the runtime.", DiagnosticId="SYSLIB0003", UrlFormat="https://aka.ms/dotnet-warnings/{0}")>]
type HostProtectionResource =
[<System.Flags>]
[<System.Runtime.InteropServices.ComVisible(true)>]
[<System.Serializable>]
type HostProtectionResource =
[<System.Flags>]
type HostProtectionResource =
Public Enum HostProtectionResource
- Héritage
- Attributs
Champs
All | 511 | Expose toutes les ressources hôte. |
ExternalProcessMgmt | 4 | Risque de créer ou de détruire d'autres processus. |
ExternalThreading | 16 | Crée ou manipule d'autres threads que le sien, ce qui présente un risque pour l'hôte. |
MayLeakOnAbort | 256 | Peut provoquer une fuite de ressource sur une terminaison en l'absence de protection par un handle sécurisé ou un autre moyen d'assurer la libération de ressources. |
None | 0 | N'expose pas de ressources hôte. |
SecurityInfrastructure | 64 | Expose l'infrastructure de sécurité. |
SelfAffectingProcessMgmt | 8 | Risque de sortir du processus en cours et d'arrêter le serveur. |
SelfAffectingThreading | 32 | Manipule des threads de manière à n'affecter que le code utilisateur. |
SharedState | 2 | Expose un état qui peut être partagé entre threads. |
Synchronization | 1 | Expose la synchronisation. |
UI | 128 | Expose l'interface utilisateur. |
Exemples
L’exemple de code suivant montre l’utilisation de l’énumération HostProtectionResource avec l’attribut HostProtectionAttribute . Cet exemple fait partie d’un exemple plus grand fourni pour la HostProtectionAttribute classe .
// Use the enumeration flags to indicate that this method exposes shared state and
// self-affecting process management.
// Either of the following attribute statements can be used to set the
// resource flags.
// Exit the sample when an exception is thrown.
[HostProtection(SharedState=true,SelfAffectingProcessMgmt=true)]
[HostProtection(Resources=HostProtectionResource::SharedState|
HostProtectionResource::SelfAffectingProcessMgmt)]
static void Exit( String^ Message, int Code )
{
Console::WriteLine( "\nFAILED: {0} {1}", Message, Code );
Environment::ExitCode = Code;
Environment::Exit( Code );
}
// Use the enumeration flags to indicate that this method exposes
// shared state and self-affecting process management.
// Either of the following attribute statements can be used to set the
// resource flags.
[HostProtectionAttribute(SharedState = true,
SelfAffectingProcessMgmt = true)]
[HostProtectionAttribute(Resources = HostProtectionResource.SharedState |
HostProtectionResource.SelfAffectingProcessMgmt)]
private static void Exit(string Message, int Code)
{
// Exit the sample when an exception is thrown.
Console.WriteLine("\nFAILED: " + Message + " " + Code.ToString());
Environment.ExitCode = Code;
Environment.Exit(Code);
}
' Use the enumeration flags to indicate that this method exposes
' shared state and self-affecting process management.
' Either of the following attribute statements can be used to set the
' resource flags.
<HostProtectionAttribute(SharedState := True, _
SelfAffectingProcessMgmt := True), _
HostProtectionAttribute( _
Resources := HostProtectionResource.SharedState Or _
HostProtectionResource.SelfAffectingProcessMgmt)> _
Private Shared Sub [Exit](ByVal Message As String, ByVal Code As Integer)
' Exit the sample when an exception is thrown.
Console.WriteLine((ControlChars.Lf & "FAILED: " & Message & " " & _
Code.ToString()))
Environment.ExitCode = Code
Environment.Exit(Code)
End Sub
Remarques
Attention
La sécurité d’accès du code (CAS) a été déconseillée dans toutes les versions du .NET Framework et de .NET. Les versions récentes de .NET ne respectent pas les annotations CAS et produisent des erreurs si les API liées à CAS sont utilisées. Les développeurs doivent chercher d’autres moyens pour accomplir les tâches liées à la sécurité.
Cette énumération est utilisée par l’attribut HostProtectionAttribute .