2017-05-06 10 views
0

を使用してユーザーを認証することができない私は、Java APIを使用していない私は、リンク上でのJavaコードの言及を使用しようとしていますAzureのActive Directoryの

java.util.concurrent.ExecutionException: com.microsoft.aad.adal4j.AuthenticationException: {"error_description":"AADSTS50055: Force Change Password.\r\nTrace ID: 7596cf92-f3d6-4baf-a0c9-d166a92d1500\r\nCorrelation ID: 8cccb074-4ae4-4c9b-932b-1f4ddcb514cb\r\nTimestamp: 2017-05-05 08:20:28Z","error":"user_password_expired"} 

答えて

0

が、私はすることができますユーザーのパスワードが

  • 期限が切れてい

    1. あなたは、リソースの所有者のパスワード・グラント・フローに
    を使用している:あなたは、問題の核心ある二つのことを教えて

    ユーザーがパスワードをリセットできるように、アプリケーションを変更してブラウザウィンドウを表示する必要があります。そのままコードをテストしたい場合は、新しいシークレット/プライベート/ InPrivateウィンドウを開いて、たとえばにログインします。ユーザーとportal.azure.com。これにより、パスワードが有効かどうかを確認することができます。

    しかし、このような潜在的な問題のために、このサインインフローを使用しないことをお勧めします。

    エラーが発生する理由は、ユーザーが新しいパスワードを設定する必要がありますが、使用しているフローがそのシナリオをサポートできないためです。また、ユーザーアカウントがMFAを有効にしている/マイクロソフトアカウントなどのシナリオをサポートすることはできません。

    そして、このアプリケーションがユーザーによって使用されることは意図されていませんが、必要なAPIのアプリケーション権限を持つデーモンにして、認証にクライアントの資格情報フローを使用することをお勧めします。アプリに必要な権限があるため、ユーザーアカウントは必要ありません。

  • 関連する問題