column

Kompiraの機能 ジョブフローに権限設定をする

ジョブフローを運用していると、例えば

  • オペレーターの人にジョブフローの実行はさせたいが、変更して欲しくない。
  • ジョブフローの中にシステムに関する情報があるので、中身を見せたくない。

などの、権限設定を行いたい場合が出てきます。今回の記事はこのようなジョブフローの権限設定にまつわる機能をご紹介します。

 
Kompiraのユーザー追加

まずは、Kompiraのユーザー作成の方法からご紹介します。管理者権限を持つアカウントでログイン後、画面上部の「設定>ユーザー管理」を選択すると、登録されている「ユーザー一覧」画面が表示されます。

ユーザー一覧

ここの一番下の行に、名称を追加し、一番右の「新規作成」ボタンをクリックします。

ユーザー新規追加

ここでユーザーに関する情報を登録して「保存」をクリックします。最低限、パスワードの指定は必要です。

新規ユーザー

これでユーザーが追加されました。詳細設定のために右の「操作>編集」をクリックしてください。

新規ユーザー設定

それぞれの項目は以下のような意味を持ちます。

フィールド 説明
ユーザー名 ログインの際に必要なID名称です。
姓・名 「ユーザー名」を実際に使う方の氏名を記入してください。
メールアドレス 「ユーザー名」を実際に使う方のアドレスを記入してください。
パスワード ログインの際のパスワード
グループ ユーザーの属するグループを任意で選択します。(「グループ」はユーザー同様、「設定>グループ管理」画面にて管理します。)
有効 このユーザーにKompiraの操作を許可するかを表すフラグです。このチェックをオフにするとログインを許可しません。
ホーム このユーザーのホームディレクトリを指定します。(通常は /home/ユーザー名)
環境変数 ジョブフロー実行時に、自動的に変数として読み込まれる環境変数オブジェクト
REST API 有効化 APIの利用可否を示すフラグです。利用する場合にはONにします。

必要に応じて、上記のパラメータを変更してください。

 
オブジェクトのプロパティ

オブジェクト名を右クリックすると以下の様なプルダウンが表示されます。この一番下の「プロパティ」をクリックします。

オブジェクト名の右クリック

次のようなプロパティ画面が表示されます。

プロパティ画面

Kompiraでは、Unix/Linuxと似た管理権限を持ちます。「ユーザーパーミッション」の「ユーザー」欄に権限付与/変更したいユーザーを指定し、右側のチェックボックスをON/OFFします。

読み取り 指定のユーザーにジョブフローの閲覧を許可します。許可のないジョブフローにアクセスすると「閲覧が許可されていないページです。」というエラーメッセージが表示されます。
書き込み このチェックを指定すると指定のユーザーは「編集」を選択できるようになり、ジョブフローを変更する事が出来ます。
実行 このチェックを指定すると指定のユーザーは「実行」を選択できるようになり、ジョブフローの実行が出来ます。

画面の「ユーザーパーミッション」の下に「グループパーミッション」の欄があります。こちらも同様に設定をしますが、対象がグループに属するユーザー全員に権限付与を行います。

 
「読み取り」させたくないが「実行」させたいジョブフローを指定する

上記の権限設定にて、「実行」をON、「読み取り」をOFFにすると目的を達成できそうですが、現実的にはジョブフローにアクセスしようとすると「許可されていないページです」エラーが発生するため扱いにくいという問題があります。

このような場合には「フォーム」画面を用意します。

まずは前準備として、/root/ユーザーパーミッション というジョブフローの「パラメータ>ユーザーパーミッション」を以下の様に、ユーザー= test に対して、実行権限だけを付与します。

ユーザーパーミッション

ここでユーザーtestがこのジョブフローにアクセスしようとすると、以下のようなエラーが表示されます。

読み取り不可

さて、以下のように /home/test の下に「テストフォーム」という名前のフォーム型オブジェクトを作成します。

フォーム画面

テストフォームの設定画面では、以下の様に「提出オブジェクト」のプルダウンから「サンプルジョブフロー」を指定して保存をクリックします。

フォームの画面

次のようなフォーム型オブジェクトが作成されます。

フォーム型

ここで「サンプルジョブフロー」のリンクをクリックすると上記のような「読み取り不可」エラーが表示されますが、「実行」ボタンはクリックすることができ、ジョブフローが起動されます。

このようにして、フォームを経由する事でジョブフローの中身は見せずに、実行だけを許可する仕組みを作る事が出来ます。また、このフォームのプロパティからの権限を設定する事でジョブフローを実行できる人を選択する事も出来ます。

ここでは深入りしませんが、パラメータ/引数を取るジョブフローに対しては、フォームからオペレータが値を入力してジョブフローに渡して実行させることも可能です。

さて、いかがでしたでしょうか?Kompiraの権限設定の考え方は先に述べたようにUnix/Linuxに似せて作成されているため、ジョブフローの他にもディレクトリなどにも設定する事が出来て、指定のディレクトリ以下のアクセスを許可/禁止する事も可能です。

権限設定をうまく利用して、セキュアな自動化環境を構築してください。