Dela via


Konfigurera optimerad QR-kodautentisering i iOS/macOS-appen

Med QR-kodautentiseringsmetoden kan medarbetare i frontlinjen logga in snabbt och enkelt i appar på en delad enhet. Användarna kan använda unik QR-kod från sina administratörer och ange sin PIN-kod för att logga in, vilket eliminerar behovet av att ange användarnamn och lösenord.

Du kan använda webbinloggningsfunktionen för QR-kod som är tillgänglig på login.microsoft.com. Den här användarinmatningspunkten kräver inga utvecklarändringar. Användare väljer Inloggningsalternativ>Logga in på en organisation>Logga in med en QR-kod. Du kan optimera QR-kodinloggning genom att ange startpunkten på inloggningssidan, vilket eliminerar två användarklick. För att dra nytta av QR-kodautentiseringsmetoden arbetar apputvecklare och administratör för autentiseringsprinciper tillsammans:

  • Apputvecklare integrerar QR-kodautentiseringens optimerade startpunkt i sin app med hjälp av Microsoft Authentication Library (MSAL) för iOS och macOS.
  • Administratör för autentiseringsprincip konfigurerar autentiseringsmetoden i Microsoft Entra-ID.

Konfigurera din app så att den använder QR-kodautentisering

Om du vill konfigurera appen att använda QR-kodautentisering kan du anropa API:et getDeviceInformationWithParameters i MSAL för att ta emot MSALDeviceInformation objektet. I det här objektet är en ny flagga tillgänglig för att återspegla administratörens konfigurerade QR-kodautentisering i konfigurationen för tillägg för enkel inloggning (SSO). Följande kodfragment visar hur du hämtar den önskade autentiseringsmetoden:


@property (nonatomic, readonly) MSALPreferredAuthMethod configuredPreferredAuthMethod; 

MSALPreferredAuthMethod är en uppräkning som beskriver de olika tillgängliga autentiseringsmetoderna. Med configuredPreferredAuthMethod egenskapen kan du hämta önskad autentiseringsmetod för programmet. För närvarande är QR-kod ett privat enumvärde på 1. När den släpps till allmän tillgänglighet (GA) är den MSALPreferredAuthMethodQRPIN.

MSALInteractiveTokenParameters definierar också en ny valfri parameter av typen MSALPreferredAuthMethod: preferredAuthMethod. När den här parametern har angetts för QR-kodautentisering tar det resulterande interaktiva inloggningsgränssnittet användaren direkt till startsidan för QR-kodautentisering. Följande kodfragment visar hur du konfigurerar din app så att den använder QR-kodautentisering:

MSALWebviewParameters *webParameters = [[MSALWebviewParameters alloc] initWithAuthPresentationViewController:viewController]; 

     

MSALInteractiveTokenParameters *interactiveParams = [[MSALInteractiveTokenParameters alloc] initWithScopes:scopes webviewParameters:webParameters]; 

 

interactiveParams.preferredAuthMethod = 1; //Currently need to use the private enum value 

 

[application acquireTokenWithParameters:interactiveParams completionBlock:^(MSALResult *result, NSError *error) { 

    // When token acquisition completes 

}]; 

Det här kodfragmentet konfigurerar och hämtar en token med hjälp av MSAL i en iOS-app, med fokus på QR-kodautentisering. Den initierar MSALWebviewParameters med en vycontroller för autentiseringens webbvyn och skapar MSALInteractiveTokenParameters med de nödvändiga omfånget och webbparametrarna. Den föredragna autentiseringsmetoden är inställd på QR-kodautentisering.

Slutligen anropas acquireTokenWithParametersMultipleAccountPublicClientApplication-instansen med hjälp av de konfigurerade parametrarna och ett avslutningsblock för att hantera resultatet. Den här konfigurationen säkerställer att autentiseringsflödet använder QR-kodautentiseringsmetoden för säker och bekväm användarautentisering.

Vi rekommenderar att du anropar API:et getDeviceInformationWithParameters i MSAL för att ta reda på om administratören har konfigurerat QR-kodautentiseringsmetod. Om den har det kan en app uppdatera sitt användargränssnitt för att ange att QR-kodautentiseringsmetoden är tillgänglig som ett inloggningsalternativ.