Freigeben über


ActiveDirectoryAuthenticationProvider.SetDeviceCodeFlowCallback Methode

Definition

Legt die Rückrufmethode fest und überschreibt die Standardimplementierung, die das Ergebnis für die Authentifizierung "Active Directory Device Code Flow" verarbeitet.

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))

Parameter

deviceCodeFlowCallbackMethod
Func<DeviceCodeResult,Task>

Die Rückrufmethode, die mit der Authentifizierung "Active Directory Device Code Flow" verwendet werden soll.

Beispiele

Das folgende Beispiel veranschaulicht die Bereitstellung eines benutzerdefinierten Geräteflussrückrufs für SqlClient für die Device Code Flow-Authentifizierungsmethode:

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);
        }
    }
}

Gilt für: