Activer la connexion unique pour des compléments OfficeEnable single sign-on for Office Add-ins

Les utilisateurs se connectent à Office (plateformes en ligne, mobiles ou de bureau) à l’aide de leur compte Microsoft personnel ou de leur compte professionnel ou Microsoft 365 Éducation. Vous pouvez en tirer parti et utiliser l’authentification unique (SSO) pour autoriser l’utilisateur à accéder à votre complément sans qu’il doive se connecter une deuxième fois.Users sign in to Office (online, mobile, and desktop platforms) using either their personal Microsoft account or their Microsoft 365 Education or work account. You can take advantage of this and use single sign-on (SSO) to authorize the user to your add-in without requiring the user to sign in a second time.

Image illustrant le processus de connexion pour un complément

Meilleures Pratiques et Conditions RequisesRequirements and Best Practices

Si vous travaillez avec un complément Outlook, assurez-vous d'activer l'authentification moderne pour la location de Microsoft 365.If you are working with an Outlook add-in, be sure to enable Modern Authentication for the Microsoft 365 tenancy. Pour plus d’informations sur la manière de procéder, consultez la rubrique Exchange Online : Activation de votre client pour l’authentification moderne.For information about how to do this, see Exchange Online: How to enable your tenant for modern authentication.

Vous ne devezpas dépendre de l’authentification unique SSO comme seule méthode de votre complément d’authentification.You should not rely on SSO as your add-in's only method of authentication. Vous devez implémenter un système d’authentification secondaire vers lequel votre complément peut revenir dans certaines situations d’erreur.You should implement an alternate authentication system that your add-in can fall back to in certain error situations. Vous pouvez utiliser un système de tableaux d’utilisateur et d’authentification, ou vous pouvez tirer parti d’un des fournisseurs de connexion sociale.You can use a system of user tables and authentication, or you can leverage one of the social login providers. Pour plus d’informations sur la procédure à suivre avec un complément Office, voirServices externes autorisées dans votre complément Office.For more information about how to do this with an Office add-in, see Authorize external services in your Office Add-in. ConcernantOutlook, il existe un système de secours recommandé.For Outlook, there is a recommended fallback system. Pour plus d’informations, voirScénario : Implémenter l’authentification unique sur votre service dans un complément Outlook.For more information, see Scenario: Implement single sign-on to your service in an Outlook add-in. Pour consulter des exemples d’utilisation d’Azure Active Directory comme système de secours, voir SSO NodeJS pour complément Office et SSO ASP.NET pour complément Office.For samples that use Azure Active Directory as the fallback system, see Office Add-in NodeJS SSO and Office Add-in ASP.NET SSO.

Mode de fonctionnement de l’authentification unique SSO en cours d’exécutionHow SSO works at runtime

Le diagramme suivant illustre le mode de fonctionnement du processus d’authentification unique SSO.The following diagram shows how the SSO process works.

Un diagramme illustrant le processus d’authentification unique

  1. Dans le complément, JavaScript appelle une nouvelle API Office.js getAccessToken.In the add-in, JavaScript calls a new Office.js API getAccessToken. Cela indique à l’application cliente Office qu’elle doit obtenir un jeton d’accès au complément.This tells the Office client application to obtain an access token to the add-in. Voir Exemple de token.See Example access token.
  2. Si l’utilisateur n’est pas connecté, l’application cliente Office ouvre une fenêtre contextuelle pour qu’il se connecte.If the user is not signed in, the Office client application opens a pop-up window for the user to sign in.
  3. Si c’est la première fois que l’utilisateur actuel utilise votre complément, il est invité à donner son consentement.If this is the first time the current user has used your add-in, he or she is prompted to consent.
  4. L’application cliente Office demande le jeton de complément au point de terminaison Azure AD v2.0 pour l’utilisateur actuel.The Office client application requests the add-in token from the Azure AD v2.0 endpoint for the current user.
  5. Azure AD envoie le jeton de complément à l’application cliente Office.Azure AD sends the add-in token to the Office client application.
  6. L’application cliente Office envoie lejeton de complément (token) au complément dans le cadre de l’objet de résultat renvoyé par l’appelgetAccessToken.The Office client application sends the add-in token to the add-in as part of the result object returned by the getAccessToken call.
  7. Dans le compl?ment, JavaScript peut analyser le token et extraire les informations dont il a besoin, telles que l'adresse e-mail de l'utilisateur.JavaScript in the add-in can parse the token and extract the information it needs, such as the user's email address.
  8. Optionnellement, le compl?ment peut envoyer une requ?te HTTP ? son serveur pour obtenir plus de donn?es sur l'utilisateur, notamment les pr?f?rences de l'utilisateur.Optionally, the add-in can send HTTP request to its server-side for more data about the user; such as the user's preferences. Alternativement, le token lui-m?me pourrait ?tre envoy? au serveur pour analyse et validation.Alternatively, the access token itself could be sent to the server-side for parsing and validation there.

Développer un complément d’authentification unique SSODevelop an SSO add-in

Cette section décrit les tâches impliquées dans la création d’un complément Office qui utilise l’authentification unique.This section describes the tasks involved in creating an Office Add-in that uses SSO. Ces tâches sont décrites ici indépendamment du langage et de l’infrastructure.These tasks are described here in a language- and framework-agnostic way. Pour consulter des procédures pas à pas détaillées, voir :For detailed walkthroughs, see:

Notes

Vous pouvez utiliser le générateur Yeoman pour créer votre complément Office compatible avec l’authentification unique, Node.js..You can use the Yeoman generator to create an SSO-enabled, Node.js Office Add-in. Le générateur Yeoman simplifie le processus de création d’un complément avec authentification unique en automatisant les étapes nécessaires pour configurer l’authentification unique dans Azure et la génération du code nécessaire pour qu’un complément utilise l’authentification unique.The Yeoman generator simplifies the process of creating an SSO-enabled add-in, by automating the steps required to configure SSO within Azure and generating the code that's necessary for an add-in to use SSO. Pour plus d'informations, consultez Démarrage rapide de l'authentification unique.For more information, see the Single sign-on (SSO) quick start.

Créer l’application de serviceCreate the service application

Enregistrer le complément auprès du portail d’inscription pour le point de terminaison Azure v2.0. Il s’agit d’un processus de 5 à 10 minutes qui inclut les tâches suivantes :Register the add-in at the registration portal for the Azure v2.0 endpoint. This is a 5–10 minute process that includes the following tasks:

  • Obtenez un ID client et un code secret pour le complément.Get a client ID and secret for the add-in.
  • Spécifiez les autorisations dont votre complément a besoin pour AAD v.Specify the permissions that your add-in needs to AAD v. Point de terminaison 2.0 (et ?ventuellement Microsoft Graph).2.0 endpoint (and optionally to Microsoft Graph). L'autorisation "profil" est toujours n?cessaire.The "profile" permission is always needed.
  • Accordez la confiance de l’application cliente Office au complément.Grant the Office client application trust to the add-in.
  • Pré-autorisez l’application cliente Office pour le complément avec l’autorisation par défaut access_as_user.Preauthorize the Office client application to the add-in with the default permission access_as_user.

Pour plus de d?tails sur ce processus, voir Enregistrer un compl?ment Office qui utilise l'authentification unique aupr?s du point de terminaison Azure AD v2.0.For more details about this process, see Register an Office Add-in that uses SSO with the Azure AD v2.0 endpoint.

Configurer le complémentConfigure the add-in

Ajoutez un nouveau balisage au manifeste du complément :Add new markup to the add-in manifest:

  • WebApplicationInfo: le parent des éléments suivants.WebApplicationInfo - The parent of the following elements.
  • Id - ID du client du compl?ment : il s'agit d'un ID d'application que vous obtenez lors de l'enregistrement du compl?ment.Id - The client ID of the add-in This is an application ID that you obtain as part of registering the add-in. VoirEnregistrer un complément Office utilisant une SSO (authentification unique) avec le point de terminaison Azure AD v2.0.See Register an Office Add-in that uses SSO with the Azure AD v2.0 endpoint.
  • Ressource: l’URL du complément.Resource - The URL of the add-in. Il s’agit du même URI (y compris le protocoleapi:) que vous avez utilisé lors de l’inscription du complément dans AAD.This is the same URI (including the api: protocol) that you used when registering the add-in in AAD. Le domaine et les sous-domaines doivent être les mêmes que ceux utilisés dans les URLs dans la section<Resources> du manifeste du complément.The domain part of this URI should match the domain, including any subdomains, used in the URLs in the <Resources> section of the add-in's manifest.
  • Scopes: le parent d’un ou plusieurs éléments Scope.Scopes - The parent of one or more Scope elements.
  • Scope: spécifie une autorisation nécessaire pour le complément dans l’AAD.Scope - Specifies a permission that the add-in needs to AAD. L' profile autorisation est toujours n?cessaire et il peut s'agir de la seule autorisation n?cessaire si votre compl?ment n'acc?de pas ? Microsoft Graph.The profile permission is always needed and it may be the only permission needed, if your add-in does not access Microsoft Graph. Si c'est le cas, vous avez ?galement besoin des ?l?ments d'une ?tenduepour obtenir les autorisations Microsoft Graph requises; par exemple, User.Read, Mail.Read.If it does, you also need Scope elements for the required Microsoft Graph permissions; for example, User.Read, Mail.Read. Les biblioth?ques que vous utilisez dans votre code pour acc?der ? Microsoft Graph peuvent avoir des besoin d'autorisations suppl?mentaires.Libraries that you use in your code to access Microsoft Graph may need additional permissions. Par exemple, Microsoft Authentication Library (MSAL) pour .NET n?cessite offline_access une autorisation.For example, Microsoft Authentication Library (MSAL) for .NET requires offline_access permission. Pour plus d'informations, voir Autoriser Microsoft Graph ? partir d'un compl?ment Office.For more information, see Authorize to Microsoft Graph from an Office Add-in.

Pour les applications Office autres qu’Outlook, ajoutez le balisage à la fin de la section <VersionOverrides ... xsi:type="VersionOverridesV1_0">. Pour Outlook, ajoutez le balisage à la fin de la section <VersionOverrides ... xsi:type="VersionOverridesV1_1">.For Office applications other than Outlook, add the markup to the end of the <VersionOverrides ... xsi:type="VersionOverridesV1_0"> section. For Outlook, add the markup to the end of the <VersionOverrides ... xsi:type="VersionOverridesV1_1"> section.

Voici un exemple de marques de révision :The following is an example of the markup:

<WebApplicationInfo>
    <Id>5661fed9-f33d-4e95-b6cf-624a34a2f51d</Id>
    <Resource>api://addin.contoso.com/5661fed9-f33d-4e95-b6cf-624a34a2f51d</Resource>
    <Scopes>
        <Scope>user.read</Scope>
        <Scope>files.read</Scope>
        <Scope>profile</Scope>
    </Scopes>
</WebApplicationInfo>

Ajouter du code côté clientAdd client-side code

Ajoutez un code JavaScript pour le complément à :Add JavaScript to the add-in to:

  • Appelez getAccessToken.Call getAccessToken.

  • Analyser le jeton d’accès ou le transmettre au code côté serveur du complément.Parse the access token or pass it to the add-in’s server-side code.

Voici un exemple simple d’un appel àgetAccessToken.Here's a simple example of a call to getAccessToken.

Notes

Cet exemple ne pr?sente explicitement qu'un seul type d'erreur.This example handles only one kind of error explicitly. Pour des exemples de traitement des erreurs plus élaborés, voir SSO NodeJS pour complément Office et SSO ASP.NET pour complément Office.For examples of more elaborate error handling, see Office Add-in NodeJS SSO and Office Add-in ASP.NET SSO.

async function getGraphData() {
    try {
        let bootstrapToken = await OfficeRuntime.auth.getAccessToken();

        // The /api/DoSomething controller will make the token exchange and use the
        // access token it gets back to make the call to MS Graph.
        getData("/api/DoSomething", bootstrapToken);
    }
    catch (exception) {
        if (exception.code === 13003) {
            // SSO is not supported for domain user accounts, only
            // Microsoft 365 Education or work account, or a Microsoft account.
        } else {
            // Handle error
        }
    }
}

Voici un exemple simple d?un passage de token du compl?ment vers le serveur.Here's a simple example of passing the add-in token to the server-side. Le token est inclus en tant qu' Authorization en-t?te lors de l'envoi d'une demande au serveur.The token is included as an Authorization header when sending a request back to the server-side. Dans cet exemple, l'envoi de donn?es JSON se fait en utilisant la m?thode POST, mais GET est suffisant pour envoyer le token d'acc?s lorsque vous n'?crivez pas sur le serveur.This example envisions sending JSON data, so it uses the POST method, but GET is sufficient to send the access token when you are not writing to the server.

$.ajax({
    type: "POST",
    url: "/api/DoSomething",
    headers: {
        "Authorization": "Bearer " + bootstrapToken
    },
    data: { /* some JSON payload */ },
    contentType: "application/json; charset=utf-8"
}).done(function (data) {
    // Handle success
}).fail(function (error) {
    // Handle error
}).always(function () {
    // Cleanup
});

Quand appeler la méthodeWhen to call the method

Si votre complément ne peut pas être utilisé lorsqu’aucun utilisateur n’est connecté à Office, vous devez alors appelergetAccessToken * au lancement du complément* et passer allowSignInPrompt: true dans le options paramètre de getAccessToken.If your add-in cannot be used when there is no user currently logged into Office, then you should call getAccessToken when the add-in launches and pass allowSignInPrompt: true in the options parameter of getAccessToken. Par exemple: OfficeRuntime.auth.getAccessToken( { allowSignInPrompt: true });For example; OfficeRuntime.auth.getAccessToken( { allowSignInPrompt: true });

Si le complément possède certaines fonctionnalités qui ne nécessitent pas un accès à l’utilisateur, ensuite appelezgetAccessToken* lorsque l’utilisateur effectue une action qui requiert un utilisateur connecté*.If the add-in has some functionality that doesn't require a logged in user, then you call getAccessToken when the user takes an action that requires a logged in user. Les appels répétés à getAccessToken ne causent aucune dégradation importante des performances, car Office met en cache le jeton d’amorçage et le réutilise jusqu'à ce qu’il arrive à expiration, sans effectuer un autre appel vers l’AAD v.There is no significant performance degradation with redundant calls of getAccessToken because Office caches the bootstrap token and will reuse it, until it expires, without making another call to the AAD v. Point de terminaison 2.0 dès que getAccessToken est appelé.2.0 endpoint whenever getAccessToken is called. Ainsi, vous pouvez ajouter des appels de getAccessToken à l’ensemble des fonctions et gestionnaires qui lancent une action dans laquelle le jeton est nécessaire.So you can add calls of getAccessToken to all functions and handlers that initiate an action where the token is needed.

Ajouter du code côté serveurAdd server-side code

Dans la plupart des scénarios, il n’est pas vraiment utile d’obtenir le jeton d’accès si votre complément ne le transmet pas côté serveur et ne l’utilise pas à cet emplacement.In most scenarios, there would be little point to obtaining the access token, if your add-in does not pass it on to a server-side and use it there. Quelques t?ches c?t? serveur que votre compl?ment pourrait faire :Some server-side tasks your add-in could do:

  • Cr?er d'une ou plusieurs m?thodes d'API Web qui utilisent des informations sur l'utilisateur qui sont extraitent du token ; par exemple, une m?thode qui recherche les pr?f?rences de l'utilisateur dans votre base de donn?es h?berg?e.Create one or more Web API methods that use information about the user that is extracted from the token; for example, a method that looks up the user's preferences in your hosted data base. (Voir Utilisation du token SSO en tant qu'identit? ci-dessous). En fonction de votre langue et de votre structure, des biblioth?ques peuvent ?tre disponibles pour simplifier le code que vous devez ?crire.(See Using the SSO token as an identity below.) Depending on your language and framework, libraries might be available that will simplify the code you have to write.

  • Obtenir des donn?es Microsoft Graph.Get Microsoft Graph data. Votre code côté serveur doit effectuer les opérations suivantes :Your server-side code should do the following:

    • Démarrer le flux « de la part de » avec un appel du point de terminaison Azure AD v2.0 qui inclut le jeton d’accès du complément, certaines métadonnées relatives à l’utilisateur et les informations d’identification du complément (ID et code secret).Initiate the “on behalf of” flow with a call to the Azure AD v2.0 endpoint that includes the access token, some metadata about the user, and the credentials of the add-in (its ID and secret). Dans ce contexte, le jeton d’accès est appelé le jeton bootstrap.In this context, the access token is called the bootstrap token.
    • Obtenir des données à partir de Microsoft Graph en utilisant le nouveau jeton.Get data from Microsoft Graph by using the new token.
    • Si vous le souhaitez, avant de lancer le flux, validez le jeton d’accès (voir Valider le jeton d’accès ci-dessous).Optionally, before initiating the flow, validate the access token (see Validate the access token below).
    • Si vous le souhaitez, une fois l’exécution du flux on-behalf-of terminée, mettez en cache le nouveau jeton d’accès renvoyé à partir du flux de façon à ce qu’il soit réutilisé dans d’autres appels à Microsoft Graph jusqu’à son expiration.Optionally, after the on-behalf-of flow completes, cache the new access token that is returned from the flow so that it an be reused in other calls to Microsoft Graph until it expires.

Pour plus de d?tails sur l'obtention d'un acc?s autoris? aux donn?es Microsoft Graph de l'utilisateur, voir Autoriser Microsoft Graph dans votre compl?ment Office.For more details about getting authorized access to the user's Microsoft Graph data, see Authorize to Microsoft Graph in your Office Add-in.

Valider le jeton d’accèsValidate the access token

Quand l’API web reçoit le jeton d’accès, elle peut valider son fonctionnement avant de l’utiliser.Once the Web API receives the access token, it can validate it before using it. Le jeton est un jeton JWT. En d’autres termes, la validation se déroule comme dans la plupart des flux OAuth standard.The token is a JSON Web Token (JWT), which means that validation works just like token validation in most standard OAuth flows. Il existe un certain nombre de bibliothèques pouvant gérer la validation JWT qui sont toutes, au minimum, chargées de :There are a number of libraries available that can handle JWT validation, but the basics include:

  • vérifier que le jeton est bien formé ;Checking that the token is well-formed
  • vérifier que le jeton a été émis par l’autorité souhaitée ;Checking that the token was issued by the intended authority
  • vérifier que le jeton est destiné à l’API web.Checking that the token is targeted to the Web API

Suivez les recommandations suivantes quand vous validez le jeton :Keep in mind the following guidelines when validating the token:

  • Les jetons SSO valides doivent être émis par l’autorité Azure https://login.microsoftonline.com.Valid SSO tokens will be issued by the Azure authority, https://login.microsoftonline.com. La revendication iss dans le jeton doit commencer par cette valeur.The iss claim in the token should start with this value.
  • Le paramètre aud du jeton devra correspondre à l’ID d’application de l’enregistrement du complément.The token's aud parameter will be set to the application ID of the add-in's registration.
  • Le paramètre scp du jeton devra correspondre à access_as_user.The token's scp parameter will be set to access_as_user.

Utilisation du jeton SSO comme identitéUsing the SSO token as an identity

Si votre complément doit vérifier l’identité de l’utilisateur, le jeton SSO contient des informations utiles pour établir son identité.If your add-in needs to verify the user's identity, the SSO token contains information that can be used to establish the identity. Les revendications suivantes présentes dans le jeton concernent l’identité de l’utilisateur.The following claims in the token relate to identity.

  • name: le nom d’affichage de l’utilisateur.name - The user's display name.
  • preferred_username: l’adresse de messagerie de l’utilisateur.preferred_username - The user's email address.
  • oid : un GUID représentant l’ID de l’utilisateur dans Azure Active Directory.oid - A GUID representing the ID of the user in the Azure Active Directory.
  • tid: un GUID représentant l’ID de l’organisation de l’utilisateur dans Azure Active Directory.tid - A GUID representing the ID of the user's organization in the Azure Active Directory.

Étant donné que les valeurs name et preferred_username peuvent être amenées à changer, nous vous recommandons d’utiliser les valeurs oid et tid pour corréler l’identité de l’utilisateur avec le service d’autorisation de votre API principale.Since the name and preferred_username values could change, we recommend that the oid and tid values be used to correlate the identity with your back-end's authorization service.

Par exemple, votre service peut mettre en forme ces valeurs de la façon suivante {oid-value}@{tid-value}, puis stocker cette mise en forme sous forme de valeur dans l’enregistrement de l’utilisateur dans votre base de données utilisateur interne.For example, your service could format those values together like {oid-value}@{tid-value}, then store that as a value on the user's record in your internal user database. Lors des demandes ultérieures, l’utilisateur pourra être récupéré grâce à cette valeur et l’accès à certaines ressources pourra être déterminé selon les mécanismes de contrôle d’accès existants.Then on subsequent requests, the user could be retrieved by using the same value, and access to specific resources could be determined based on your existing access control mechanisms.

Exemple de tokenExample access token

Voici une charge utile d?cod?e typique de token.The following is a typical decoded payload of an access token. Pour plus d’informations sur les propriétés, voirjetons référence (token) version 2.0 Azure Active Directory.For information about the properties, see Azure Active Directory v2.0 tokens reference.

{
    aud: "2c3caa80-93f9-425e-8b85-0745f50c0d24",
    iss: "https://login.microsoftonline.com/fec4f964-8bc9-4fac-b972-1c1da35adbcd/v2.0",
    iat: 1521143967,
    nbf: 1521143967,
    exp: 1521147867,
    aio: "ATQAy/8GAAAA0agfnU4DTJUlEqGLisMtBk5q6z+6DB+sgiRjB/Ni73q83y0B86yBHU/WFJnlMQJ8",
    azp: "e4590ed6-62b3-5102-beff-bad2292ab01c",
    azpacr: "0",
    e_exp: 262800,
    name: "Mila Nikolova",
    oid: "6467882c-fdfd-4354-a1ed-4e13f064be25",
    preferred_username: "milan@contoso.com",
    scp: "access_as_user",
    sub: "XkjgWjdmaZ-_xDmhgN1BMP2vL2YOfeVxfPT_o8GRWaw",
    tid: "fec4f964-8bc9-4fac-b972-1c1da35adbcd",
    uti: "MICAQyhrH02ov54bCtIDAA",
    ver: "2.0"
}

Utilisation de l’authentification unique SSO en accompagnement d’un complément OutlookUsing SSO with an Outlook add-in

Il existe quelques différences mineures, mais importantes, en ce qui concerne l'utilisation de la connexion unique SSO dans un complément Outlook à partir de son utilisation dans un complément Excel, PowerPoint ou Word.There are some small, but important differences in using SSO in an Outlook add-in from using it in an Excel, PowerPoint, or Word add-in. Assurez-vous de lire Authentifier un utilisateur avec un token unique log? dans le compl?ment Outlook et l' ?tude de cas : Impl?menter la connexion unique ? votre service dans un compl?ment Outlook.Be sure to read Authenticate a user with a single sign-on token in an Outlook add-in and Scenario: Implement single sign-on to your service in an Outlook add-in.

RÉFÉRENCE D’API D’AUTHENTIFICATION UNIQUE SSOSSO API reference

getAccessTokengetAccessToken

L'espace de noms OfficeRuntime Auth, OfficeRuntime.Auth, fournit une méthode getAccessToken qui permet à l'application Office d'obtenir un jeton d'accès à l'application web du module complémentaire.The OfficeRuntime Auth namespace, OfficeRuntime.Auth, provides a method, getAccessToken that enables the Office application to obtain an access token to the add-in's web application. Indirectement, ceci active également le complément pour accéder aux données de Microsoft Graph de l’utilisateur sans que l’utilisateur ne doive se connecter une deuxième fois.Indirectly, this also enables the add-in to access the signed-in user's Microsoft Graph data without requiring the user to sign in a second time.

getAccessToken(options?: AuthOptions: (result: AsyncResult<string>) => void): void;

Cette méthode appelle le point de terminaison Azure Active Directory V 2.0 pour obtenir un jeton d’accès à l’application web de votre complément.The method calls the Azure Active Directory V 2.0 endpoint to get an access token to your add-in's web application. Ceci permet à des compléments d’identifier les utilisateurs.This enables add-ins to identify users. Le Code côté serveur peut utiliser ce jeton pour accéder à Microsoft Graph pour l’application web du complément à l’aide du flux OAuth « Pour le compte de ».Server side code can use this token to access Microsoft Graph for the add-in's web application by using the "on behalf of" OAuth flow.

Notes

Dans Outlook, cette API n'est pas prise en charge si le complément est chargé dans une boîte aux lettres Outlook.com ou Gmail.In Outlook, this API is not supported if the add-in is loaded in an Outlook.com or Gmail mailbox.

HôtesHosts Excel, Outlook, PowerPoint, WordExcel, Outlook, PowerPoint, Word
Ensembles de conditions requisesRequirement sets IdentityAPIIdentityAPI

ParamètresParameters

options: Facultatif.options - Optional. Accepte un objet AuthOptions (voir ci-dessous) pour définir les comportements d’authentification.Accepts an AuthOptions object (see below) to define sign-on behaviors.

callback: Facultatif.callback - Optional. Accepte une méthode de rappel qui peut analyser le jeton pour l’ID de l’utilisateur ou utilisez le jeton dans le flux de « de la part de » pour accéder à Microsoft Graph.Accepts a callback method that can parse the token for the user's ID or use the token in the "on behalf of" flow to get access to Microsoft Graph. SiAsyncResult .status est « Réussi », puisAsyncResult.value est le AAD v brut.If AsyncResult.status is "succeeded", then AsyncResult.value is the raw AAD v. 2.0: le jeton d’accès mis en forme.2.0-formatted access token.

L’interface AuthOptions fournit des options pour l’expérience utilisateur quand Office reçoit un jeton d’accès pour le complément à partir d’AAD v.The AuthOptions interface provides options for the user experience when Office obtains an access token to the add-in from AAD v. 2.0 avec la méthodegetAccessToken.2.0 with the getAccessToken method.