Freigeben über


SecurityManager.SecurityEnabled-Eigenschaft

HINWEIS: Diese Eigenschaft ist mittlerweile veraltet.

Ruft einen Wert ab, der angibt, ob die Sicherheit aktiviert ist, oder legt diesen fest.

Namespace: System.Security
Assembly: mscorlib (in mscorlib.dll)

Syntax

'Declaration
<ObsoleteAttribute("Because security can no longer be turned off permanently, setting the SecurityEnabled property no longer has any effect. Reading the property will still indicate whether security has been turned off temporarily.")> _
Public Shared Property SecurityEnabled As Boolean
'Usage
Dim value As Boolean

value = SecurityManager.SecurityEnabled

SecurityManager.SecurityEnabled = value
[ObsoleteAttribute("Because security can no longer be turned off permanently, setting the SecurityEnabled property no longer has any effect. Reading the property will still indicate whether security has been turned off temporarily.")] 
public static bool SecurityEnabled { get; set; }
[ObsoleteAttribute(L"Because security can no longer be turned off permanently, setting the SecurityEnabled property no longer has any effect. Reading the property will still indicate whether security has been turned off temporarily.")] 
public:
static property bool SecurityEnabled {
    bool get ();
    void set (bool value);
}
/** @property */
public static boolean get_SecurityEnabled ()

/** @property */
public static void set_SecurityEnabled (boolean value)
public static function get SecurityEnabled () : boolean

public static function set SecurityEnabled (value : boolean)

Eigenschaftenwert

true, wenn die Sicherheit aktiviert ist, andernfalls false.

Ausnahmen

Ausnahmetyp Bedingung

SecurityException

Der diese Methode aufrufende Code verfügt nicht über SecurityPermissionFlag.ControlPolicy.

Hinweise

Diese Eigenschaft wird von der Sicherheitsrichtlinientool für den Codezugriff (Caspol.exe)-security (-s)-Option zum Deaktivieren der codebasierten Sicherheit verwendet.

SecurityEnabled ermöglicht Administratoren das Deaktivieren der Codezugriffssicherheit. Wenn die Codezugriffssicherheit deaktiviert ist, sind alle Codezugriffsforderungen erfolgreich. Tatsächlich wird dadurch jedem Code FullTrust gewährt. Durch Deaktivieren der Codezugriffssicherheit wird das Sicherheitssystem umgangen, sodass Code u. U. etwas schneller ausgeführt wird als bei äquivalenten Sicherheitsrichtlinien, die jedem Code FullTrust gewähren. Durch diese Eigenschaft wird die rollenbasierte Sicherheit nicht deaktiviert. Daher werden PrincipalPermission-Anforderungen nicht beeinflusst.

Warnung

Das Deaktivieren der Codezugriffssicherheit macht das System anfällig gegenüber Angriffen durch böswilligen Code, z. B. Viren und Würmer. Das Deaktivieren der Codezugriffssicherheit blockiert nicht automatisch jegliches Ausführen von verwaltetem Code. Es führt lediglich dazu, dass verwalteter Code ohne Einschränkung durch das Sicherheitssystem für den Codezugriff ausgeführt wird, und sollte nur mit größter Vorsicht vorgenommen werden. Das Deaktivieren der Sicherheit führt zu einem gewissen Leistungsanstieg, sollte jedoch nur vorgenommen werden, wenn andere Maßnahmen zur Gewährleistung der Systemsicherheit ergriffen wurden. Beispiele für solche Sicherheitsmaßnahmen sind u. a. das Trennen von Verbindungen mit öffentlichen Netzwerken und die physikalische Sicherung von Computern.

Eine Änderung dieser Eigenschaft wird ohne einen Aufruf von SavePolicy in der Registrierung nicht beibehalten. Wenn die Änderung nicht in der Registrierung beibehalten wird, hat sie keine Auswirkungen auf neue Prozesse. Wenn der Wert dieser Eigenschaft in einem laufenden Prozess geändert wird, führt dies nicht unbedingt zur erwarteten Zustandsänderung. Um zu gewährleisten, dass die Änderungen tatsächlich übernommen wurden, müssen Sie SavePolicy aufrufen und einen neuen Prozess starten.

Beispiel

Im folgenden Beispiel wird sichergestellt, dass die Sicherheit aktiviert ist.

If Not SecurityManager.SecurityEnabled Then
    Throw New SecurityException(myResourceManager.GetString("Security_Required"))
End If
if ( !SecurityManager.SecurityEnabled ) {
    throw new SecurityException(myResourceManager.GetString("Security_Required"));
}
if (  !SecurityManager::SecurityEnabled )
{
   throw gcnew SecurityException( myResourceManager->GetString( "Security_Required" ) );
}
if (!(System.Security.SecurityManager.get_SecurityEnabled())) {
    throw new System.Security.SecurityException(
        myResourceManager.GetString("Security_Required"));
}

.NET Framework-Sicherheit

  • SecurityPermission  zum Ändern von Richtlinien. Zugeordnete Enumeration: SecurityPermissionFlag.ControlPolicy

Plattformen

Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen.

Versionsinformationen

.NET Framework

Unterstützt in: 1.0, 1.1
Veraltet (Compilerwarnung) in 2.0

Siehe auch

Referenz

SecurityManager-Klasse
SecurityManager-Member
System.Security-Namespace