3

現在、次のプロセスから SWT トークンを取得する WPF Windows アプリがあります。

  • 以下を呼び出してプロバイダーを取得します。

$"{Namespace}/v2/metadata/IdentityProviders.js?protocol=javascriptnotify&realm={HttpUtility.UrlEncode(realm)}&version=1.0"

  • 指定された LoginUrl を非表示の Web ブラウザに呼び出します
  • ユーザーは、AD のユーザー名とパスワードの入力を求められます
  • ObjectForScripting を使用して通知アクションをキャッチし、トークンを取得します
  • トークンを Web サーバーに送信し、トークンが検証され、適切なアプリ ユーザー ログインがクレームで完了します。

問題は、再度ログインしようとすると、ユーザー名とパスワードを再度要求する代わりに、以前の資格情報を再利用することです。

私が試したこととうまくいかないこと:

  • ログインと同時に指定されたログアウト URL に移動します。それは何かのように見えます

https://{AD_URL}/adfs/ls/?wa=wsignout1.0

  • Azure ACS 名前空間でログアウトを直接呼び出してみますが、エラー ページが表示されます

{namespace}/v2/wsfederation?wa=wsignoutcleanup1.0&wtrealm={HttpUtility.UrlEncode(realm)}

  • Web ブラウザー コントロールを破棄し、新しいものを作成します。

上記のいずれも機能せず、常に資格情報を再利用します。

4

0 に答える 0