エラー「あなた、またはこのルールの実行者に必要な権限がありません」のため、自動化ルールを有効にしたり、保存したりできない
プラットフォームについて: Server および Data Center のみ。この記事は、Server および Data Center プラットフォームのアトラシアン製品にのみ適用されます。
Support for Server* products ended on February 15th 2024. If you are running a Server product, you can visit the Atlassian Server end of support announcement to review your migration options.
*Fisheye および Crucible は除く
要約
プロジェクトでアドオン Automation for Jira に由来する自動化ルールを ([プロジェクト設定] > [プロジェクト自動化] ページで) 設定した後、それを有効に (または保存) しようとすると、次のエラーにより失敗します。
Error
Either you or the rule actor for this rule is missing some required permissions:
"EDIT_ISSUES"
このナレッジ ベースの例は、EDIT_ISSUES の権限に基づいていますが、設定されているアクションに応じて、ASSIGN_ISSUES や TRANSITION_ISSUES など、他の権限がない場合にも同様に適用されます。こうした他のエラーについては、対応する権限をご確認ください。
環境
- Jira 8.x または Jira Service Management 4.x
- Automation for Jira アドオン (すべてのバージョン)
原因
根本原因 1 (Jira Server と Data Center の両方に適用)
自動化ルールを有効にしようとしているユーザーまたはルールのアクターに、自動化ルールのスコープにあるすべてのプロジェクト全体に対する「課題を編集」プロジェクト権限が付与されていません。
Please note that currently, the Automation for Jira error message will not explicitly specify a list of projects that lack the required permission for your user. We do have a feature request for adding such functionality in a product that tracks customer interest for this issue:
JRASERVER-72888 - 課題詳細を取得中... ステータス
根本原因 2 (Jira Data Center にのみ適用)
自動化ルールのスコープに含まれるプロジェクトの 1 つがアーカイブされました。
診断
どの根本原因が関連しているかにかかわらず、最初にするべきことは自動化ルールのスコープと自動化ルールのアクターを [ルールの詳細] セクションで特定することです (以下スクリーンショット参照)。
プロジェクトのリストをルール スコープとルールのアクターから特定したら、根本原因 1 と 2 の [診断] セクションに移動できます。
根本原因の診断 1
⚙ > [システム] > [権限ヘルパー] ページの順に移動して、ルールのアクターと、ルールを有効にしようとしているユーザー (両ユーザーは異なる場合があります) の両者に対して次のテストを実行します。このテストは、自動化ルールのスコープにある各プロジェクトに対して実行する必要があることにご注意ください。
- ユーザー: アクター (またはルールを有効にしようとしているユーザー)
- 課題: プロジェクト内の課題キーの例を 1 つ選択
- 権限: 課題を編集
このテストが少なくとも 1 つのプロジェクトと、アクターまたはルールを有効にしようとしているユーザーのいずれかで失敗した場合は、この根本原因が関係しています。
テストの失敗例
根本原因の診断 2
⚙ > [プロジェクト] > [アーカイブ プロジェクト] の順に移動して、ここにリストされている自動化ルールのスコープで定義されているプロジェクトが表示されているかどうかを確認します。
ここにリストされているルール スコープにあるプロジェクトのいずれかが表示される場合は、この根本原因が関連しています。
アーカイブ済みプロジェクトをスコープとする自動化ルールを Jira データベース経由で探しています。
スコープ内のアーカイブ済みプロジェクトを使用しているすべての自動化ルールのリストを特定する必要がある場合は、次の SQL クエリを実行できます。
なお、上記の SQL クエリは PostgreSQL データベースでテストされました。別のタイプのデータベースを使用している場合は、若干の変更が必要になることがあります。
SELECT
rule_project_assoc."RULE_CONFIG_ID",
rule_config."NAME",
p.id,
p.pname,
p.pkey
FROM
propertyentry pe
JOIN
project p ON pe.entity_id = p.id
JOIN
"AO_589059_RULE_CFG_PROJ_ASSOC" rule_project_assoc ON p.id = CAST(rule_project_assoc."PROJECT_ID" AS INT)
JOIN
"AO_589059_RULE_CONFIG" rule_config ON rule_project_assoc."RULE_CONFIG_ID" = rule_config."ID"
WHERE
property_key = 'jira.archiving.projects'
ORDER BY
rule_project_assoc."RULE_CONFIG_ID";
出力の例は次のとおりです。この出力を見ると、1 つ目のルールのスコープには 2 つのアーカイブ済みプロジェクトが含まれており、2 つ目のルールのスコープには 1 つのアーカイブ済みプロジェクトが含まれていることがわかります。
36 "Some automation rule 1" 10800 "ABC" "Project ABC"
36 "Some automation rule 1" 10301 "DEF" "Project DEF"
61 "Some automation rule 2" 10800 "ABC" "Project ABC"
ソリューション
根本原因の解決策 1
Make sure that both the rule actor and the user trying to enable the rule are granted the Edit Issues permission within each project listed in the scope of the automation rule. In case your Automation rule has more than one project in scope, you could verify EDIT_ISSUES
permission against a list of the projects using recommendations from Automated verification of user permissions using CLI tools and REST API KB article.
Important note for Jira Service Management projects: for this type of project, a user can only edit issues if this user is acting as an "agent" of the Service Management project, meaning that this user needs to verify the 2 following conditions (in addition to being granted the Edit Issues permission):
- このユーザーには Jira Service Management アプリケーションへのアクセス (Jira Service Management ライセンス経由) が付与されている必要があります。
- このユーザーには サービス デスク エージェント権限がプロジェクト権限スキームで付与されている必要があります。
根本原因の解決策 2
Remove the archived project from the rule's scope.
There is an existing enhancement request aimed at enhancing the error descriptions for this particular scenario: JIRAAUTOSERVER-832: Automation rule should provide correct error message when rule scope has an archived project.