Partager via


ConnectionOptions.Authentication Propriété

Définition

Obtient ou définit le niveau d'authentification COM à utiliser pour les opérations au cours de cette connexion.

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

Valeur de propriété

Retourne une valeur d'énumération AuthenticationLevel qui indique le niveau d'authentification COM utilisé pour une connexion à l'ordinateur local ou distant.

Exemples

L’exemple suivant se connecte à un ordinateur distant et affiche des informations sur le système d’exploitation sur l’ordinateur distant. Un ConnectionOptions est créé pour se connecter à l’ordinateur distant avec les options de connexion souhaitées.

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

Remarques

Sur Windows 2000 et versions ultérieures, le service WMI demande l’authentification au niveau de la connexion, tandis que sur Windows XP et les versions ultérieures, il demande l’authentification au niveau du paquet. Si le client a besoin d’un paramètre d’authentification spécifique, cette propriété peut être utilisée pour contrôler le niveau d’authentification sur cette connexion particulière. Par exemple, la propriété peut être définie sur AuthenticationLevel.PacketPrivacy si le client exige que toutes les communications soient chiffrées.

Valeur de propriété

Niveau d’authentification COM à utiliser pour les opérations dans cette connexion. La valeur par défaut est AuthenticationLevel.Unchanged, ce qui indique que le client utilisera le niveau d’authentification demandé par le serveur, conformément au processus de négociation DCOM standard.

Sécurité du .NET Framework

Confiance totale accordée à l'appelant immédiat. Ce membre ne peut pas être utilisé par du code d'un niveau de confiance partiel. Pour plus d’informations, consultez Utilisation de bibliothèques à partir de code partiellement approuvé.

S’applique à

Voir aussi