Office.Auth interface
Office.auth
、Office 認証名前空間は、Office クライアント アプリケーションがアドインの Web アプリケーションへのアクセス トークンを取得するためのメソッドを提供します。 これにより、間接的に、サインインしたユーザーの Microsoft Graph データにアドインがアクセスできるようにもなります。ユーザーがもう一度サインインする必要はありません。
注釈
例
// Get the auth context object and use it to get an
// access token.
try {
const auth = Office.auth;
const accessToken = await auth.getAccessToken({
allowSignInPrompt: true,
allowConsentPrompt: true,
forMSGraphAccess: true,
});
// Use the token to make an API call.
} catch (error) {
console.log("Error obtaining token", error);
}
メソッド
| get |
Azure Active Directory V 2.0 のエンドポイントを呼び出して、アドインの Web アプリケーションへのアクセス トークンを取得します。 アドインがユーザーを識別できるようにします。 サーバー側コードは、このトークンを使用して、OAuth フロー "代理" を使用してアドインの Web アプリケーション用 Microsoft Graph にアクセスできます。 この API では、アドインを Azure アプリケーションにブリッジするシングル サインオン構成が必要です。 Office ユーザーは、組織アカウントと Microsoft アカウントでサインインします。 Microsoft Azure では、Microsoft Graph のリソースにアクセスするために、両方のユーザー アカウントの種類を対象にしたトークンを返します。 |
| get |
Azure Active Directory V 2.0 のエンドポイントを呼び出して、アドインの Web アプリケーションへのアクセス トークンを取得します。 アドインがユーザーを識別できるようにします。 サーバー側コードは、このトークンを使用して、OAuth フロー "代理" を使用してアドインの Web アプリケーション用 Microsoft Graph にアクセスできます。 重要: Outlook では、アドインが Outlook.com または Gmail のメールボックスに読み込まれた場合、この API はサポートされません。 |
| get |
Azure Active Directory V 2.0 のエンドポイントを呼び出して、アドインの Web アプリケーションへのアクセス トークンを取得します。 アドインがユーザーを識別できるようにします。 サーバー側コードは、このトークンを使用して、OAuth フロー "代理" を使用してアドインの Web アプリケーション用 Microsoft Graph にアクセスできます。 重要: Outlook では、アドインが Outlook.com または Gmail のメールボックスに読み込まれた場合、この API はサポートされません。 |
| get |
サインインしたユーザーに関する情報を取得します。 アドインはこの情報を Microsoft 認証ライブラリ (MSAL.js) に渡して、現在のセッションのアクセス トークンを取得できます。 |
メソッドの詳細
getAccessToken(options)
Azure Active Directory V 2.0 のエンドポイントを呼び出して、アドインの Web アプリケーションへのアクセス トークンを取得します。 アドインがユーザーを識別できるようにします。 サーバー側コードは、このトークンを使用して、OAuth フロー "代理" を使用してアドインの Web アプリケーション用 Microsoft Graph にアクセスできます。 この API では、アドインを Azure アプリケーションにブリッジするシングル サインオン構成が必要です。 Office ユーザーは、組織アカウントと Microsoft アカウントでサインインします。 Microsoft Azure では、Microsoft Graph のリソースにアクセスするために、両方のユーザー アカウントの種類を対象にしたトークンを返します。
getAccessToken(options?: AuthOptions): Promise<string>;
パラメーター
- options
- Office.AuthOptions
省略可能。 サインオン動作を定義する AuthOptions オブジェクトを受け入れます。
返品
Promise<string>
アクセス トークンを約束します。
注釈
アプリケーション: Excel、OneNote、Outlook、PowerPoint、Word
要件セット: IdentityAPI 1.3
重要:
Outlook では、Outlook.com または Gmail メールボックスにアドインを読み込む場合、この API はサポートされません。
Outlook on the web では、強化された追跡防止を有効にした Firefox を使用している場合、この API はサポートされません。 これにより、エラー 13001 ("ユーザーは Office にサインインしていません") が発生します。
Windows 上の Outlook on the web と新しい Outlook ではdisplayDialogAsync メソッドを使用してダイアログを開く場合は、
getAccessTokenを呼び出す前にダイアログを閉じる必要があります。Outlook イベント ベースのアクティブ化アドインでは、この API はバージョン 2111 (ビルド 14701.20000) 以降の Windows 上の Outlook でサポートされています。 以前のビルドでアクセス トークンを取得するには、代わりに OfficeRuntime.auth.getAccessToken を使用します。 詳細については、「 イベント ベースのライセンス認証を使用する Outlook アドインでシングル サインオン (SSO) を有効にする」を参照してください。
例
try{
const auth = Office.auth;
const accessToken = await auth.getAccessToken({
allowSignInPrompt: true,
allowConsentPrompt: true,
forMSGraphAccess: true,
});
// Use the token to make an API call.
} catch (error) {
console.log("Error obtaining token", error);
}
getAccessTokenAsync(options, callback)
警告
この API は非推奨になりました。
Use Office.auth.getAccessToken instead.
Azure Active Directory V 2.0 のエンドポイントを呼び出して、アドインの Web アプリケーションへのアクセス トークンを取得します。 アドインがユーザーを識別できるようにします。 サーバー側コードは、このトークンを使用して、OAuth フロー "代理" を使用してアドインの Web アプリケーション用 Microsoft Graph にアクセスできます。
重要: Outlook では、アドインが Outlook.com または Gmail のメールボックスに読み込まれた場合、この API はサポートされません。
getAccessTokenAsync(options?: AuthOptions, callback?: (result: AsyncResult<string>) => void): void;
パラメーター
- options
- Office.AuthOptions
省略可能。 サインオン動作を定義する AuthOptions オブジェクトを受け入れます。
- callback
-
(result: Office.AsyncResult<string>) => void
省略可能。 ユーザーの ID のトークンを解析できるか、または "代理" フローでトークンを使用して Microsoft Graph にアクセスできるコールバック関数を受け入れます。
AsyncResult.statusが "succeeded" の場合、AsyncResult.value生の AAD v. 2.0 形式のアクセス トークンです。
返品
void
注釈
アプリケーション: Excel、OneNote、Outlook、PowerPoint、Word
要件セット: IdentityAPI 1.3
この API では、アドインを Azure アプリケーションにブリッジするシングル サインオン構成が必要です。 Office ユーザーは、組織アカウントと Microsoft アカウントでサインインします。 Microsoft Azure では、Microsoft Graph のリソースにアクセスするために、両方のユーザー アカウントの種類を対象にしたトークンを返します。
例
Office.auth.getAccessTokenAsync(function(result) {
if (result.status === Office.AsyncResultStatus.Succeeded) {
const token = result.value;
// ...
} else {
console.log("Error obtaining token", result.error);
}
});
getAccessTokenAsync(callback)
警告
この API は非推奨になりました。
Use Office.auth.getAccessToken instead.
Azure Active Directory V 2.0 のエンドポイントを呼び出して、アドインの Web アプリケーションへのアクセス トークンを取得します。 アドインがユーザーを識別できるようにします。 サーバー側コードは、このトークンを使用して、OAuth フロー "代理" を使用してアドインの Web アプリケーション用 Microsoft Graph にアクセスできます。
重要: Outlook では、アドインが Outlook.com または Gmail のメールボックスに読み込まれた場合、この API はサポートされません。
getAccessTokenAsync(callback?: (result: AsyncResult<string>) => void): void;
パラメーター
- callback
-
(result: Office.AsyncResult<string>) => void
省略可能。 ユーザーの ID のトークンを解析できるか、または "代理" フローでトークンを使用して Microsoft Graph にアクセスできるコールバック関数を受け入れます。
AsyncResult.statusが "succeeded" の場合、AsyncResult.value生の AAD v. 2.0 形式のアクセス トークンです。
返品
void
注釈
アプリケーション: Excel、OneNote、Outlook、PowerPoint、Word
要件セット: IdentityAPI 1.3
この API では、アドインを Azure アプリケーションにブリッジするシングル サインオン構成が必要です。 Office ユーザーは、組織アカウントと Microsoft アカウントでサインインします。 Microsoft Azure では、Microsoft Graph のリソースにアクセスするために、両方のユーザー アカウントの種類を対象にしたトークンを返します。
getAuthContext()
サインインしたユーザーに関する情報を取得します。 アドインはこの情報を Microsoft 認証ライブラリ (MSAL.js) に渡して、現在のセッションのアクセス トークンを取得できます。
getAuthContext(): Promise<AuthContext>;
返品
Promise<Office.AuthContext>
Promise を発行します。
注釈
ホスト: Excel、OneNote、Outlook、PowerPoint、Word
要件セット: NestedAppAuth 1.1
例
try{
const authContext = await Office.auth.getAuthContext();
console.log(authContext.userPrincipalName);
} catch (error) {
console.log("Error obtaining token", error);
}