注: 以下の翻訳の正確性は検証されていません。AIPを利用して英語版の原文から機械的に翻訳されたものです。

リソース保護とプロジェクト承認ポリシー

ブランチと承認ポリシーを通じてリソースを保護することで、すべての変更が安全かつ管理された方法で行われるようになります。リソースが保護されている場合、変更はブランチ経由で送信する必要があり、プロジェクトで定義されたポリシーに従って承認を受けた後にのみマージできます。

リソース保護

重要なワークフローを守ったり、開発のベストプラクティスを維持したりするために、リソースのメインブランチを保護できます。保護されたリソースは直接変更できません。代わりに、ブランチ上で変更を行い、承認を受けてからメインブランチにマージする必要があります。

ブランチには、保護されたリソースと保護されていないリソースの両方を含めることができます。ただし、プロジェクトの承認ポリシーに従ってブランチ上で変更する必要があるのは、保護されたリソースのみです。保護されていないリソースへの変更にも、別途指定されていない限り、編集レベルの権限を持つユーザーの承認が必要です。

保護されたリソースは、Compass ファイルシステムの 保護されたリソースのロック。 アイコン(ブランチロック)で識別できます。

リソースの所有者権限を持つユーザーは、そのリソースを保護したり、保護を解除したりできます。ファイルシステムから、リソースを個別に、または複数選択によって一括で保護できます。リソースを保護するには、リソースを右クリックし、現在のステータスに応じて保護または保護解除を選択します。Workshop リソースは、Workshop アプリケーション内で設定に移動し、ブランチの保護タブを選択して保護することもできます。

単一のリソースを保護する。

ブランチ保護タブ

プロジェクトのブランチ保護タブには、2つの用途があります。

  • ブランチ承認ポリシーの定義: プロジェクトの所有者は、ブランチ保護タブでプロジェクト承認ポリシーを定義できます。
  • 新しいファイルの自動保護: この設定をオンにすると、プロジェクト内で新しく作成されるすべてのファイルが自動的に保護されます。

プロジェクト承認ポリシー

リソースが保護されると、そのリソースへの変更はすべてブランチ上で行い、承認プロセスを経る必要があります。承認ポリシーはプロジェクトレベルで設定され、保護されたリソースへの変更をマージするために必要な承認を定義します。

デフォルトの承認ポリシー

プロジェクトでデフォルトの承認ポリシーの選択肢を選ぶと、プロジェクト内の各リソースは、それぞれのデフォルトのポリシーによってのみ保護されます。各リソースについて、そのリソースを所有するアプリケーションがこれらのポリシーを定義します。たとえば、オントロジーはオブジェクトタイプのデフォルトのポリシーを定義します。

これらのポリシーは通常、単純です。変更者と承認者は、リソース自体への編集アクセス権を持っている必要があります。ただし、より複雑な場合もあります。特定のリソースの正確なポリシーを確認するには、以下のリソースの承認ポリシーを表示するを参照してください。

デフォルトのポリシーは、次のいずれかの方法で満たされます。

  • 自動:変更者自身の権限がポリシーの要件を満たしている場合です。
  • レビューによる承認:必要な権限を持つ別のユーザーが変更を承認した場合です。

たとえば、SomeResource に2つのデフォルトのポリシーがあるとします。

  • ポリシー1は権限 X を必要とします
  • ポリシー2は権限 Y を必要とします

この場合、次のようになります。

  1. ユーザー A は権限 X を持っています。ユーザー A がブランチ上でリソースを変更すると、ポリシー1が自動的に満たされます。
  2. ユーザー B は権限 Y を持っています。ユーザー B が変更をレビューして承認すると、ポリシー2が満たされます。
  3. これで両方のデフォルトのポリシーが満たされ、変更を進められます。

1人のユーザーが両方のポリシーを単独で満たすこともできます。ユーザー C は権限 X と権限 Y の両方を持っているため、別の承認者なしでリソースを変更し、その変更をマージできます。ユーザー C の権限が両方のポリシーの要件を満たしているためです。

デフォルトの承認ポリシーを持つプロジェクトの例:

デフォルトの承認ポリシーを持つプロジェクト。

カスタム承認ポリシー

承認ポリシーには、カスタマイズ可能なパラメーターが3個あります。

  • 適格なレビュー担当者: 保護されたリソースのメインブランチへの変更をレビューし、承認することが許可されているユーザーまたはグループです。
  • 必要な承認の数: 必要な承認の最小数です。
  • 変更者による承認: リソースの変更者が、そのリソースへの変更を承認できるかどうかを指定します。変更者とは、ブランチ上でそのリソースに変更を加えたユーザーを指します。

プロジェクトにポリシーが作成されると、ブランチを作成してから提案を作成した際に、そのプロジェクト内のすべての保護されたリソースにポリシーが即座に適用されます。また、ポリシーを更新して制約を強めたり緩めたりすると、そのポリシーにリンクされた提案が更新され、新しいポリシーの要件に照らしてステータスが再評価されます。プロジェクトのカスタムポリシーを更新できるのは、そのプロジェクトの所有者であるユーザーのみです。

カスタム承認ポリシーを持つプロジェクトの例:

カスタム承認ポリシーを持つプロジェクト。

リソースを新しいプロジェクトに移動する

リソースをプロジェクト間で移動しても、そのリソースの保護ステータスは維持されます。たとえば、次のようになります。

  • 保護されたリソースを新しいプロジェクトに移動する場合: リソースは新しいプロジェクトでも保護されたままになります。
  • 保護されていないリソースを新しいプロジェクトに移動する場合: リソースは新しいプロジェクトでも保護されていないままになります。

保護されたリソースを新しいプロジェクトに移動すると、そのリソースへの変更はすべてブランチ上で行う必要があり、新しいプロジェクトの承認ポリシーに従います。

未完了の提案があるリソースを移動する

未完了の提案があるリソースを新しいプロジェクトに移動した場合、既存の提案でリソースのポリシーに新しいプロジェクトのポリシーが表示されるまで、最大1日かかることがあります。ブランチ上のモジュールを更新するか、提案のマージを試みることでも、リソースのポリシーが更新され、新しいプロジェクトのポリシーと一致するようになります。

プロジェクトポリシーをローカルのブランチ保護と併用する

コードリポジトリと Pipeline Builder には、どちらもローカルのブランチ保護の仕組みと承認ポリシーがあります。これらは引き続き維持されます。

将来的には、コードリポジトリと Builder のパイプラインでプロジェクト承認ポリシーの使用を選択できるようになります。

リソースの承認ポリシーを表示する

提案ページのレビュー担当者列、またはブランチのタスクバーで 👤 ボタンを選択すると、リソースに適用される承認ポリシーを表示できます。これにより、レビュー担当者の管理と承認ポリシーの2つのタブを持つポップオーバーが開きます。

承認ポリシータブには、特定のリソースに適用されるカスタムポリシー(プロジェクトレベルまたはリソースレベルで設定されたもの)とデフォルトのポリシーの両方が表示されます。また、各ポリシーについて、適格なレビュー担当者、必要な承認の数、変更者による承認が許可されているかどうかなどの追加情報も確認できます。

提案ページの承認ポリシー。

レビュー担当者の管理タブには、レビューを依頼した相手とレビューのステータスが表示されます。また、編集ボタンを使用してレビュー担当者を追加したり、外したりできます。

提案ページのレビュー担当者の管理。