2008年11月27日木曜日

SAP NetWeaver Identity Management 7.1

SAPよりNetWeaver IdMの最新版が12月5日にリリースされるようです。
http://www.sap.com/japan/about/press/press.epx?pressid=10507

2007年5月にMaXware買収を発表してから1年半、買収直後のSAPブランドでのリリース(NetWeaver IdM7.0)からはたしてどのくらいの進化をしたのか・・・
※7.0はロゴをMaXwareからSAPに変えたくらいだったので。

さて、新機能は以下の通り。

1. システムに対し簡単なID配信を可能にする機能を強化
SAP ERP HCM、SAP GRC Access ControlなどのSAP製品やSAP NetWeaverポータルとのデータ連携を容易にするテンプレートを大幅に追加し、導入時における作業の低減、導入期間の短縮、それによるコスト削減が可能です。さらに、従来のユーザー情報、権限情報の管理から、権限情報の設定も可能となり、より統一されたID情報管理が可能となります。
 
2. SAP GRC Access Controlとの連携強化
最新版では、SAP NetWeaver IdMとSAP GRC ACで双方向に連携することができるようになり、職務分掌を実現するための、アプリケーション使用権限管理、リスク分析の機能を双方向で呼び出すことができます。
SAP GRC ACのSAPシステムに対するユーザー・権限管理機能と、SAP NetWeaver IdMのマルチベンダー環境への柔軟なユーザー・権限管理機能を包括的に利用することで、企業内に存在するITシステムのリスクを削減し、強固なセキュリティを実現します。
 
3. SAP ERP Human Capital Managementとの連携強化
企業内において、人事情報とシステムユーザー情報は社員IDと密接に関係しており、連動した管理の重要性が高まっております。従来人事情報の取得が全データ単位で行われていたのに対し、SAP NetWeaver IdMでは、人事異動など変更情報のみ取得することで、よりリアルタイムなID情報管理が可能になります。SAP ERP HCMとSAP NetWeaver IdMを包括的に利用することで異各システムに対し企業内の人事イベントに即した迅速なID情報提供が可能になります。


まぁ基本機能はMaXware時代にほぼ完成されていたと思うので、SAPが買収した意義を出すためにもERPベンダの得意技?であるテンプレートの強化(上記1)をしてきたんだと思いますが、はたして日本でどこまで使えるのか・・・(MaXware製品は良くも悪くもフレームワーク製品だったので”ある意味”何でも出来る製品でした)
後は、GRCなどのSAPコンポーネントとの連携については当然の流れでしょう。
この流れで他社のIdM製品とのSAPコンポーネント群との連携が非サポートになったりしなければ良いのですが。。。

2008年11月23日日曜日

ILM"2" RC0環境構築「同期ルール設定編その1」

さて、サーバサイドコンポーネントのインストールが完了したので、実際のレポジトリの同期を試してみたいと思います。

と、その前にILM"2"ではこれまでのMIIS、ILM2007とは同期の考え方が大幅に変わっているので、考え方を整理しておく必要があります。

これまでは同期時の属性マッピングなどはすべて各MA(Management Agent)のプロパティとして設定をしてきました。











ところが、ILM"2"では新しく
・Inbound Synchronization Rule(ISR)
・Outbound Synchronization Rule(OSR)
という考え方が導入されており、MAの定義と同期のルールが分離されています。
(ややこしいですが・・・)

これからは同期設定の流れとしては、従来のIdentity ManagerからMA自体の作成と実行プロファイルの作成は行いますが、属性同期(Attribute Flow)設定はILM PortalからILM Serviceの設定として作成したMAに対する同期ルールとして定義を行う形になります。
ただ、ILM Serviceだけは新しく定義されたMAタイプのIdentity Lifecycle Managerを使って属性同期設定をIdentity Manager上からMAの定義として設定する必要があったりします。。。











具体的な設定の流れを次回は解説したいと思います。

2008年11月19日水曜日

ActiveDirectoryのunicodePWDをLDAPSで変更する

とあるIdM製品ベンダの知り合いの方から「ADのunicodePWD属性ってLDAPSで変更できますよね?」と言われて、そういえば以前やったことあるな~というのを思い出しました。
 
3年ほど前に別blogに書いたネタがあるので転記しておきます。(いささか古いネタなので最近の環境での動作は微妙?)

■タイトル
 ActiveDirectoryのunicodePWD属性の変更をSolarisから行なう
■内容とサンプルスクリプト(当時のまま転記)

簡単に書くと、
1.サーバ証明書の発行(Windows証明書サービスで実施)
2.証明書をSolarisへインストール
3.Perl等のスクリプトでLDAPS接続して属性更新
となる。
注意点は、Windowsで証明書を発行する際に「Webサーバ」のテンプレートを使用して証明書を発行することくらい。

尚、必要物は以下のとおり。
【Windows側】
・ActiveDirectory
・証明書サービス
・IIS(証明書サービス用)
【Solaris側】
・OpenSSL
・Perl::LDAPSモジュール

【サンプルPerlスクリプト】
#!/usr/bin/perl -wuse strict;
use Net::LDAPS;

my($Ad, $mesg, $uid, $pass, $npass, $dn, $rtn);
$uid = "test";
$pass = "hoge";

print "Trying to set $uid to password $pass\n\n";
# Bind to the AD server
$Ad = Net::LDAPS->new("server.hoge.local",port => 636,capath => '/usr/local/ssl/certs/cacert.pem') or print "error connecting ad\n", exit 2;
$Ad->bind("CN=Administrator,CN=Users,DC=hoge,DC=local",password=>"password") or print "Unable to bind to AD server\n", exit 2;

# Do a AD lookup to get the dn for this user
# then change their password.
$mesg = $Ad->search(base => "ou=test,dc=hoge,dc=local", scope => "sub", filter => "(CN=test)");
if($mesg->count != 1) {
print "AD lookup failed for user $uid\n";
exit 3;
}
$dn = $mesg->entry(0)->dn;
map { $npass .= "$_\000" } split(//, "\"$pass\"");
print $dn;
$rtn = $Ad->modify($dn,replace=>["unicodePwd",$npass]);
if($rtn->{'resultCode'} != 0) {
print "User $uid, setting password failed\n";
exit 2;
}
print "Password for $uid changed in AD\n";
exit 0;

2008年11月18日火曜日

ILM"2" RC0インストール「サーバサイドコンポーネントセットアップ編その1」

まずは、今回インストールするサーバサイド環境は以下の3台のサーバで構成します。
・ドメインコントローラ
・Exchangeサーバ
・ILM"2"サーバ

-サーバコンポーネント構成










※ドメインコントローラ、Exchangeサーバの構築はここでは省略しますので、ILM"2"サーバのインストールを始めます。

1.必要アカウントの作成
 ①ドメイン上に以下のアカウントを作成します。
 ・SQL Serverインストールアカウント
  sqladmin@ilm2.local(Domain Users)
 ・ILM"2"インストールアカウント
  ilm2admin@ilm2.local(Domain Admins)
 ・ILM Synchronization Serviceアカウント
  ilm2syncservice@ilm2.local(Domain Admins)
 ・ILM Serviceアカウント
  ilm2service@ilm2.local(Domain Admins)
 ・ILM MAアカウント
  ilm2ma@ilm2.local(Domain Users

 ②Exchange上にメールボックスを作成します。
  対象はとりあえず
  ・ilm2admin
  ・ilm2service
  です。

2.必要ソフトウェア類のセットアップ 以下の順に必要環境をセットアップします。
 ①OSコンポーネントのセットアップ
  ・Windows Server 2008 64bit Enterprise Editionのインストール
  ・ドメインに参加
  ・役割の追加
   ・Webサーバ(IIS)
    デフォルトでは以下の役割サービスにチェックが入っていないのでチェックする
     HTTP基本機能
     ・HTTPリダイレクション
     アプリケーション開発
     ・ASP.NET
     ・.NET拡張性
     ・ISAPI拡張
     ・ISAPIフィルタ
     状態と診断
     ・トレース
     セキュリティ
     ・基本認証
     ・Windows認証
     管理ツール
     ・IIS6管理互換
      ・IIS6 メタベース互換性
      ・IIS6 WMI互換
      ・IIS6 管理コンソール
  ・機能の追加
   ・.NET Framework 3.0の機能
   ・Windows Powershell 1.0

 ②その他コンポーネントのセットアップ
  ・Microsoft .NET 3.5 SP1 Framework+Language Pack
  ・Microsoft Visual Studio 2008
   以下のコンポーネントをインストール(好み次第ですが)
   ・Visual Web Developer
   ・Visual Basic
   ・Visual C#
  ・Visual Studio 2008 SP1の適用
  ・Exchange 2007 SP1 管理コンソール
   ※Administrator@ilm2.localでセットアップ実行(UAC環境の場合は「管理者として実行」)

 ③データベースのセットアップ
  ・SQL Server 2008 64bit Enterprise Editionのインストール
   ※ILMサーバのローカルAdministratorグループに所属するドメインユーザでセットアップ実行(UAC環境の場合は「管理者として実行」)
   以下のコンポーネントをインストール
   ・データベースエンジンサービス
   ・管理ツール(基本)
  ・インストール完了後、SQLインストール実施ユーザでSQL Server Management Studioを起動し、
   ・Administrator@ilm2.local(WSSインストール用)
   ・ilm2admin@ilm2.local(ILMインストール用)
   にsysadmin権限を与える。

   注意)ilm2admin@ilm2.localのデフォルトの言語をEnglishにしておかないとILMインストール中に以下のようなエラーが出る。








 ④アプリケーションサーバのセットアップ
  ・Windows SharePoint Services 3.0 SP1(英語版)
   ※Administrator@ilm2.localでセットアップ実行(UAC環境の場合は「管理者として実行」)
  ・インストール後「SharePoint製品とテクノロジ構成ウィザード」を実行
   DBは③でセットアップしたSQL Serverを指定。
  ・http://ilm2rc0/でWebアプリケーション、空のサイトコレクションを作成
   ※サイトへのilm2admin@ilm2.localの管理者権限を与えておく

3.ILM"2"サーバサイドコンポーネントのセットアップ
 ①利用ユーザのセキュリティ設定
  ILMサーバのローカルセキュリティポリシーより、
  ・ilm2syncservice
  ・ilm2service
  ・ilm2ma
  について
  ・バッチジョブとしてログオンを拒否する
  ・ターミナルサービスを使ったログインを拒否する
  ・ネットワークで経由コンピュータへアクセスを拒否する
  の設定を実施する。

 ②ILM Synchronization Serviceのセットアップ
  ※ilm2admin@ilm2.localで実行(UAC環境の場合は「管理者として実行」)
  ・展開ディレクトリ\Metadirectory Services and User Provisioning\Setup\setup.exe
  ・自動的にログオフされるので再度ログオン
  ・MIISAdminsにilm2ma@ilm2.localをメンバ追加する


-setup.exeを起動した画面













-サービスアカウントはilm2syncserviceを使用











-MIIS関連のグループはとりあえずデフォルトを使用










-証明書配置先を指定(任意のフォルダ)











 ③ILM Service、ILM Portal、ILM Password Portalのセットアップ
  ※ilm2admin@ilm2.localで実行
  ・SQL Agentが実行されていることを確認し、実行されていない場合は起動する
  ・ブラウザの設定を以下の通り行う
   セキュリティ設定:JavaScriptの実行を許可する
   言語設定:en-usを追加し、優先設定する
  ・展開ディレクトリ\ILM以下でmsiexec /i ILM-Server-64bit.msi /log install.log
  ・インストール完了後、
   Microsoft Identity Integration Serverサービスを再起動する
   Microsoft ILM Common Servicesを起動する

-ilm-server-64bit.msiを起動した画面










-コンポーネントの選択(今回はすべて選択)










-サービスアカウントの設定(ilm2serviceを指定)











-Synchronization Service関連設定(ilm2maを指定)










-インストール実施ユーザがILM Portalの最初のユーザになるのでメールアドレスを入力)











 ④インストール後の設定
  ・WSSへのアクセス権限設定
   ilm2admin:FullControl
   ドメインユーザ:Contributor
  ・passwordportalへの匿名アクセスを許可する
  ・ILMサーバがインターネットへアクセスできない場合は以下の設定を実施
   レジストリエディタで
   HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings\CodeBaseSearchPathの値を以下のように変更
   ・変更前:CODEPATH;http://activex.microsoft.com/objects/ocget.dll
   ・変更後:CODEPATH;
  ・Exchange Web Serviceと証明書の設定
   ・ilm2admin@ilm2.localでIEを起動(UAC環境の場合は「管理者として実行」)
   ・https://ex/EWS/Exchange.asmxを開く
   ・セキュリティの警告ダイアログで証明書を表示を選択し、証明書をインストールする

 ⑤日本語化設定
  ※現状、不具合?がある模様で正常に設定できない。
  ・WSSの日本語化(WSS言語パックのインストール)
   ※Administrator@ilm2.localで実行
   IEの言語設定を日本語(ja-JP)優先にする
   画面右上の「ようこそ」だけ日本語になる
  ・ILM Portalの日本語化(言語パックのインストール)
   ※Administrator@ilm2.localで実行(WSSのCentral Administraionへアクセス権限が必要)
   ・展開フォルダでmsiexec /i ilm-server-language-pack.msi /log install.log
    japaneseのみを選択する(RC0ではどちらか片方しかインストール出来ない)
    IEの言語設定を日本語(ja-JP)優先にする
    →マニュアルによるとこれで日本語化されるとのことだが、現状ならない。。
     また、IEの言語設定を日本語優先にするとSyncRule設定などのボタン類が正常動作しなくなるのでやはり英語環境しかない?

次回は、簡単なシナリオをベースに実際のデータ同期の設定方法を書こうと思います。

2008年11月15日土曜日

ILM"2" RC0インストール「サーバサイドコンポーネント準備編その2」

インストールに先出ち、必要なアカウントと権限の確認をしておきます。
※今回はILM"2"のコンポーネントのインストールに必要なユーザに限定しますので、以下とは別にExchangeやSQL、WSSをセットアップするアカウントが必要になります。
※すべてActiveDirectory上に作成します。

・ILM"2"インストール用ユーザ
 OS権限:Domain Admins
 SQL Server権限:sysadmin
 メールボックス:必要
・ILM Synchronization Serviceアカウント
 OS権限:Domain Users
 SQL Server権限:sysadmin
 メールボックス:-
・ILM Serviceアカウント
 OS権限:Domain Users、ILM"2"サーバのローカルAdministrators
 SQL Server権限:-
 メールボックス:必要
・ILM MAアカウント
 OS権限:Domain Users、MIISAdmins(インストール過程で作成される)
 SQL Server権限:-
 メールボックス:-

また、セキュリティ上の理由から
・ILM Synchronization Serviceユーザ
・ILM Serviceユーザ
・ILM MAユーザ
に関してはILM"2"サーバのローカルセキュリティポリシーより、
・バッチジョブとしてログオンを拒否する
・ターミナルサービスを使ったログインを拒否する
・ネットワークで経由コンピュータへアクセスを拒否する
の設定を行っておきます。

次回はいよいよインストールを開始します。

2008年11月11日火曜日

Google OpenID

先日GoogleがOpenID Providerになるという発表がありましたが、当初はホワイトリスト方式でRPを選ぶ、という変な制限がついていました。
これはOpenIDの考え方にアンマッチだな~と思っていたんですが(逆ならわかりますが)、やっぱり制限が撤廃されました。

http://google-code-updates.blogspot.com/2008/10/moving-another-step-closer-to-single.html

まぁ実情はホワイトリストに載りたいRPの申請が大量に来たから、というところみたいです。

ILM"2" RC0インストール「サーバサイドコンポーネント準備編その1」(11/14追記)

最初に宣言してから早1ヶ月半。やっとILM"2"の導入記録をまとめていきます。

まずはサーバサイドコンポーネントのインストールを実施する前に必要な環境の確認をします。

サーバサイドは以下の4つのコンポーネントで構成されます。

 ・ILM Service
 ・ILM Synchronization Service
 ・ILM Portal
 ・ILM Password Portal


それぞれをインストールするのにに必要なソフトウェア環境は下記の通りです。

・ILM Synchronization Service

 OS:Windows Server 2008 64bit Standard or Enterprise Editions
   Terminal Serviceをインストールしないこと

 OS追加設定
 ・機能の追加
  Windows Powershell 1.0

 DB:SQL Server 2008 64bit Standard or Enterprise Editions
 開発ツール:Microsoft Visual Studio 2008
 Exchange:Exchange 2007 SP1 Management Console

・ILM Service

 OS:Windows Server 2008 64bit Standard or Enterprise Editions
    Terminal Serviceをインストールしないこと

 OS追加設定
 ・役割の追加
  Webサーバ(IIS)
   デフォルトでは以下の役割サービスにチェックが入っていないのでチェックする
   HTTP基本機能
   ・HTTPリダイレクション
   アプリケーション開発
   ・ASP.NET
   ・.NET拡張性
   ・ISAPI拡張
   ・ISAPIフィルタ
   状態と診断
   ・トレース
   セキュリティ
   ・基本認証
   ・Windows認証
   管理ツール
   ・IIS6管理互換
    ・IIS6 メタベース互換性
    ・IIS6 WMI互換
 ・機能の追加
  .NET Framework 3.0の機能

 DB:SQL Server 2008 64bit Standard or Enterprise Editions

 その他:Microsoft .NET 3.5 SP1 Framework

・ILM Portal / Password Portal

 OS:Windows Server 2008 64bit Standard or Enterprise Editions
    Terminal Serviceをインストールしないこと

 OS追加設定
 ・役割の追加
  Webサーバ(IIS)
   デフォルトでは以下の役割サービスにチェックが入っていないのでチェックする
   HTTP基本機能
   ・HTTPリダイレクション
   アプリケーション開発
   ・ASP.NET
   ・.NET拡張性
   ・ISAPI拡張
   ・ISAPIフィルタ
   状態と診断
   ・トレース
   セキュリティ
   ・基本認証
   ・Windows認証
   管理ツール
   ・IIS6管理互換
    ・IIS6 メタベース互換性
    ・IIS6 WMI互換
 ・機能の追加
  .NET Framework 3.0の機能

 その他:Microsoft .NET 3.5 SP1 Framework

 APサーバ:Windows SharePoint Services 3.0 64bitSP1英語版+言語パック(11/14追記。日本語版を使うとインストールに失敗する)


今回は上記の全コンポーネントを1台のサーバにインストールする予定なので、以下をインストールします。

 OS:Windows Server 2008 64bit Standard or Enterprise Editions
    Terminal Serviceをインストールしないこと

 OS追加設定
 ・役割の追加
  Webサーバ(IIS)
   デフォルトでは以下の役割サービスにチェックが入っていないのでチェックする
   HTTP基本機能
   ・HTTPリダイレクション
   アプリケーション開発
   ・ASP.NET
   ・.NET拡張性
   ・ISAPI拡張
   ・ISAPIフィルタ
   状態と診断
   ・トレース
   セキュリティ
   ・基本認証
   ・Windows認証
   管理ツール
   ・IIS6管理互換
    ・IIS6 メタベース互換性
    ・IIS6 WMI互換

    ・IIS6 管理コンソール(11/14追記。Exchange管理コンソールインストール時に必要)

 ・機能の追加
  .NET Framework 3.0の機能
  Windows Powershell 1.0

 DB:SQL Server 2008 64bit Standard or Enterprise Editions
 開発ツール:Microsoft Visual Studio 2008
 Exchange:Exchange 2007 SP1 Management Console
 その他:Microsoft .NET 3.5 SP1 Framework
 APサーバ:Windows SharePoint Services 3.0 64bitSP1英語版+言語パック(11/14追記。日本語版を使うとインストールに失敗する)

次回はインストールの準備作業編の予定です。

2008年11月8日土曜日

Liberty Alliance Day 2008 @ Tokyo

今日(といっても深夜をまわってしまったので、昨日)、ベルサーレ九段で開催された「Liberty Alliance Day 2008」に参加してきました。

テーマは「Trust and Harmony for the Emerging Identity Ecosystem」ということで、アイデンティティ管理に関連する信頼性確保やプライバシー保護に関する話がメインでした。
基調講演ではOracleのRoger Sullivan氏がLiberty Allianceが注力するポイントの一つとしてIAF(Identity Assurance Framework」の話をしたり、相互運用性に関するパネルではLiberty、OpenID、CardSpaceについて、セキュリティ、プライバシー保護という観点での取り組みを紹介したりと盛りだくさんでした。

ポイントはそれぞれこんな感じ。
・信頼性確保
 Liberty AllianceではIAF、OpenIDではReputation、PAPEのようにIdP/OPの信頼性を保証するための枠組みの策定に注力している(実際に商用利用するにはまだまだ、といったところですが)
・プライバシー保護
 SPへ提供する属性情報をユーザに選択/確認させる、という仕組みが実装されてきつつある。Geneva CardSpaceのデモもあり、InfoCardの中のどんな属性が実際にSPに提供されるかをユーザがあらかじめ確認する様子がみれました。

後は、こういうイベント恒例の新技術、プロジェクトの発表。
今回は、
・OpenSSO 8.0 Enterprise Edition : 11/14リリース
・Genevaの(おそらく)国内初の発表(LibertyだけにSAML2.0サポート※がポイント)
 ※どこまでサポートするかは未定とのことですが。
でした。

まぁ400人くらいの参加があったようなので、それなりに盛況だったんではないでしょうか?

2008年11月4日火曜日

ILM"2" RC0リリース

久しぶりにconnectサイト(http://connect.microsoft.com)を見たらILM"2"がRC0版がリリースされていました。

とりあえずダウンロードはしたので、セットアップしてみようと思います。
ダウンロードサイト: http://technet.microsoft.com/ja-jp/evalcenter/cc872861(en-us).aspx

今回から日本語を含むlanguage packも合わせてダウンロードできるようになっており、やっと日本語環境が使えるようになりそうです。
ただ、やっぱり64bit版しかダウンロードできないみたいです。
MSのプランとしては32bit版も出てくる予定らしいのですが・・・。(検証するのに64bit環境が用意しにくいので出来れば32bit版が手に入るとうれしいんですが)

ILMチームのblogへはとりあえは32bitイメージのリクエストをしてみました。
http://blogs.technet.com/jpilmblg/archive/2008/09/25/ilm2007-windows-server-2008.aspx

2008年11月3日月曜日

国産IdMパッケージに想う

お客さんと話をしていると、相手が情報システム部門の人だと
・兼務など日本企業の慣習になじむのはやっぱり国産
・メジャー海外製品はべらぼうに高い
・何となく国産は安心?
なんて言われるし、ベンダ側もそれに同調している(当たり前か)。

でも、国産か否かという次元ではなく何のためにIdMを導入するのかという視点にたつと、上のような話は選定基準としてまったく意味がなくなってしまいます。
私見ですが、まだまだ国産のIdM製品はライフサイクル管理、同期、プロビジョニングを中心機能として考えていると思いますが、対して洋物のメジャー製品は一歩進んだ?IdMを考えていると思います。

要するに、
・IDが沢山あるから自動管理できるシステムを導入しましょう、というアプローチ
 →レガシーなID管理(同期、プロビジョニング)
・IDが沢山あるから出来るだけIDを減らすためのシステムを導入しましょう、というアプローチ
 →SSOやFederationをプロダクトの中心に据えつつある?
の違い。
どちらが根本的な課題を解決しているか、というとやっぱり後者だと思います。

もちろん、サービス側の対応が前提になる点で後者の導入はそれなりにハードルも高いし、技術仕様などもまだまだ完全に整備されているとは言えない状態です。
国産IdMパッケージベンダさんもなるべく早い段階で後者のアプローチにシフトしていって欲しいもんです。やっぱり国産は安心だし(笑)

国産品の代表?どれも一長一短だとは思いますが、やっぱりインターフェイスが日本語なのが最高です。。

インテック(http://www.intec.co.jp/service/network/idms.html
・束人(そくと)
・結人(ゆいと)

ソフトバンクテクノロジー(http://www.tech.softbank.co.jp/solution/security/accountone/index.html
・Secure Account One

京セラコミュニケーションシステム(http://kccs.co.jp/products/directory/
・GreenOffice Directory

エクスジェンネットワークス(http://www.exgen.co.jp/overview.html
・LDAP Manager


当Blogの主題の各プロダクトのレビューはまた時間のあるときに。。(そんなんばっかりです)