この記事では、証明書ベースの認証 (CBA) を使用してアプリケーションまたはリソースにアクセスするときに発生する Microsoft Entra 認証AADSTS50017 エラーの解決策について説明します。
現象
CBA を使用してアプリケーションまたはリソースにアクセスしようとすると、サインイン プロセスが失敗し、次のエラー メッセージが表示されます。
AADSTS50017: 証明書ベースの認証に対する特定の証明書の検証に失敗しました。
原因 1: 証明書チェーンのエラーまたは検証エラー
AADSTS50017 エラーは、次の問題が原因で発生する可能性があります。
ストアに証明機関 (CA) 証明書がないための証明書チェーンエラー。
サブジェクト キー識別子 (SKI) と機関キー識別子 (AKI) の値を使用した検証エラー。
公開キー 基盤 (PKI) では、証明書チェーンの検証プロセスによって、証明書チェーンの整合性と信頼性が保証されます。 SKIとAKIは、このプロセスで重要な役割を果たします。 SKI は、証明書によって保持されている公開キーの一意の識別子を提供します。 AKI は、証明書を発行する CA を識別するために使用されます。
この問題を解決するには、次の手順を実行します。
発行元の証明書が信頼された証明書の一覧に正しくアップロードされているかどうかを確認します。
証明書チェーンは、一緒にリンクされた複数の証明書で構成されます。 エンド ユーザーの証明書は、ルート CA または非ルート CA (中間 CA) によって発行できます。 ルート以外の発行元 CA (中間 CA) がある場合は、中間 CA 証明書とルート CA 証明書の両方を Microsoft Entra CA 信頼ストアにアップロードする必要があります。
証明書の SKI 値を確認し、AKI 値が信頼されたストアにアップロードされた中間またはルート CA 証明書と一致するかどうかを確認します。
一致するものがない場合は、証明書または不足している CA 証明書を適宜変更する必要があります。 これを行うには、Microsoft Entra 管理センター 使用して証明機関を構成。
SKI と AKI の値を取得するには、証明書の詳細を確認し、CA 証明書を発行してアップロードします。
証明書の種類 特徴 ルート CA 証明書 それは独自の SKI を持っています。 必要に応じて中間証明書を発行できます。 AKI フィールドは含まれません。 CA 証明書の発行または中間 (該当する場合) その AKI はルート CA 証明書の SKI を指します。 ユーザー証明書の AKI に一致する独自の SKI があります。 ユーザー証明書を発行し、必要に応じて中間証明書を発行できます。 複数の中間 CA 証明書が存在する可能性があります。 エンド エンティティ (ユーザーまたはクライアント) 証明書 それは独自の SKI を持っています。 その AKI は、発行元の CA 証明書の SKI を指しています。
原因 2: 無効な証明書
証明書チェーン内の証明書に、証明書ポリシー拡張機能などの有効な拡張機能識別子がない場合は、AADSTS50017 エラーが発生する可能性があります。
このエラーを解決するには、ユーザー証明書、中間 CA 証明書、ルート CA 証明書など、証明書チェーン内のすべての証明書の証明書ポリシー拡張機能を検証します。 証明書ポリシー拡張機能とそのオブジェクト識別子 (OID) がチェーン全体で一貫性があり、有効であることを確認します。
一貫性と有効性のポリシー OID を確認するには、チェーン内の関連する証明書を取得し、次のように検証します。
証明書ポリシー拡張機能がない証明書がある場合は、適切な証明書ポリシー拡張機能が埋め込まれた状態で CA 証明書またはエンド ユーザー証明書を再発行します。
ポリシー拡張機能とその他のサポートされる拡張機能の詳細については、「 サポートされる拡張機能」を参照してください。
AADSTS エラー コード リファレンス
認証と承認のエラー コードの完全な一覧については、「microsoft Entra 認証と承認のエラー コードを参照してください。 個々のエラーを調査するには、 https://login.microsoftonline.com/error
で検索します。
お問い合わせはこちらから
質問がある場合やヘルプが必要な場合は、サポート要求を作成するか、Azure コミュニティ サポートにお問い合わせください。 Azure フィードバック コミュニティに製品フィードバックを送信することもできます。