Novell Nsure UDDI Serverをインストールする。
卒研に必要っぽいので。
UDDIって?
UDDI(Universal Description, Discovery and Integration)とは、Webサービス用の検索システムのこと。Webサービス公開者はUDDIレジストリにWebサービスの情報(どういうサービスか、どこにあるのか、誰のものか、など)を登録し、Webサービス利用者はUDDIレジストリに対して検索をし目的に合致したWebサービスを探し出すという仕組み。
http://ja.wikipedia.org/wiki/UDDI
Web 2.0とか、APIとか流行ってるのにUDDIはさっぱり流行ってない罠。
英語版 Wikipediaより
Universal Description, Discovery and Integration (UDDI) is a platform-independent, XML-based registry for businesses worldwide to list themselves on the Internet. UDDI is an open industry initiative, sponsored by OASIS, enabling businesses to publish service listings and discover each other and define how the services or software applications interact over the Internet. A UDDI business registration consists of three components:
http://en.wikipedia.org/wiki/Universal_Description_Discovery_and_Integration
英語版 WikipediaのUDDI Implementationsの項からNovell Nsure UDDI ServerというオープンソースのUDDIを見つけたのでインストールしてみることにする。
ちなみにUDDIにはUDDIv2とUDDIv3があるんだけど、このUDDIサーバーは結局どっちなんだろう。UDDIは上位互換なのか?
Novell Nsure UDDI Server is a UDDI version 2.0 registry, that leverages a directory backend to manage registry content and control access to it. It offers secure access (authentication and authorization) to UDDI registry entries, unified account management, and distribution of the registry content leveraging Directory Services, and offers great value for public as well as private UDDI registry deployments. Leveraging LDAP directory backend for UDDI is a natural fit, as UDDI is the "new face" of a directory in a web services environment.
NSure UDDI Server is a cross-platform Java implementation that can be deployed on any J2EE Servlet container, and has been tested with Tomcat and JBoss. It works with any standard LDAPv3 directory server. When integrated with Novell eDirectory, it offers unique features (e.g. Atomic Update for UDDI Publish operations) and best performance leveraging eDirectory capabilities.
http://developer.novell.com/wiki/index.php/Novell_Nsure_UDDI_Server
ライセンスはApache License 2.0
NSure UDDI Serverのダウンロード
ダウンロードページからUDDI_1.1.3.tar.gzをダウンロード、適当なところに保存して解凍。
OpenLDAPのインストール
$ sudo apt-get install slapd ldap-utils
OpenLDAPの設定
解凍したファイルに含まれてるuddi-server-install.pdfを見ながら作業。
PDFファイルを開くにはevince。そんなの知らないよ><
evince UDDI_1.1.3/server/uddi-server-install.pdf
スキーマファイルをコピー
sudo cp UDDI_1.1.3/server/conf/uddi-ldap-schema.schema /etc/ldap/schema/
sladp.confの編集
sudo gedit /etc/ldap/sladp.conf
# Schema and objectClass definitions include /etc/ldap/schema/core.schema include /etc/ldap/schema/cosine.schema include /etc/ldap/schema/nis.schema include /etc/ldap/schema/inetorgperson.schema include /etc/ldap/schema/uddi-ldap-schema.schema #追加 (中略) #rootdnの設定 rootdn "cn=admin,dc=nodomain" rootpw {SSHA}Gygh5FKBJqa+0/+R2UkpC/ka2w0nqH/J (中略) #アクセス制限 access to dn.base="dc=nodomain,ou=uddi" by * read by dn.base="dc=nodomain,cn=ServerAdmin" write #検索の高速化 index uddiid,uddiX-JavaContainerClass,uddiDeleted eq index uddiBusinessKey,uddiServiceKey,uddiBindingKey,uddiTModelKey eq,pres index uddiName,uddiKeyValue eq,subany
rootpwに設定するパスワードを暗号化した文字列はslappasswdで取得する。
$ slappasswd New password: Re-enter new password: {SSHA}Gygh5FKBJqa+0/+R2UkpC/ka2w0nqH/J
これはパスワードをadminにした例。
OpenLDAPの再起動
$ sudo /etc/init.d/slapd restart
Serverのユーザーを登録する。そのための定義ファイルを編集。
$ sudo gedit UDDI_1.1.3/server/conf/uddi-node-init.ldif
dnをちょっと変更。
version: 1 dn: cn=ServerAdmin,dc=nodomain #変更 objectClass: organizationalPerson objectClass: person objectClass: top cn: ServerAdmin sn: ServerAdmin userPassword:: MTEx dn: ou=uddi,dc=nodomain #変更 objectClass: organizationalUnit objectClass: top ou: uddi
LDAPサーバーに反映する。
$ sudo ldapadd -D "cn=admin,dc=nodomain" -x -W -f UDDI_1.1.3/server/conf/uddi-node-init.ldif
#まだまだ追記予定