L'utilisation du flux Authorization Code OAuth2 nécessite une interaction avec l'utilisateur pour se connecter et obtenir les privilèges requis.
Une fois que vous disposez de l'ID de tenant et des identifiants, vous pouvez configurer les propriétés OAuth2 pour le Code Grant.
Pour configurer le client OpenAPI pour OAuth2 Code Grant, configurez la propriété MicrosoftOptions.Authentication avec la valeur suivante :
GetOpenAPIClient.MicrosoftOptions.Authentication := oamaOAuth2Code;
Vous pouvez ensuite configurer les paramètres OAuth2

GetOpenAPIClient.MicrosoftOptions.Authentication := oamaOAuth2Code; GetOpenAPIClient.Authentication.OAuth2.AuthorizationServerOptions.AuthURL := 'https://login.microsoftonline.com/tenant_id/oauth2/v2.0/authorize'; GetOpenAPIClient.Authentication.OAuth2.AuthorizationServerOptions.TokenURL := 'https://login.microsoftonline.com/tenant_id/oauth2/v2.0/token'; GetOpenAPIClient.Authentication.OAuth2.OAuth2Options.ClientId := '90945b8d-f6b7-4b97-b2bd-21c3c90b5f3b'; GetOpenAPIClient.Authentication.OAuth2.OAuth2Options.ClientSecret := 'client_secret'; GetOpenAPIClient.Authentication.OAuth2.LocalServerOptions.IP := '127.0.0.1'; GetOpenAPIClient.Authentication.OAuth2.LocalServerOptions.Port := 8080; GetOpenAPIClient.Authentication.OAuth2.LocalServerOptions.SSL := True; GetOpenAPIClient.Authentication.OAuth2.LocalServerOptions.SSLOptions.Port := 8080; GetOpenAPIClient.Authentication.OAuth2.LocalServerOptions.SSLOptions.CertFile := 'sgc.pem'; GetOpenAPIClient.Authentication.OAuth2.LocalServerOptions.SSLOptions.KeyFile := 'sgc.pem'; GetOpenAPIClient.Authentication.OAuth2.LocalServerOptions.SSLOptions.Password := ''; GetOpenAPIClient.Authentication.OAuth2.LocalServerOptions.RedirectURL := 'https://localhost:8080'; GetOpenAPIClient.Authentication.OAuth2.AuthorizationServerOptions.Scope.Text := 'openid';
L'ID de locataire doit être configuré pour les URL d'authentification et de jeton ; remplacez simplement l'ID de locataire correct dans l'URL.
Microsoft n'autorise l'URL localhost que si vous écoutez sur l'IP locale ; définissez donc l'URL de redirection avec localhost comme nom DNS plutôt que de la configurer avec l'adresse IP.
La valeur scope dépend de l'API ; consultez la documentation Microsoft / Azure pour chaque API.
La première fois qu'une requête est effectuée, le navigateur web s'affiche et demande à l'utilisateur de se connecter à son compte Microsoft. Si l'utilisateur s'est déjà connecté précédemment, la requête HTTP sera effectuée directement.