Udostępnij za pośrednictwem


ActiveDirectoryAuthenticationProvider.SetDeviceCodeFlowCallback Metoda

Definicja

Ustawia metodę wywołania zwrotnego, przesłaniając domyślną implementację, która przetwarza wynik uwierzytelniania "Przepływ kodu urządzenia w usłudze Active Directory".

public:
 void SetDeviceCodeFlowCallback(Func<Microsoft::Identity::Client::DeviceCodeResult ^, System::Threading::Tasks::Task ^> ^ deviceCodeFlowCallbackMethod);
public void SetDeviceCodeFlowCallback (Func<Microsoft.Identity.Client.DeviceCodeResult,System.Threading.Tasks.Task> deviceCodeFlowCallbackMethod);
member this.SetDeviceCodeFlowCallback : Func<Microsoft.Identity.Client.DeviceCodeResult, System.Threading.Tasks.Task> -> unit
Public Sub SetDeviceCodeFlowCallback (deviceCodeFlowCallbackMethod As Func(Of DeviceCodeResult, Task))

Parametry

deviceCodeFlowCallbackMethod
Func<DeviceCodeResult,Task>

Metoda wywołania zwrotnego, która ma być używana z uwierzytelnianiem "Przepływ kodu urządzenia w usłudze Active Directory".

Przykłady

W poniższym przykładzie pokazano dostarczanie niestandardowego wywołania zwrotnego przepływu urządzenia do programu SqlClient dla metody uwierzytelniania przepływu kodu urządzenia:

using System;
using System.Threading.Tasks;
using Microsoft.Identity.Client;
using Microsoft.Data.SqlClient;

namespace CustomAuthenticationProviderExamples
{
    public class Program
    {
        public static void Main()
        {
            SqlAuthenticationProvider authProvider = new ActiveDirectoryAuthenticationProvider(CustomDeviceFlowCallback);
            SqlAuthenticationProvider.SetProvider(SqlAuthenticationMethod.ActiveDirectoryDeviceCodeFlow, authProvider);
            using (SqlConnection sqlConnection = new SqlConnection("Server=<myserver>.database.windows.net;Authentication=Active Directory Device Code Flow;Database=<db>;"))
            {
                sqlConnection.Open();
                Console.WriteLine("Connected successfully!");
            }
        }

        private static Task CustomDeviceFlowCallback(DeviceCodeResult result)
        {
            // Provide custom logic to process result information and read device code.
            Console.WriteLine(result.Message);
            return Task.FromResult(0);
        }
    }
}

Dotyczy