ConnectionOptions.Authentication Eigenschaft

Definition

Ruft die COM-Authentifizierungsebene ab, die für Vorgänge in dieser Verbindung verwendet werden soll, oder legt diese fest.

public:
 property System::Management::AuthenticationLevel Authentication { System::Management::AuthenticationLevel get(); void set(System::Management::AuthenticationLevel value); };
public System.Management.AuthenticationLevel Authentication { get; set; }
member this.Authentication : System.Management.AuthenticationLevel with get, set
Public Property Authentication As AuthenticationLevel

Eigenschaftswert

Gibt einen AuthenticationLevel Enumerationswert zurück, der die COM-Authentifizierungsebene angibt, die für eine Verbindung mit dem lokalen oder einem Remotecomputer verwendet wird.

Beispiele

Im folgenden Beispiel wird eine Verbindung mit einem Remotecomputer hergestellt und Informationen zum Betriebssystem auf dem Remotecomputer angezeigt. Es wird eine ConnectionOptions Verbindung mit dem Remotecomputer mit den gewünschten Verbindungsoptionen erstellt.

using System;
using System.Management;
public class RemoteConnect
{
    public static void Main()
    {
        // Build an options object for the remote connection
        // if you plan to connect to the remote
        // computer with a different user name
        // and password than the one you are currently using.
        // This example uses the default values.
        ConnectionOptions options =
            new ConnectionOptions();
        options.Authentication =
            System.Management.AuthenticationLevel.PacketPrivacy;

        // Make a connection to a remote computer.
        // Replace the "FullComputerName" section of the
        // string "\\\\FullComputerName\\root\\cimv2" with
        // the full computer name or IP address of the
        // remote computer.
        ManagementScope scope =
            new ManagementScope(
            "\\\\FullComputerName\\root\\cimv2", options);
        scope.Connect();

        //Query system for Operating System information
        ObjectQuery query = new ObjectQuery(
            "SELECT * FROM Win32_OperatingSystem");
        ManagementObjectSearcher searcher =
            new ManagementObjectSearcher(scope,query);

        ManagementObjectCollection queryCollection = searcher.Get();
        foreach ( ManagementObject m in queryCollection)
        {
            // Display the remote computer information
            Console.WriteLine("Computer Name : {0}",
                m["csname"]);
            Console.WriteLine("Windows Directory : {0}",
                m["WindowsDirectory"]);
            Console.WriteLine("Operating System: {0}",
                m["Caption"]);
            Console.WriteLine("Version: {0}", m["Version"]);
            Console.WriteLine("Manufacturer : {0}",
                m["Manufacturer"]);
        }
    }
}
Imports System.Management
Public Class RemoteConnect

    Public Overloads Shared Function Main( _
    ByVal args() As String) As Integer

        ' Build an options object for the remote connection
        ' if you plan to connect to the remote
        ' computer with a different user name
        ' and password than the one you are currently using
        Dim options As ConnectionOptions
        options = New ConnectionOptions
        options.Authentication = 6
        ' System.Management.AuthenticationLevel.PacketPrivacy = 6

        ' Make a connection to a remote computer.
        ' Replace the "FullComputerName" section of the
        ' string "\\FullComputerName\root\cimv2" with
        ' the full computer name or IP address of the
        ' remote computer.
        Dim scope As ManagementScope
        scope = New ManagementScope( _
            "\\FullComputerName\root\cimv2", options)
        scope.Connect()

        ' Query system for Operating System information
        Dim query As ObjectQuery
        query = New ObjectQuery( _
            "SELECT * FROM Win32_OperatingSystem")
        Dim searcher As ManagementObjectSearcher
        searcher = _
            New ManagementObjectSearcher(scope, query)

        Dim queryCollection As ManagementObjectCollection
        queryCollection = searcher.Get()

        Dim m As ManagementObject
        For Each m In queryCollection
            ' Display the remote computer information
            Console.WriteLine("Computer Name : {0}", _
                m("csname"))
            Console.WriteLine("Windows Directory : {0}", _
                m("WindowsDirectory"))
            Console.WriteLine("Operating System: {0}", _
                m("Caption"))
            Console.WriteLine("Version: {0}", m("Version"))
            Console.WriteLine("Manufacturer : {0}", _
                m("Manufacturer"))
        Next

        Return 0
    End Function
End Class

Hinweise

Auf Windows 2000 und darunter fordert der WMI-Dienst die Authentifizierung auf Connect-Ebene an, während er auf Windows XP und höher die Authentifizierung auf Paketebene anfordert. Wenn der Client eine bestimmte Authentifizierungseinstellung erfordert, kann diese Eigenschaft verwendet werden, um die Authentifizierungsebene für diese bestimmte Verbindung zu steuern. Die Eigenschaft kann z. B. festgelegt AuthenticationLevel.PacketPrivacy werden, wenn der Client eine verschlüsselte Kommunikation erfordert.

Eigenschaftswert

Die COM-Authentifizierungsstufe, die für Vorgänge in dieser Verbindung verwendet werden soll. Der Standardwert ist AuthenticationLevel.Unchanged, der angibt, dass der Client die vom Server angeforderte Authentifizierungsebene gemäß dem standardmäßigen DCOM-Aushandlungsprozess verwendet.

.NET Framework-Sicherheit

Volle Vertrauenswürdigstellung für den unmittelbaren Anrufer. Dieses Element kann nicht von teilweise vertrauenswürdigem Code verwendet werden. Weitere Informationen finden Sie unter Verwenden von Bibliotheken aus teilweise vertrauenswürdigen Code.

Gilt für:

Weitere Informationen