Azure DevOps サービス
Azure DevOps には、Microsoft Entra グループと Azure DevOps グループのグループベースのアクセス レベルが用意されています。これにより、アクセス レベルをユーザーのグループ全体に割り当ててアクセス許可を効率的に管理することができます。 この記事では、ユーザーのグループにアクセス レベルを割り当てるグループ規則を追加する方法について説明します。
アクセス レベルとプロジェクト メンバーシップの両方を管理するグループ規則を割り当てます。 ユーザーが複数のルールまたは異なるアクセス レベルを持つ Microsoft Entra グループに属している場合、ユーザーは最高レベルを受け取ります。
例: ユーザーが 2 つの Microsoft Entra グループ (1 つは利害関係者を割り当て、もう 1 つは Basic) に属している場合、ユーザーは Basic アクセスを受け取ります。
ユーザーが Microsoft Entra グループを離脱すると、グループの定義された規則に従い、Azure DevOps によってアクセス レベルが調整されます。 そのグループがユーザーの唯一のアクセス元だった場合、Azure DevOps によって自動的に組織から削除されます。 ユーザーが他のグループに属している場合は、アクセス レベルとアクセス許可が再評価されます。
注
- Azure DevOps は、グループ ルールによって付与されたリソースを、構成済みグループのすべてのメンバーに適用します。 ただし、アクセスとアクセス許可は、ユーザーが初めて組織にサインインした後にのみ有効になります。
- [ユーザー] ページの [グループ ルール] タブに表示されているルールを定期的に確認します。 Microsoft Entra ID グループ メンバーシップに対する変更は、次のグループ ルールの再評価中に表示されます。これは次のようになります。
- 手動でトリガーしたときにオンデマンドで実行されます
- グループ ルールを変更すると自動的に
- 24 時間ごとに自動的に実行されます。 Azure DevOps は 1 時間ごとに Microsoft Entra グループ メンバーシップを更新しますが、Microsoft Entra ID は 動的グループ メンバーシップを更新するのに最大 24 時間かかる場合があります。
- 現在、ライセンスのグループルールは、サービス プリンシパルとマネージド ID には適用されません。 サービス プリンシパルまたはマネージド ID にアクセス レベルを割り当てるには、グループ メンバーシップではなく、直接割り当てます。 詳細については、「Azure DevOpsでサービス プリンシパル & マネージド ID を使用する」を参照してください。
前提条件
| カテゴリ | 要件 |
|---|---|
| アクセス許可 | プロジェクト コレクション管理者グループのメンバー。 組織の所有者は、自動的にこのグループのメンバーになります。 |
| Microsoft Entra | 組織をサポートする Microsoft Entra ID のメンバー。 詳細については、「Microsoft Entra を使用したアクセス に関する FAQ」を参照してください。Microsoft Entra ゲストは、Azure DevOps で必要な方法で Microsoft Entra ID を検索できません |
グループ ルールを追加する
組織にサインインします (
https://dev.azure.com/{Your_Organization})。
[組織の設定] を選択します。[ Users>Group rules>グループ ルールの追加を選択します。 このビューには、作成したすべてのグループ規則が表示されます。
グループ規則は、プロジェクト コレクション管理者グループのメンバーである場合にのみ表示されます。
規則を作成するグループのダイアログ ボックスの入力を完了します。 グループのアクセス レベルと、省略可能なグループのプロジェクト アクセスを含めます。 追加を選択します。
通知が表示され、ルールの状態と結果が表示されます。 割り当てが失敗した場合は、[ 状態の表示 ] を選択して詳細を表示します。
重要
- ユーザーが初めてサインインを試みるまで、[すべてのユーザー] には表示されません。
アクセス レベルの変更
- ユーザーがサインインすると、ルールによって現在のレベルよりも高いレベルが割り当てられている場合、グループ ルールによってアクセス レベルが自動的に調整されます。 たとえば、グループ ルールで Basic が割り当てられている場合、利害関係者アクセス権を持つユーザーが Basic にアップグレードされます。
- ユーザーが既にグループルールが提供するアクセス レベルよりも高いアクセス レベルを持っている場合、そのアクセス権は同じままです。 たとえば、グループ ルールで利害関係者が割り当てられている場合、ユーザーが手動で割り当てた Basic アクセスはダウングレードされません。
グループ メンバーの管理
Microsoft Entra ID グループのグループ ルールは、Azure portal でメンバーシップを管理します。 Azure DevOps グループのグループ ルールは、グループ ルール 画面でメンバーシップを管理します。
[グループ規則]>
>[メンバーの管理] の順に選択します。
メンバーを追加し、[追加] を選択します。
グループ規則を確認する
リソースが各グループと個々のユーザーに適用されることを確認します。
[すべてのユーザー] を選択します。
ユーザーを強調表示します。
[ 概要] を選択します。
直接割り当てを削除する
ユーザーに直接割り当てがあり、グループ ルールにより高いアクセス レベルが付与されると、Azure DevOps によってユーザーが自動的に上位レベルにアップグレードされます。 グループ ルールを使用してアクセス レベルを排他的に管理するには、すべての直接割り当てを削除します。
組織にサインインします (
https://dev.azure.com/{Your_Organization})。
[組織の設定] を選択します。
[ユーザー] を選択します。
グループによる管理のみのリソースを持つすべてのユーザーを選択します。
直接割り当ての削除を確定するには、[削除] を選択します。
ユーザーがグループのメンバーでない場合、ユーザーは影響を受けません。
よく寄せられる質問
Q: Visual Studio Subscription とグループ規則はどのように機能しますか?
A: Visual Studio サブスクライバーは常に Visual Studio 管理ポータル経由で直接割り当てられ、Azure DevOps では、直接またはグループ規則経由で割り当てられたアクセス レベルよりも優先されます。 [ユーザー ハブ] からこれらのユーザーを表示すると、[ライセンス ソース] には常に [直接] と表示されます。 唯一の例外は、Basic + Test Plans が割り当てられている Visual Studio Professional サブスクライバーです。 Basic + Test Plans では Azure DevOps よりも多くのアクセス権が付与されるため、Visual Studio Professional サブスクリプションよりも優先されます。 Visual Studio ではポータルから直接そのライセンスが割り当てられるため、Visual Studio サブスクリプション アクセスを割り当てるグループ ルールを構成することはできません。
Q: GitHub Enterprise ライセンスはグループ ルールでどのように機能しますか?
A:
- Azure DevOps は、サインイン時にユーザーが GitHub Enterprise ライセンスを持っているかどうかを確認します。 アクセス レベルが GitHub Enterprise に更新されるまでに最大 24 時間かかる場合があります。 GitHub Enterprise を使用するユーザーは、Basic アクセスと同じ GitHub Enterprise アクセス レベルを自動的に受け取ります。
- GitHub Enterprise ユーザーがテスト プランにアクセスする必要がある場合は、Basic + Test Plans ライセンスを直接、またはグループ ルールを使用して割り当てます。
- GitHub はポータルから直接そのライセンスを割り当てるので、GitHub Enterprise アクセスを割り当てるグループ ルールを構成することはできません。
- ユーザーが有効な GitHub Enterprise ライセンスを持っていない場合:
- 組織がグループ ルールを構成している場合: ユーザーは、グループ メンバーシップで指定されたアクセス権を受け取ります。
- 組織がグループ ルールを構成していない場合: ユーザーは組織の既定のアクセス レベルを受け取ります。