当ブログに掲載しているサンプルは、すべて利用者の自己責任という形でお願いします。
ただし、明らかな不具合がある場合、ご連絡いただければ、訂正記事を出します。
また、こちらのサンプルは、別のサイト等への公開、転載は一切禁止しています。
どうしてもと言う場合は、筆者にあらかじめご連絡ください。
記事そのもののリンクについてはご自由に行っていただいてよいです。

テクてく Lotus 技術者 Slack に参加しよう!

2017年3月29日水曜日

IDボールトによる文書の暗号化(2)・・・XPagesで文書の暗号化/復号化を行う条件

皆さん、こんにちは。

3月も終わりだというのに東京は寒いです・・・
桜は咲いたというのになんでしょうね、この寒さは。
早く暖かくなってほしいものです。


さて、今日は前回の予告通り、「XPagesで文書を暗号化/復号化するにあたっての条件」について書いていこうと思います。



1.Notes/Dominoのバージョン

当然ではありますが、IBM Notes/Domino 9.0.1 Feature Pack 8が導入されている必要があります。
XPinC(XPagesをNotesクライアント上で動かす)を使わない場合は、IBM Dominoだけバージョンアップしておけばよいです。

ただし、Notes DBをカスタマイズする必要があるため、IBM Domino Designerは9.0.1 Feature Pack 8を導入しておく必要があります。

2.機能

IBM Domino 8.5で追加された新機能であるIDボールトを導入する必要があります。
IDボールトの設定方法は当ブログでも紹介していますので、そちらを参考にして導入してください。

IDボールトの設定方法

ユーザIDがこのIDボールトに登録されている必要があります。
したがって、Web専用ユーザという形で、ドミノディレクトリに直接ユーザ文書を作成したようなユーザでは、XPagesでの暗号化/復号化は行えないということを意味しています。

3.セキュリティ

ドミノディレクトリのサーバ文書内の「制限なしで署名または実行」にXPagesアプリを署名したユーザが含まれている必要があります。
サーバ文書のセキュリティタブ
これは、1.で説明したDomino DesignerでNotes DBをカスタマイズするユーザのことを指します。
今までXPagesアプリケーションを作成したことがある方ならば、当たり前のことではありますが、初めて作成する場合は忘れがちなので注意しましょう。

4. XPagesアプリケーションの設定

XPagesで暗号化/復号化をするにあたって、アプリケーションに設定を行う必要があります。
XSPプロパティの中に「Enable document encryption for this application」というチェックボックスがあるので、そこにチェックをつけます(もう項目が英語になっているのは気にしません・・・)。
ソースタブに直接記述する場合は
xsp.domino.document.encryption=true

と書きます。
XSPプロパティを修正

実は、この設定について、公式ドキュメントでは一切触れられていません。
そのため、なかなか暗号化/復号化が行えず、悩みまくりました。
IBM Connect 2017のセッション資料に書いてあるのを見つけてようやくできたという経緯があります。
ホント、どうにかしてください。こういうのよくないですよ!


5.暗号化/復号化に必要な関数及び変数

詳しくは次回以降の記事で触れていきますが、
XPagesで文書の暗号化/復号化をする際に必要になってくる変数として
dominoIDVaultBeanという管理Beanと呼ばれるものがあります。

この管理Beanの中にIDボールトのサーバ名、ユーザ名、パスワードをセットすることで文書の暗号化/復号化が行えるようになります。
管理Beanについては、
userBeanを使ってみよう
でも触れていますのでそちらを参考にしていただくと、少しは理解が深まると思います。

また、実際に暗号化を行うには、前回のLotusScriptでIDボールトを利用する際にも触れた
NotesIDVaultクラス及びNotesUserIDクラス(いずれもJavaScriptクラス)を利用する必要があります。
そして、最終的に暗号化するにはNotesDocumentクラスのencryptメソッドを利用します。






いかがでしょうか。
ただ単にプログラムを記述すればいいのではなく、
それなりに準備が必要であることが分かっていただければ幸いです。


次回はいよいよ、XPagesアプリケーションでの暗号化をする方法について触れてみようと思います。






それでは、今日はこの辺で・・・




Notes/Dominoで困ったことがあれば、弊社にお問い合わせください。
IBM Championの私が承ります!
お問い合わせはこちらから→Lotus Notes/Domino カスタマイズとセキュリティ強化 - 株式会社エフ

0 件のコメント: