アクセスとアクセス許可に関する問題のトラブルシューティング

Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019

Azure DevOps の広範なセキュリティとアクセス許可の構造により、ユーザーが期待するプロジェクト、サービス、または機能へのアクセス権がない理由を調査することが必要になる場合があります。 プロジェクトに接続するとき、または Azure DevOps サービスまたは機能にアクセスするときにユーザーが発生する可能性がある問題を理解し、対処するための詳細なガイダンスを見つけます。

このガイドを使用する前に、次の内容を理解することをお勧めします。

ヒント

Azure DevOps セキュリティ グループを作成するときは、アクセスを制限することを目的としているかどうかを明確に示すようにラベルを付けます。

アクセス許可は、次のレベルで設定できます。

  • オブジェクト レベル
  • プロジェクト レベル
  • 組織またはプロジェクトのコレクション レベル
  • セキュリティ ロール
  • チーム管理者ロール

アクセスとアクセス許可に関する一般的な問題

プロジェクト メンバーがプロジェクト、サービス、または機能にアクセスできない最も一般的な理由を確認します。

問題点 トラブルシューティング アクション
アクセス レベルは、サービスまたは機能へのアクセスをサポートしていません。 それが原因かどうかを判断するには、 ユーザーのアクセス レベルとサブスクリプションの状態を確認します
セキュリティ グループ内のメンバーシップでは、機能へのアクセスがサポートされていないか、機能へのアクセス許可が明示的に拒否されました。 それが原因かどうかを判断するには、 アクセス許可をトレースします
ユーザーには最近アクセス許可が付与されましたが、変更を認識するにはクライアントに更新が必要です。 ユーザーに アクセス許可を更新または再評価してもらいます
ユーザーは、特定のチームのチーム管理者にのみ付与された機能を実行しようとしていますが、そのロールは付与されません。 ロールに追加するには、「 追加、チーム管理者の削除」を参照してください。
ユーザーがプレビュー機能を有効にしませんでした。 ユーザーにプレビュー機能を開き、特定の機能のオン/オフ状態を確認させます。 詳細については、「 プレビュー機能の管理」を参照してください。
プロジェクト メンバーが、Project Scoped Users グループなどの制限付きスコープ セキュリティ グループに追加されました。 それが原因かどうかを判断するには、 ユーザーのセキュリティ グループ メンバーシップを検索します

アクセスとアクセス許可に関するあまり一般的でない問題

アクセスが制限される一般的な理由は、次のいずれかのイベントが発生した場合です。

問題点 トラブルシューティング アクション
プロジェクト管理者がサービスを無効にしました。 この場合、無効なサービスに誰もアクセスできません。 サービスが無効になっているかどうかを確認するには、「 Azure DevOps サービスのオンとオフを切り替える」を参照してください。
プロジェクト コレクション管理者がプレビュー機能を無効にしました。これにより、組織内のすべてのプロジェクト メンバーに対して無効になります。 「プレビュー機能の管理」を参照してください。
ユーザーのアクセス レベルまたはプロジェクト メンバーシップを管理するグループ ルールは、アクセスを制限しています。 「ユーザーのアクセス レベルとサブスクリプションの状態を確認する」を参照してください。
カスタム ルールは、作業項目の種類のワークフローに対して定義されました。 「選択操作を制限する作業項目の種類に適用されるルール」を参照してください。

ユーザーのアクセス レベルとサブスクリプションの状態を決定する

ユーザーまたはユーザーのグループは、次のいずれかのアクセス レベルに割り当てることができます。

  • 利害関係者
  • Basic
  • 基本 + Test Plans
  • Visual Studio サブスクリプション

Azure DevOps でのアクセス レベルの制限の詳細については、「サポートされているアクセス レベル」を参照してください

Azure DevOps 機能を使用するには、適切なアクセス許可を持つセキュリティ グループにユーザーを追加し、Web ポータルにアクセスできる必要があります。 機能の制限は、ユーザーのアクセス レベルとセキュリティ グループに基づいています。

ユーザーは、次の理由でアクセスを失う可能性があります。

アクセスの損失の理由 トラブルシューティング アクション
ユーザーの Visual Studio サブスクリプションの有効期限が切れています。 一方、このユーザーは 利害関係者として作業することも、ユーザーがサブスクリプションを更新するまでユーザーに Basic アクセス権を付与することもできます。 ユーザーがサインインすると、Azure DevOps によって自動的にアクセスが復元されます。
課金に使用される Azure サブスクリプションはアクティブではなくなりました。 このサブスクリプションで行われたすべての購入は、Visual Studio サブスクリプションを含め、影響を受けます。 この問題を解決するには、 Azure アカウント ポータルにアクセスしてください。
課金に使用される Azure サブスクリプションが組織から削除されました。 組織のリンクに関する詳細情報

それ以外の場合、カレンダー月の最初の日に、最も長い時間組織にサインインしなかったユーザーは、最初にアクセスできなくなります。 アクセスが不要になったユーザーが組織にある場合は、 組織から削除します

アクセス許可の詳細については、「アクセス許可とグループ」および「アクセス許可の参照ガイド」を参照してください。

アクセス許可をトレースする

アクセス許可トレースを使用して、ユーザーのアクセス許可が特定の機能または機能へのアクセスを許可していない理由を判断します。 ユーザーまたは管理者がアクセス許可の継承を調査する方法について説明します。 Web ポータルからアクセス許可をトレースするには、対応するレベルのアクセス許可またはセキュリティ ページを開きます。 詳細については、「 アクセス許可レベルの引き上げを要求する」を参照してください。

ユーザーにアクセス許可の問題があり、アクセス許可に既定のセキュリティ グループまたはカスタム グループを使用している場合は、トレースを使用してそれらのアクセス許可の送信元を調査します。 アクセス許可の問題は、変更の遅延が原因である可能性があります。 Microsoft Entra グループ メンバーシップまたはアクセス許可の変更が Azure DevOps 全体に反映されるまでに最大 1 時間かかることがあります。 すぐに解決しない問題が発生した場合は、1 日待って解決するかどうかを確認します。 ユーザーとアクセスの管理の詳細については、「 Azure DevOps でユーザーとアクセスを管理する」を参照してください。

ユーザーにアクセス許可の問題があり、アクセス許可に既定のセキュリティ グループまたはカスタム グループを使用している場合は、アクセス許可トレースを使用して、これらのアクセス許可の送信元を調査できます。 アクセス許可の問題は、ユーザーに必要なアクセス レベルがないためである可能性があります。

ユーザーは、有効なアクセス許可を直接またはグループ経由で受け取ることができます。

管理者がこれらのアクセス許可の取得元を正確に把握し、必要に応じて調整できるように、次の手順を実行します。

  1. [ プロジェクト設定>] [アクセス許可>] [ユーザー] の順に選択し、ユーザーを選択します。

    フィルター ボックスのスクリーンショット。ユーザー名を入力します。

    これで、ユーザー固有のビューが表示され、ユーザーが持っているアクセス許可が表示されます。

  2. ユーザーがアクセス許可を持っている、または一覧に含まれていない理由をトレースするには、該当するアクセス許可の横にある情報アイコンを選択します。

対象のアクセス許可の横にある情報アイコンを選択するスクリーンショット。

結果のトレースを使用すると、一覧表示されているアクセス許可を継承する方法を確認できます。 その後、ユーザーが参加しているグループに提供されるアクセス許可を調整することで、ユーザーのアクセス許可を調整できます。

  1. [プロジェクト設定] [セキュリティ] > の順に選択し、フィルター ボックスにユーザー名を入力します。

    フィルター ボックスにユーザー名を入力するスクリーンショット(Azure DevOps Server 2019)。

    これで、ユーザー固有のビューが表示され、ユーザーが持っているアクセス許可が表示されます。

  2. ユーザーが一覧表示されているアクセス許可を持っているか、または持っていない理由をトレースします。 アクセス許可にカーソルを合わせ、[ 理由] を選択します。

    プロジェクト レベル情報の [アクセス許可] リスト ビューの [理由の選択] のスクリーンショット (Azure DevOps Server 2019)。

結果のトレースを使用すると、一覧表示されているアクセス許可を継承する方法を確認できます。 その後、ユーザーが参加しているグループに提供されるアクセス許可を調整することで、ユーザーのアクセス許可を調整できます。

継承されたアクセス許可を示すトレースのスクリーンショット(Azure DevOps Server 2019)。

詳細については、「特定の機能へのアクセスを管理する」または「アクセス許可レベルの引き上げを要求する」を参照してください。

アクセス許可を更新または再評価する

アクセス許可の更新または再評価が必要になる可能性がある次のシナリオを参照してください。

問題

ユーザーは Azure DevOps または Microsoft Entra グループに追加されます。 このアクションにより、継承されたアクセス権が組織またはプロジェクトに付与されます。 しかし、すぐにはアクセスできません。 ユーザーは、待つかサインアウトするか、ブラウザーを閉じてからサインインし直して、アクセス許可を更新する必要があります。

ユーザーは Azure DevOps グループに追加されます。 このアクションにより、継承されたアクセス権が組織またはプロジェクトに付与されます。 しかし、すぐにはアクセスできません。 ユーザーは、待つかサインアウトするか、ブラウザーを閉じてからサインインし直して、アクセス許可を更新する必要があります。

解決策

[ユーザー設定>] の [アクセス許可>の再評価] アクセス許可移動します。 この関数は、グループのメンバーシップとアクセス許可を再評価し、最近の変更が直ちに有効になります。

[アクセス許可の再評価] コントロールのスクリーンショット。

選択操作を制限する作業項目の種類に適用されるルール

プロセスをカスタマイズする前に、「Azure Boardsの構成とカスタマイズ」を確認することをお勧めします。ここでは、ビジネス ニーズに合わせてAzure Boardsをカスタマイズする方法に関するガイダンスを提供します。

操作の制限に適用される作業項目の種類のルールの詳細については、次を参照してください。

組織の設定をユーザーに対して非表示にする

ユーザーが自分のプロジェクトのみを表示するように制限されている場合、または組織の設定にアクセスできない場合は、次の情報がその理由を説明している可能性があります。 ユーザーが組織の設定にアクセスできないようにするには、[ユーザーの可視性とコラボレーションを特定の プロジェクト に限定する] プレビュー機能を有効にします。 重要なセキュリティ関連の注意事項などについて詳しくは、組織の管理、プロジェクトのユーザーの可視性の制限、その他をご覧ください。

制限付きユーザーの例としては、利害関係者、Microsoft Entra ゲスト ユーザー、セキュリティ グループのメンバーなどがあります。 有効にすると、プロジェクト スコープ ユーザー グループに追加されたユーザーまたはグループは、[概要] と [プロジェクト] を除き、[組織] 設定ページへのアクセスが制限されます。 追加先のプロジェクトにのみアクセスできます。

制限付きユーザーの例としては、利害関係者、またはセキュリティ グループのメンバーが含まれます。 有効にすると、Project-Scoped Users グループに追加されたユーザーまたはグループは、[概要] ページと [プロジェクト] を除き、[組織の設定] ページへのアクセスが制限されます。 追加先のプロジェクトにのみアクセスできます。

詳細については、「 組織の管理」、「プロジェクトのユーザーの可視性を制限する」を参照してください

CLI を使用してアクセス許可を表示、追加、管理する

コマンドを使用して、詳細なレベル az devops security permission でアクセス許可を表示、追加、管理できます。 詳細については、「 コマンド ライン ツールを使用してアクセス許可を管理する」を参照してください。

アクセス許可が少ないグループ ルール

グループ ルールの種類は、サブスクライバー > の基本とテストプラン > の基本 > 利害関係者の順序でランク付けされます。 ユーザーは常に、Visual Studio (VS) サブスクリプションを含むすべてのグループ ルールで使用できる最高レベルのアクセス レベルを受け取ります。

Note

  • グループ ルールを使用してプロジェクト リーダー加えられた変更は保持されません。 プロジェクト リーダーを調整するには、直接割り当てカスタム セキュリティ グループなどの代替方法を検討してください。
  • [ユーザー] ページの [グループ ルール] タブに表示されているルールを定期的に確認します。 Microsoft Entra ID グループ メンバーシップの変更は、グループ ルールの次回の再評価に表示されます。これは、グループ ルールが変更されたときにオンデマンドで実行することも、24 時間ごとに自動的に行うこともできます。 Azure DevOps は 1 時間ごとに Microsoft Entra グループ メンバーシップを更新しますが、Microsoft Entra ID が動的グループ メンバーシップを更新するまでに最大 24 時間かかる場合があります。

サブスクライバー検出がグループ ルールにどのように要因を含めるかを示す、次の例を参照してください。

例 1: グループ ルールにより、より多くのアクセス権が与えられます

VS Pro サブスクリプションがあり、Basic + Test Plansを提供するグループ ルールに参加している場合、どうなりますか?

想定: グループ ルールが提供する内容がサブスクリプションよりも大きいため、Basic + Test Plansが表示されます。 グループ ルールの割り当てでは、アクセスを制限するのではなく、常にアクセスが大きくなります。

例 2: グループ ルールによって同じアクセス権が与えられます

Visual Studio Test Pro サブスクリプションがあり、Basic + Test Plansを提供するグループ ルールに含まれています。どうなりますか?

想定: アクセスがグループ ルールと同じであるため、Visual Studio Test Pro サブスクライバーとして検出されます。 Visual Studio Test Pro の料金は既に支払っているので、もう一度支払いたくありません。

GitHub を使用する

GitHub を使用して Azure DevOps にコードをデプロイする場合は、次のトラブルシューティング情報を参照してください。

問題

メンバーとして追加しても、チームの残りの部分を組織やプロジェクトに取り込むことはありません。 メールを受信しますが、サインインすると 401 エラーが発生します。

解決策

正しくない ID で Azure DevOps にサインインしている可能性があります。 手順は次のとおりです。

  1. Azure DevOps を実行していないブラウザーを含め、すべてのブラウザーを閉じます。

  2. プライベートまたはシークレット閲覧セッションを開きます。

  3. 次の URL に移動します: https://aka.ms/vssignout

    "サインアウト中" というメッセージが表示されます。サインアウトすると、次に dev.azure.microsoft.comリダイレクトされます。

  4. Azure DevOpsもう一度サインインし、別の ID を選択します。

アクセス許可が適用される可能性があるその他の領域