開発Blog

認可のExcelインポート・エクスポートで認可設定がより便利に

投稿日:2014-10-01 更新日:

今回は、認可のExcelインポート・エクスポート機能についての紹介です。


0.はじめに
1.認可Excelインポート・エクスポート機能を使用するためには
2.【使用例1】権限設定の変更を、業務時間外 (例:夜間) に自動で行い、簡易的に期間化を実現する
3.【使用例2】IM-Workflowで権限設定の変更案を流し、承認終了後に権限設定を反映する
4.【使用例3】定期的に認可設定のエビデンス (設定状態) を保存する
5.【参考資料】


0.はじめに

認可の権限設定において、これまでは以下のような問題がありました。
 ・権限設定の全体を一度に見ることが難しい。
 ・権限設定の状態を印刷できない。 また、印刷範囲を絞り込むことが難しい。
 ・認可設定画面上では、権限設定の変更が即時反映されてしまい、ある時点から権限を変更するような運用 (期間化) が難しい。
 そこで、これらの問題をできる限り解消できるよう、認可の権限設定状態をExcelファイルでインポート・エクスポートできる機能 (※) が提供されました。
 ※ 2014 Summer (8.0.8) より追加機能モジュールとして提供しています。
 ※ 対応するファイルは SpreadsheetML (*.xlsx) 形式で、Excel2007 以上で開くことができます。
 この追加機能モジュールを導入すると、以下の操作ができるようになります。
 ・ジョブスケジューラを使用して、権限設定状態をExcelファイルとしてエクスポート&インポートすることができます。
  Excelファイルはパブリックストレージに配置します。
 ・認可設定画面 (ブラウザ) 上から、権限設定状態をExcelファイルとしてエクスポート&ダウンロードすることができます。
  また、認可設定画面上からExcelファイルをアップロード&インポートすることもできます。
  Excelファイルのレイアウトは、認可設定画面と同じようなデザインで出力されます。
  2014-08-06_excel.png
 図:Excelエクスポートの使用例
 Excelでファイルを開けば、全体の印刷も簡単にできるようになります。
 また、Excelファイル上での編集は即時反映されませんので、机上による権限設定変更の検討にも最適です。

1.認可Excelインポート・エクスポート機能を使用するためには

 IM-Juggling で、「追加機能」-「IM-Authz (認可) Excelインポート・エクスポート」モジュールを追加した war を作成して、デプロイしてください。

<

p style="margin-left: 30px">2014-08-06_juggling.png  
  図:IM-Jugglingのモジュール選択画面
 テナント環境セットアップ後、追加機能が導入され以下のように動作が変わります。
 ・ジョブ・ジョブネットに「インポート (Excel)」「エクスポート (Excel)」カテゴリが登録されます。
  パブリックストレージ上にExcelファイルをエクスポート、および、ストレージ上のファイルをインポートすることができます。
 ・認可設定画面の左上に「インポート (Excel)」「エクスポート (Excel)」リンクが表示されます。
  認可設定画面上から、直接Excelファイルをエクスポート、および、インポートすることができます。

<

p style="margin-left: 30px">2014-08-06_authz_settings.png  
  図:認可設定画面
 具体的なインポート・エクスポートの方法については、「 IM-Authz (認可) インポート・エクスポート仕様書 - インポート・エクスポートの概要 - ポリシー - Excel (xlsx) 形式 」を参照してください。
 今回のブログ記事では、Excelファイルを使用した認可権限設定の応用例として、以下の業務運用パターンを解説いたします。
 ・使用例1: 権限設定の変更を、業務時間外 (例:夜間) に自動で行い、簡易的に期間化を実現する
 ・使用例2: IM-Workflowで権限設定の変更案を流し、承認終了後に権限設定を反映する
 ・使用例3: 定期的に認可設定のエビデンス (設定状態) を保存する

2.【使用例1】 権限設定の変更を、業務時間外 (例:夜間) に自動で行い、簡易的に期間化を実現する

 まずは、以下のような業務を想定してみます。
 ・「承認済みユーザ」から「全文検索」の権限を外すよう依頼を受けたため、某日午前2時に権限設定の変更を自動的に行います。
 使用する機能は以下の通りです。
 ・IM-Authz (認可) Excelインポート・エクスポート
 ・ジョブスケジューラ (ジョブ・ジョブネット)
 操作手順は以下の通りです。

  1. 認可設定画面、または、ジョブネットを使用して、現時点での認可の権限設定をExcelファイルでエクスポートします。
    認可設定画面での操作方法は、「 テナント管理者操作ガイド - 認可を設定する 」を参照してください。
    ジョブ・ジョブネットの場合は、「テナントマスタ」-「エクスポート(Excel)」-「認可エクスポート(Excel)」を使用します。
    ジョブスケジューラの操作方法は、「 テナント管理者操作ガイド - ジョブを設定する 」を参照してください。
     
  2. エクスポートしたExcelファイルを開きます。必ずExcel2007以上で開いてください。
    「画面・処理」シートを開き、「全文検索」と「承認済みユーザ」の交わるセルをクリックして「×」を選択します。
    Excelファイルを保存して、パブリックストレージに配置します (ここではストレージ直下に authz.xlsx として保存します)。
     
  3. 「認可インポート(Excel)」のジョブが午前2時に実行されるよう設定します。
    ジョブスケジューラの操作方法は、「 テナント管理者操作ガイド - ジョブを設定する 」を参照してください。
    午前2時になるとジョブが実行され、認可設定が反映されます。

<チェックポイント>

 ・Excel上であればXMLよりも視覚的にわかりやすい認可設定が可能なため、設定誤りを防止することができ、インポート実行前であればいつでも中止することができます。
 ・インポート時のオプションとして、各種厳密チェックを行うための検証フラグを設定することができます。
  各検証フラグを「true」に設定することで、継承関係の設定間違いや、インポート実行前に行われたリソース・対象者条件の変更により矛盾した設定のインポートを防止することができます。
  検証フラグについての詳細は、「 認可インポートエクスポート仕様書 - インポートオプション - Excel (xlsx) のオプション 」を参照してください。

3.【使用例2】IM-Workflowで権限設定の変更案を流し、承認終了後に権限設定を反映する

 次に、以下のような業務を想定してみます。
 ・後日新入社員が入社するため、新入社員用のロールを作り、まず最低限の認可権限を与えようとしています。
 ・権限の草案を作り、これでよいか上長にワークフローを回し承認をもらいます。
 使用する機能は以下の通りです。
 ・IM-Authz (認可) Excelインポート・エクスポート
 ・IM-Workflow
 操作手順は以下の通りです。

  1. IM-Workflow で、認可権限を承認するルートと、それを使用したフローを新規作成します。
    ルート、フローの作成方法についての詳細は、「 IM-Workflow 管理者操作ガイド - ワークフローを作成する 」を参照してください。
     
  2. 認可設定画面、または、ジョブネットを使用して、現時点での認可の権限設定をExcelファイルでエクスポートします。
    エクスポート前に、「新入社員」ロールの対象者条件を追加しておきます。
    この時点で対象者条件「新入社員」が増えますが、権限設定を行わなければ他の権限に影響はありません。
     
  3. Excel上で、「新入社員」ロールの列に、設定したい権限を設定します。
    設定後、Excelファイルを保存します。
     
  4. 手順1で作成した認可権限承認フローを使用して、保存しておいたExcelファイルを添付した案件を申請します。
    案件の申請方法についての詳細は、「 IM-Workflow ユーザ操作ガイド - 申請 」を参照してください。
     
  5. 無事ワークフローが承認終了した後、Excelファイルをインポートして権限設定を反映します。

<チェックポイント>

 ・添付する前にExcelの機能を使い、特定のセルを枠線で囲むなどのエフェクトを付けることができます。 
  これにより、上長に特に見てもらいたい箇所を強調させておくことができます。
  ※ 吹き出しなどを追加する場合は、Excelファイルのセル保護を解除してください。
  ※ 保護パスワードはエクスポートした場所によって設定箇所が異なります。
   認可設定画面からエクスポートした場合は、「 設定ファイルリファレンス - 認可設定画面設定 - 保護パスワード設定 」を参照してください。
   ジョブネットからエクスポートした場合は、「 IM-Authz (認可) インポート・エクスポート仕様書 - オプション - エクスポートオプション - Excel (xlsx) のオプション 」を参照してください。

<

p style="margin-left: 30px">2014-09-25_excel_comment.png  
    図:コメント付加例
 ・最後のワークフローが承認終了された際、終了処理として自動的に権限設定を反映させるようプログラムすることもできます。
  終了処理を作成する場合は、トランザクションを使用するために、終了ノードの到達処理にプログラムを設定してください。
  到達処理についての詳細は、「 IM-Workflow プログラミングガイド - ユーザプログラムの作成 - 到達処理 」を参照してください。

4.【使用例3】定期的に認可設定のエビデンス (設定状態) を保存する

 最後に、以下のような業務を想定してみます。
 ・内部監査やバックアップを目的として、定期的に権限の設定状態を残し、後から過去の権限設定を簡単に把握できるようにします。
 使用する機能は以下の通りです。
 ・IM-Authz (認可) Excelインポート・エクスポート
 ・ジョブスケジューラ (ジョブ・ジョブネット)
 操作手順は以下の通りです。

  1. 「ファイル退避」ジョブを新規作成します。
    このジョブは、パブリックストレージ直下に保存された authz.xlsx ファイルを、適当なディレクトリにコピーして現在日時にリネームする実装を行います。
    ジョブの作成方法については、「 ジョブスケジューラ仕様書 - ジョブスケジューラの構成 - ジョブ 」を参照してください。
     
  2. 「認可エクスポート(Excel)」⇒「ファイル退避」の流れで、ジョブネットを新規作成します。
    これにより、ジョブネットが実行されるたびにファイルがバックアップされるようになります。
    ジョブネットの詳細情報については、「 ジョブスケジューラ仕様書 - ジョブスケジューラの構成 - ジョブネット 」を参照してください。
     
  3. 定期的に、作成したジョブネットを動作させるよう設定します。
    認可のエクスポート処理を実行後、「ファイル退避」ジョブによってエクスポートされたExcelファイルがバックアップされます。
    バックアップ先には日時ごとにファイルが保存され、後からその時点の認可設定を確認することができます。
    ジョブスケジューラの操作方法は、「 テナント管理者操作ガイド - ジョブを設定する 」を参照してください。

<チェックポイント>

 ・Excel形式の場合、視覚的にわかりやすいだけでなく、画面上に2つのファイルを並べて表示することができますので、差分を簡単に表現できます。
  例えば、旧シートを同じブックにコピーして条件付書式を使用すれば、変更箇所の背景色を黄色で目立つ色にするなどの強調表示を行うことができます。

<

p style="margin-left: 30px">2014-09-19_excel_style.png 
   図:条件付書式設定例

2014-09-19_excel_changed.png 
   図:条件付書式表示
 ・定期的に設定を保存しておくことで、権限設定が消失した際などの事故があっても、昔の設定を参照しながら復旧することができます。
  リソースや対象者条件が大きく変わっていなければ、そのままExcelファイルをインポートすることで、全権限をエクスポート時点に戻すことが可能です。
  また、余分なシートは削除してもインポートできますので、例えば「画面・処理」シートだけ残してインポートすれば、「画面・処理」内の全権限のみ復旧することができます。 (※)
  ※ シート内のリソースと対象者条件 (行・列) の削除はできません。削除した場合、インポートに失敗します。
 以上で、認可のExcelインポート・エクスポート機能を利用した便利な使用例の紹介を終わります。

5.【参考資料】

-開発Blog

執筆者:


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

関連記事

no image

ERP連携モジュール(SAP)の実現方法

  ※下記内容は、過去のintra-mart(Ver4.3以前)に関する内容です。最新のintra-martでは、異なる情報であることがありますので、ご注意ください。   ERP( …

no image

intra-mart Advent Calendar 2013 第6日:実は、認可設定状況確認(/tenant/authz/view) というかあるんですよ!

この記事は、intra-mart Advent Calendar 2013 第6日の記事です。 あまり知られていないであろう機能を紹介する今年のAdvent Calendar、今回は、あまり知られてい …

no image

スタートパックVer7.1でのタイムゾーン対応について

明日、リリース予定のイントラネット・スタートパック Ver7.1での一番の機能追加内容である、 「タイムゾーン対応」について、以下のスライドでまとめましたので、公開いたします。 ISP710 タイムゾ …

no image

データベースの登録、更新、削除メソッドをカスタマイズする

※下記内容は、過去のintra-mart(Ver4.3以前)に関する内容です。 最新のintra-martでは、異なる情報であることがありますので、ご注意ください。 データベースを操作するプログラムを …

no image

社員が運営するコーヒーサービス

こんにちは、開発本部の久我と申します。 高松さんからのパスを受けて、今回は私が普段会社でやっている(というより、やらせていただいている)ことを少しだけご紹介してみたいと思います。 とは言っても、何か特 …