glassfish "auth" features

13
GlassFish “AUTH” Features June 4th, 2012 HASUNUMA Kenji Vice president of GlassFish Users Group Japan http://www.coppermine.jp Twitter A/C: @btnrouge 1

Upload: kenji-hasunuma

Post on 15-Jan-2015

3.900 views

Category:

Technology


2 download

DESCRIPTION

GlassFish Users Group Japan 勉強会 2012 June 「GlassFish認証ワンポイントレッスン」発表資料

TRANSCRIPT

Page 1: GlassFish "AUTH" Features

GlassFish “AUTH” FeaturesJune 4th, 2012

HASUNUMA KenjiVice president of GlassFish Users Group Japan

http://www.coppermine.jpTwitter A/C: @btnrouge

1

Page 2: GlassFish "AUTH" Features

What’s GlassFish Auth?

Authentication (atn / 認証)

サーバにアクセスしてきたユーザが本当にそのユーザか (そのユーザを騙る別人でないか) を確認すること。※サーバー側で実施

Authorization (atz / 認可)

認証したユーザに対して、やってよいこと (あるいはやってはいけないこと) を定めること。※アプリケーション単位で実施

2

Page 3: GlassFish "AUTH" Features

What’s Security Realm?•認証を行う仕組み一式のこと•認証データベースごとの実装:• ファイル、JDBC、LDAP、証明書、PAM、

Solaris、カスタム(JAAS)

• 標準はファイルレルム

3

Page 4: GlassFish "AUTH" Features

File Realm is ...•ユーザー認証情報はファイルへ保存•ファイルは暗号化されている•管理コンソール等で編集する•管理コンソールの認証用レルムは、別に管理されたファイルレルム

4

Page 5: GlassFish "AUTH" Features

JDBC Realm is ...•JDBCデータソース経由でデータベースからユーザー認証情報を取得する

•設定自由度が高く、応用範囲が広い•パスワードは平文で保存できない• SHA-256で算出したハッシュ値を格納する必要あり

5

Page 6: GlassFish "AUTH" Features

LDAP Realm is ...•認証にLDAPを使用

• Oracle Directory Server Enterprise Edition

• OpenLDAP

• Microsoft Active Directory

•Active Directoryは認証設定が必須• 認証に使うユーザーはドメインにログイン可能であれば任意

6

Page 7: GlassFish "AUTH" Features

PAM/Solaris Realms are ...•PAMレルム…Unix/LinuxのPAM認証

APIを利用する

• PAMでLDAP連携を設定しておけば、別途LDAPレルムは設定不要

•Solarisレルム…Solaris独自の認証APIを利用する(当然Linuxでは動作せず)

7

Page 8: GlassFish "AUTH" Features

Recommended are ...•File、JDBC、LDAPがお勧め…設定項目は多いがミスをしづらい

•PAM、Solarisは設定こそ簡単だが環境に依存する

•カスタム(JAAS)は推奨しない

8

Page 9: GlassFish "AUTH" Features

User-Role Mapping is ...Authentication

(atn / 認証) ユーザー単位、サーバーで実施

Authorization (atz / 認可 ロール単位、アプリケーションで実施

認証したユーザーと、アプリケーション側のロールを対応づける仕組みが必要

9

Page 10: GlassFish "AUTH" Features

How to map users/roles•ユーザーとロールのマッピング→ sun-web.xml (glassfish-web.xml)

• WebLogic → weblogic.xml

• JBoss → jboss-web.xml

•でも、せっかくweb.xmlが要らなくなったのに、面倒じゃない?

10

Page 11: GlassFish "AUTH" Features

11

Page 12: GlassFish "AUTH" Features

Default role mapping is...•GlassFish側の事前設定だけで、認証したユーザー/グループを直接ロールにマッピング

•グループ名 = ロール名が前提•サーバー全体に適用される•設定変更後にデプロイしたアプリケーションから有効

12

Page 13: GlassFish "AUTH" Features

More information ...•ブログ連動企画

k.hasunuma’s programming studiohttp://www.coppermine.jp/documents/programming/

• 他の勉強会(WebLogic Server勉強会など)でも似たテーマはよく出されるので、それを参考にするのもよい※ただし、GlassFishとの相違点にはくれぐれも注意

• 上記ブログ記事執筆にあたり、@yumix_h さんにレビューと補足記事の投稿を含めてご協力を頂きました。この場を借りて御礼申し上げます。

13