1

現在、Office 365 への SSO を提供する Web アプリを提供しています。これは次のようにうまく機能します。

  1. ユーザーが当社のウェブサイトにアクセス
  2. ユーザーが [Office 365 でサインイン] を選択する
  3. Office 365 認証ウィンドウが起動します
  4. ユーザーは O365 資格情報を入力し、O365 によって認証されます
  5. トークンを受け取り、ユーザーを認証します。

私が言うように、これはうまくいきます。ただし、ユーザーが既に O365 に認証されており、マイ アプリ ランチャーからアプリを選択すると、O365 認証ウィンドウが表示され、再度認証する必要があることに気付きました (O365 に既にログインしているため、再認証する必要はありません)。

このページを何度も確認しました: https://msdn.microsoft.com/en-us/office/office365/howto/connect-your-app-to-o365-app-launcher

「アプリ ランチャーは、アプリケーションのサインオン URL へのサインオンを開始します」が可能であることを示唆していますが、現在認証されているユーザーのキャッシュされた資格情報を検出する方法に関するドキュメントは見つかりません。

4

2 に答える 2

1

アプリ ランチャーは、アプリケーションのサインオン URL へのサインオンを開始します。

OpenID Connect を使用していると仮定します。Azure AD で、サインオン URL が正しいことを確認します。これは、アプリケーションの "Office 365 でサインイン" と同じリンクである必要があります。

ここに画像の説明を入力

于 2016-05-09T12:27:34.160 に答える
0

そのため、この問題を解決することができました。問題は、エンドポイント URL のパラメーターの 1 つにありました。オプションの「prompt」パラメーターを含めました。

プロンプト (オプション) 必要なユーザー対話のタイプを示します。有効な値は次のとおりです。 -- login: ユーザーに再認証を求めるプロンプトが表示されます。 -- consent: ユーザーの同意が付与されていますが、更新する必要があります。ユーザーに同意を求めるプロンプトが表示されます。-- admin_consent: 管理者は、組織内のすべてのユーザーに代わって同意するよう求められる必要があります。

省略した場合の動作は記述しないことに注意してください。とにかくそれを削除するとうまくいきました。

于 2016-05-25T06:08:26.727 に答える