2009年3月30日月曜日

IPA 情報セキュリティ白書2009 10大脅威 攻撃手法の『多様化』が進む

3/24に公開されていますね。
http://www.ipa.go.jp/security/vuln/documents/10threats2009.pdf

利用者への脅威の4位に「ユーザIDとパスワードの使い回しによる危険性」が挙げられていますが、どちらかというとサービスプロバイダ側の脆弱性に起因してユーザIDとパスワードが漏洩すると、同じユーザが他のサービスで同じパスワードを使っている可能性が高いから不正利用されちゃいますよ、という話でした。

このあたりを含めてアイデンティティプロバイダを切り離しておく、というのもサービスプロバイダにとって有効な考え方かも知れません。
どちらかというとアイデンティティ情報をセキュアに管理する、とか認証機能を強固にする、といったことはサービスプロバイダにとっては本来注力すべき領域ではないはずですし。

後は、サービスプロバイダが本当の意味でアイデンティティプロバイダを「信頼する」ためのフレームワーク(技術的にも、ビジネス上も)が必要になるんだと思います。漏洩時の責任分解とか賠償関連の取り決めとか。
そのあたりOpenIDのPAPEやLibertyのIAFとかの技術仕様に加えてちゃんと決めないと、本当の意味で普及は難しいんだと思います。


しかしこの情報セキュリティ白書、毎年の10大脅威を発表してきていますが、年々技術的要素が薄くなってきています。それだけ手口がソーシャルなものも含めて複雑化してきているんでしょうね。
見直してみると2004年はプロトコルの脆弱性の話やIEの脆弱性の話などで埋め尽くされてました。。。

2009年3月29日日曜日

UnboundID Directory Server

元SunのDirectory/Identity関係の人たちがスピンアウトして2007年に設立した会社「UnboundID」のプロダクトです。

「UnboundID Directory Services 2.0」というキーワードで、大規模ユーザを抱えるコンシューマ向けサービスプロバイダ向けの次世代アイデンティティ管理を実現を目指すそうです。
昨今のビジネスは大規模化、かつ分散されたWebサービスをベースに展開されており、ユーザの資格情報やアクセス権限などのアイデンティティ管理が重要性を増していて、サービスプロバイダからのアイデンティティプロバイダへのアクセス規模も同時に増大している、ということでこの会社では、
・高性能
・セキュア
・高い柔軟性
というキーワードで製品を提供することを目指すそうです。

実際のプロダクトとしてはOpenDSをベースにチューニングしたもので、何十億ものエントリの管理、何百万のリクエストへのレスポンスに対応できるそうです。

何よりも面白いなと思ったのは、そのスケーラビリティを維持するための仕組みです。
通常LDAPサーバを水平展開する場合って、
・マスタ⇒レプリカ(シングルマスタ)
・マスタ⇔マスタ(マルチマスタ)
のような構成をとります。

当然、大規模環境ではマルチマスタ構成が必要になってくるのですが、その場合書き込みトランザクションの衝突回避の仕組みが必要になります。
ActiveDirectoryでは一部機能(FSMO)をシングルマスタにすることで整合性を保つようになっていますが、この製品はRDBMSと同じようなトランザクション管理の仕組み(begin/commit/rollback)を取り入れています。
他にもRDBMSの特徴を取り込んでおり、triggerが使えたりするそうです。

LDAPクライアント側への工夫も必要になりそうですが、なかなか面白そうなので機会があれば触ってみたい製品です。

2009年3月24日火曜日

ILM"2" リリース延期!

ここしばらく噂はありましたが・・・

現在LAS VEGASで開かれているTEC2009で正式に発表があった模様です。

最新のスケジュールだと、
・2009年Q3 RC1リリース
・2010年Q1 RTM
ということです。

今のところ、理由は「更なるテストと、ウォークスルーシナリオが必要」ということだそうですが、本当は別の理由があるのでは・・・

2009年3月19日木曜日

IBM、Sunを買収へ?

ちまた(と言っても狭い業界ではありますが)では結構話題になっていますね。

ハードウェアやOS、JavaやDBの話は色々な憶測を含め話題にのぼっていますが、IdMやSSO関連はどうなるんでしょうね。

Sun主導のSAML LibertyとMS/IBM主導のws-federationがうまく融合するような話になるのかな?

2009年3月11日水曜日

第4回Liberty Alliance技術セミナー

先週3/6(金)に開催された第4回Liberty Alliance技術セミナーの資料が公開されています。
http://wiki.projectliberty.org/index.php/JapanSIG/Seminars/TechSeminar

残念ながら参加はできなかったので、早速資料をチェックしてみました。

・SAML2.0の仕様詳細とデモ実演

 SAMLって何?というところから、ProfileやBinding、Assertion、Protocolの定義内容などがわかりやすく解説されています。
 日本語の資料であまりわかりやすい資料がないので、貴重です。

・SAML2.0とOpenIDの相互運用デモ

 SAML、OpenID、CardSpaceの相互運用の取り組み、Concordia Projectの紹介などのオーバービューから具体的なデモシナリオ、デモ実演という流れです。デモが見たかったです・・・。


最近この手の相互運用のネタが結構流行っていますが、まだSAMLやOpenIDなどのキーワードが浸透しきっていないせいか、「相互運用」の意味が理解しづらいものとなっているのでは?と感じています。
Libertyなどで話題に上っている「相互運用」はあくまで利用者の視点でSAML対応のIdPで認証されたユーザがシームレスにOpenID対応のRPのサービスを利用できる、ということを指しています。(SUICAとICOCAの相互運用とイメージ的には近いかも知れません)

ただ、それぞれのキーワードの定義をものすごく乱暴に解説すると、
・SAML:認証の仕組みではなく、認証情報の連携や属性交換の仕組み。認証状態(認証されたIdP情報)や属性をXMLベースのAssertionで受け渡す
・OpenID:認証の仕組みではなく、認証情報の連携や属性交換の仕組み。IdP(OP)のURI自体がIDとなっている
・CardSpace:InfoCardというメタファを利用して認証プロバイダをユーザ自身に選択させる仕組み
となります。
こうやってみると、SAMLとOpenIDやCardSpaceを同列に並べてしまうことにちょっと違和感を感じてしまいます。

全体的に言葉遊びになってしまいがちですが、うまくマッチする日本語がないのが最大の原因なのかも知れませんね。

2009年3月3日火曜日

ILM"2"のワークフロー概要その2

前回書いたとおり、実際に承認フローを作成してみたいと思います。

例として、以下のような承認フローを作ります。

設定項目設定値
要求元ILM”2”ユーザ(システムユーザを除く)
要求操作要求元の属性の変更操作
操作対象要求元のOfficePhone属性
承認者要求元のmanager属性に設定されているユーザ



設定作業の流れは以下の通りです。
1.Authorization Flowの定義
2.Management Policy Rule(MPR)の定義
3.定義した承認フローのテスト


詳細な手順は以下の通りです。(ILM"2"管理者で実行します)

1.Authorization Flowの定義
 ①AdministrationメニューよりWorkflowsを選択します




















 ②Newをクリックして新しいワークフローを作成します













 ③ワークフロー名、説明、タイプの設定を行います
  今回は、以下の値を設定しました。

設定項目設定値
Workflow NameManager_Approval
Descriptionマネージャによる承認フロー
Workflow TypeAuthorization















 ④アクティビティを追加します
  今回は承認フローなので、Approvalを選択しSelectボタンをクリックします。



















 ⑤アクティビティの設定を行います
  今回は以下の設定を行います。

設定項目設定値
Approvers[//Requestor/Manager] ※要求元のManager属性
Approval Threshold1(初期値)
Duration7(初期値)
Escalated Approversilm2admin
Email Templates(初期値)















 ⑥設定を保存します














2.MPRの定義
 ①AdministrationメニューよりManagement Policiesを選択します




















 ②Newをクリックして新しいMPRを作成します














 ③MPR名、説明、権限の設定を行います
  今回は、以下の値を設定しました。

設定項目設定値
Display NameChange_Attribute_OfficePhone
DescriptionOfficePhone属性の変更
Permissions未チェック(初期値)
















 ④要求元と要求操作の設定を行います
  今回は、以下の値を設定しました。

設定項目設定値
Requestors[SET]NonSystemUsers
OperationsModify resource attributes
















ちなみにRequestorに設定したSETはシステムユーザ以外を指定するために以下のDynamic Membership設定を行っています。














 ⑤ターゲットリソース(前後)および対象の属性の設定を行います















  対象属性は本のマークをクリックすると検索することができます。




































 ⑥適用するワークフローを設定します
  ここでは、先ほど作成したAuthorization FlowのManager_Approvalを設定します。
















 ⑦設定を保存します













  以上でワークフローおよびMPRの定義は完了です。


3.定義した承認フローのテスト
 テストに使用するユーザおよび属性は以下の通りです。

属性変更後属性
Display Name一郎 鈴木-
Account Namee0001-
Managerilm2admin-
Office Phone03-1234-567806-9876-5432


 ①テストユーザ(e0001)でILM"2" Portalへログインします














 ②My ProfileメニューよりOffice Phone属性を変更します
  【変更前】













  【変更後】












 ③変更を保存します














 ④承認待ちステータスになったことが表示されます













 ⑤再度My Profileを確認するとOffice Phone属性が更新されていないことが確認できます













 ⑥Manage My Requestメニューより承認要求が作成されていることが確認できます













 ⑦承認ユーザ(ilm2admin)でILM"2" Portalにログオンし、Approve Requestメニューを表示します












 ⑧承認要求を選択し、Approveをクリックして承認を行います




























 ⑨テストユーザ(e0001)でILM"2" Portalへログインし、Office Phone属性を確認すると変更されています