Jira Service Management - Data Center で同梱の Insight プラグインを無効化する方法

お困りですか?

アトラシアン コミュニティをご利用ください。

コミュニティに質問

プラットフォームについて: Data Center のみ - この記事は、Data Center プラットフォームのアトラシアン製品にのみ適用されます。

この KB は Data Center バージョンの製品用に作成されています。Data Center 固有ではない機能の Data Center KB は、製品のサーバー バージョンでも動作する可能性はありますが、テストは行われていません。サーバー*製品のサポートは 2024 年 2 月 15 日に終了しました。サーバー製品を利用している場合は、アトラシアンのサーバー製品のサポート終了のお知らせページにて移行オプションをご確認ください。

*Fisheye および Crucible は除く

要約

Jira Service Management 4.15.x 以降では Insight が同梱のプラグインになったため、Jira のユーザー画面のメイン メニューのオプション配下に Insight のオプションが表示されるようになっています。

多くのお客様が現在のユースケースで Insight プラグインを利用していない状況で Insight オプションがメニュー オプションでデフォルトで提供されているため、Insight を無効化してメイン メニューのオプションから取り除き、ユーザーの混乱を防ぎたい場合があります。これは他のプラグインを問題なく動作させるためにも役立ちます。

環境

JSM Data Center の 4.15.x 以降

診断

Insight プラグインはユーザーがインストールする形式のプラグインではなくなったため、Insight プラグインをバックエンドで手動で無効化する方法をいくつか紹介します。しかしながら次の理由により、アプリケーションの無効化は推奨されません。

  1. Insight Asset Management はJira Service Management (JSM) に製品の中核的な要素として同梱されています。Insight と JSM の連携は今後も強化される予定であり、Insight 機能を無効化できる機能の提供予定はありません。
  2. Insight では強力なアセットおよび構成管理機能を使って IT およびビジネス資産を作成、管理し、リクエスト、インシデント、変更などを通じてそれらを操作できます。ハードウェア、ソフトウェア、オフィスの備品など、所有しているあらゆる要素をひと目で把握し、わかりやすく分類できます。これらの機能は、当社が今後も注力を続ける IT サービス管理 (ITSM) 市場の土台となります。
  3. 過去に同様の機能リクエストがありましたが、上の理由により検討の対象外となっています。参考: JSDSERVER-7366 - Option to disable the recently bundled plugins like Insight, Advanced Roadmaps for users in GUI (if they don't prefer to use them)

実施済みの確認内容

すべてのアプローチはフレッシュな JSM DC インスタンスでテストされ、効果的に動作することが確認されています。

原因


Insight は Jira Service Management Data Center 4.15.x 以降のバージョンでは同梱のプラグインになっており、ユーザーが Insight を使わない場合に GUI で無効化することはできません。デフォルトでは、ユーザーが自身のロールの一環として Insight のオブジェクト スキーマへのアクセス権を持っていると、ユーザー向けのメイン メニューにも表示されます。 

ソリューション

1. ユーザーが自身のロールの一環として Insight アプリケーションへのアクセスを持たないようにする (推奨)

  • Jira システム管理者として [Insight] > [設定] オプションにアクセスする必要があります。

  • ロールに移動し、ロールからすべてのユーザーとグループを取り除きます。要件に応じて一部のユーザーやグループにアクセスを制限することもできます。

  • これによってユーザーが Insight にアクセスできなくなり、このオプションが GUI でユーザーに表示されなくなります (Jira システム管理者は引き続きオプションが有効化され、要件に応じた調整が行えます)。

  • この操作は再起動が不要であり、ベストプラクティスを引き続き活用するために最適なソリューションです (参考スクリーンショットを添付)。



2. REST API ベースのアプローチ

  • 次の REST API ポイントに PUT 呼び出しを送信する必要があります。 

    /rest/plugins/1.0/com.riadalabs.jira.plugins.insight-key
  • API リクエストではヘッダー変数 "Content-Type" が次のように設定されている必要があります。

    Content-Type: application/vnd.atl.plugins.plugin+json
  • 最後に、PUT 呼び出しの本文には次の JSON コンテンツが必要です。 

    {"enabled":"false"}
  • コマンドラインで実行できる完全な REST 呼び出しの例は次のようなものです (JIRA_USERNAME、PASSWORD、JIRA_BaseURL はご利用のシステム変数に基づいて置き換えます)。

    curl -u <JIRA_USERNAME>:<PASSWORD> -X PUT -H "Content-Type:application/vnd.atl.plugins.plugin+json" -H "X-Atlassian-Token:no-check" -d '{"enabled":"true"}' "<JIRA_BaseURL>/rest/plugins/1.0/com.riadalabs.jira.plugins.insight-key"
  • API 関連の変更では Jira の再起動は不要です。ブラウザ セッションを再読み込みすると Insight が無効化されます。


3. データベースを手動で更新するアプローチ

  • ここではデータの削除は行いませんが、変更を行う前にデータベースのバックアップを作成するようにしてください。これらのクエリは Postgres データベースでテスト済みで、他のデータベース システムにおいても少しの変更で動作するはずです。しかしながら、利用しているデータベース システムにかかわらず、ロジックは同様のものになります。

  • データベースにアクセスして次のクエリを実行します。テーブルで "com.riadalabs.jira.plugins.insight" プラグイン エントリの値として、"pluginenabled" カラムが true に設定されているかどうかを確認します (これに該当する場合は次の "UPDATE" クエリを利用して false に設定する必要があります)。

    SELECT * FROM "pluginstate" WHERE pluginkey='com.riadalabs.jira.plugins.insight';
    
    UPDATE "pluginstate" SET pluginenabled='false' WHERE pluginkey='com.riadalabs.jira.plugins.insight';
  • "pluginstate" テーブルに上のようなエントリが存在しない場合、次のクエリを利用して新しいものを挿入 (INSERT) する必要があります (再有効化を行いたい場合は "pluginenabled" カラムの値を "true" に設定します)。  

    INSERT INTO pluginstate (pluginkey, pluginenabled) VALUES ('com.riadalabs.jira.plugins.insight','false');
  • これにより、プラグインが無効化されていることを示すエントリが "pluginstate" テーブルに追加されます。

  • これらはデータベース更新であるため、Jira を再起動して変更を有効化します。これで Insight が無効化されます。

お持ちの要件や操作の習熟度に応じ、いずれかのソリューションを利用して Insight を無効化していただけます。無効化するとユーザーのメニュー オプションにアイコンが表示されなくなります。
ぜひ提案内容をお試しください。






Last modified on Mar 9, 2022

この内容はお役に立ちましたか?

はい
いいえ
この記事についてのフィードバックを送信する
Powered by Confluence and Scroll Viewport.