Your SlideShare is downloading. ×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

WebLogic Serverセキュリティ

958
views

Published on

WebLogic Server セキュリティは標準技術に準拠した柔軟性の高いセキュリティ・アーキテクチャを使用してWebLogic Server上のリソースを統一的に保護します。本セッションでは、WebLogic Serverで使用されているセキュリティ・フレームワークの概要からセキュリティレルムの構成方法、ユーザの変更管理、シングルサインオンなどのWebLogic …

WebLogic Server セキュリティは標準技術に準拠した柔軟性の高いセキュリティ・アーキテクチャを使用してWebLogic Server上のリソースを統一的に保護します。本セッションでは、WebLogic Serverで使用されているセキュリティ・フレームワークの概要からセキュリティレルムの構成方法、ユーザの変更管理、シングルサインオンなどのWebLogic Serverセキュリティのポイントを説明します。

日本オラクル株式会社 オラクルユニバーシティ 岡田 大輔

Published in: Technology

0 Comments
4 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
958
On Slideshare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
33
Comments
0
Likes
4
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.1 日本オラクル株式会社 オラクルユニバーシティ 岡田 大輔 2014年 3月25日 WebLogic Server セキュリティ
  • 2. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.2 以下の事項は、弊社の一般的な製品の方向性に関する概要を説明するもので す。また、情報提供を唯一の目的とするものであり、いかなる契約にも組み 込むことはできません。以下の事項は、マテリアルやコード、機能を提供す ることをコミットメント(確約)するものではないため、購買決定を行う際 の判断材料になさらないで下さい。オラクル製品に関して記載されている機 能の開発、リリースおよび時期については、弊社の裁量により決定されます 。 OracleとJavaは、Oracle Corporation 及びその子会社、関連会社の米国及びその他の国における登録商標です。 文中の社名、商品名等は各社の商標または登録商標である場合があります。
  • 3. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.3 Agenda  WebLogic Server セキュリティ – 宣言的セキュリティ  セキュリティ・レルム – セキュリティ・レルムとは? – 認証プロバイダ設定時の考慮事項  デフォルト・グローバル・ロールの利用 – 管理コンソールのアクセス制限
  • 4. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.4 WebLogic Server セキュリティ
  • 5. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.5 WebLogic Server セキュリティ  WebLogic Server セキュリティは標準技術に準拠した柔軟性の高いセキュリ ティ・アーキテクチャを使用してWebLogic Server上のリソースを統一的に保 護する – 標準技術とは …  JAAS … 認証(atn)/認可(atz)サービス  JSSE … SSL実装  JCA/JCE .. 暗号化仕様  JACC … 認可プロバイダ・インタフェース for コンテナ  … 基本的な考え方
  • 6. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.6 Java EEのセキュリティとは ... 宣言的セキュリティ ○○というリソースにアクセスできるのは △△というセキュリティ・ロール • WebアプリケーションはURL単位、EJBはメソッド単位で指定 • 注釈もしくはデプロイメント記述子で宣言 • セキュリティ・ロールはユーザ/グループの集合概念 • デプロイメント記述子で宣言
  • 7. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.7 WebLogic Server Security Framework JAAS / WebLogic Security API WebLogic Security Framework Security Provider 管理者 セキュリティ 設定 API使用 ポリシー宣言 開発者 Security Service Provider Interface(SSPI)
  • 8. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.8 アクセス時のセキュリティ制御 ログイン サブジェクト 処理要求 ログイン 署名 検証 ロール取得 裁決 LoginModule プリンシパル 検証 ロール マッパー アクセス 決定 裁決 WebLogic Server クライアント セキュリティ フレームワーク 認証 認可 サブジェクト PERMIT/DENY/ ABSTAIN リソース呼び出し リソース
  • 9. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.9 まとめ: 宣言的セキュリティ  開発者: Java EE 仕様に則って開発 – リソース毎にアクセスポリシーを宣言  宣言はxmlファイルもしくは@注釈で埋め込み – アプリケーションで使用するセキュリティ・ロールを宣言  宣言はxmlファイル  実ユーザ名ではない抽象化したロール名を推奨  管理者: セキュリティ・レルムを構成 – 開発者が設定したJava EE宣言的セキュリティが機能するようにWebLogic Serverド メインのセキュリティ設定を行う – セキュリティ・プロバイダ – ユーザ, グループ, セキュリティ・ロール – その他 (SSL …) 開発者と管理者 それぞれの考慮事項
  • 10. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.10 セキュリティ・レルム
  • 11. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.11 セキュリティ・レルムとは?  セキュリティ・レルムの構成要素 – セキュリティ・プロバイダの設定 – ユーザ, グループ, セキュリティ・ロール – セキュリティ・ポリシー WebLogic Serverリソースを保護する仕組み デフォルト・グループ セキュリティ・ロール セキュリティ・ポリシー セキュリティ プロバイダ データベース定義済み ユーザ/グループ セキュリティ・ロール セキュリティ プロバイダ WebLogic Server リソース スコープ指定 ロール/ポリシーデフォルトセキュリティ・ロール, セキュリティ・ポリシー 定義済みグローバル・ロール Tips: WLSリソースにアクセス できるのはセキュリティ・レル ム内のユーザのみ
  • 12. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.12 セキュリティ・プロバイダ・データベース  一部のセキュリティ・プロバイダがセキュリティ・サービスを提供するための データを格納するストア – ユーザ, グループ (認証プロバイダ) – セキュリティ・ポリシー (認可プロバイダ) – セキュリティ・ロール (ロール・マッピング・プロバイダ) – 資格証明 (資格マッピングプロバイダ)  使用可能なセキュリティ・プロバイダ・データベース – 組み込みLDAPサーバ ... デフォルト設定 – RDBMS … ドメイン作成時(or 作成後)に指定可能 セキュリティ プロバイダ データベース セキュリティ プロバイダ
  • 13. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.13 組み込みLDAPサーバ  ストア先 – $DOMAIN/servers/<server_name>/data/store/ldap – 管理サーバのデータがマスタ。マルチ・サーバ・ドメインでは管理対象サーバ側に もレプリカが作成される  組み込みLDAPの設定は管理コンソールを使用 – バックアップ、キャッシュ、資格など 組み込み LDAP セキュリティ プロバイダ Tips: 組み込みLDAPサーバは大量のユーザ管理には向かない… • 管理すべきユーザが多数いる場合は、別のユーザストアが存在するケースが多い • ユーザ管理はAdministrationコンソール or WLST
  • 14. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.14 RDBMSセキュリティ・ストア  次のセキュリティ・プロバイダではデータ・ストアとしてRDBMSを使用可能 – 認可プロバイダ – ロール・マッピング・プロバイダ – 資格証明マッピング・プロバイダ – 証明書レジストリ・プロバイダ  ドメイン作成時に指定可能 (構成ウィザード) – 事前にデータベースにテーブルを作成しておく  $WL_HOME/server/lib/rdbms_security_store_XXX.sql – 複数サーバ構成のドメインではJMS通知を有効にする RBDMS セキュリティ プロバイダ JDBC 接続
  • 15. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.15 セキュリティ・レルムの設定  デフォルトはmyrealm – WebLogicセキュリティプロバイダで構成されたレルム  WebLogic Serverで標準実装として提供されるセキュリティプロバイダ実装  DefaultXXXという名前で設定されているプロバイダ  レルムは複数定義可能だがアクティブにできるレルムは一つだけ – 必要に応じてmyrealmのセキュリティ・プロバイダ定義をカスタマイズ  構成が大きく異なるセキュリティ・レルム定義を行う場合は新規作成を検討
  • 16. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.16 まとめ: セキュリティ・レルムとは?  WebLogic Serverのセキュリティ・レルムの構成要素 – セキュリティ・プロバイダ  プロバイダの設定のストア先は組み込みLDAPとRDBMSを選択可 – ユーザ, グループ, セキュリティ・ロール – セキュリティ・ポリシー  セキュリティ・レルムを構成しないとWebLogic Serverは起動しない – ドメインにはmyrealmというデフォルト定義がある – セキュリティ・プロバイダの構成は必要に応じてカスタマイズできる
  • 17. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.17 レルムを構成するセキュリティ・プロバイダ  セキュリティ・レルムを構成するセキュリティ・プロバイダは任意で追加・削 除可能 認証プロバイダ 認可プロバイダ 資格証明マッピング ・プロバイダ 証明書の検索と 検証のプロバイダ 裁決プロバイダ ロール・マッピング ・プロバイダ プリンシパル検証 プロバイダ IDアサーション ・プロバイダ 監査プロバイダ オプション 必須
  • 18. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.18 セキュリティ・プロバイダの種類  認証プロバイダ – ユーザの認証を行い、信頼を確立する – 認証プロバイダはセキュリティ・レルム内に1つ以上必要  IDアサーション・プロバイダ – トークンを検証してユーザIDにマップする。境界認証用。  認可プロバイダ – セキュリティ・ロールとセキュリティ・ポリシーに基づくアクセス制御  監査プロバイダ – ユーザ操作の記録を否認防止を目的として収集、格納する  資格証明マッピング・プロバイダ – WLS資格証明を他システムで使用される資格証明にマッピング。リモート・システムへのログ インを実現
  • 19. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.19 認証プロバイダの設定  認証プロバイダは、指定されたユーザ名とパスワードの資格証明ペアに合致す るユーザをデータ・ストアから見つけ出す  データ・ストアの種類によって複数の認証プロバイダを設定可能 – 組み込みLDAP (WebLogic認証プロバイダ) – LDAP(OpenLDAP, Active Directory, Novell, OID, OVD …) – Database – …
  • 20. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.20 JAAS制御フラグ  認証プロバイダによる認証処理は制御フラグによって制御される – 複数の認証プロバイダを構成する場合は認証プロバイダ毎に適切な制御フラグ値を 設定する  Default Authenticatorのデフォルト設定はREQUIRED  新規作成時のデフォルト設定はOPTIONAL フラグ値 認証成功要否 認証成功時 認証失敗時 REQUIRED ○ 次のプロバイダへ 次のプロバイダへ REQUISITE ○ 次のプロバイダへ アプリケーションへ SUFFICIENT × アプリケーションへ 次のプロバイダへ OPTIONAL × 次のプロバイダへ 次のプロバイダへ
  • 21. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.21 認証順序の指定  複数の認証プロバイダを使用する場合は、認証順序に注意 – 認証順は管理コンソールで表示されるリストの順に認証処理される – 設定を正しく行わないと意図しない動作になる 認証順
  • 22. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.22 設定例: LDAP認証  LDAP認証プロバイダをセキュリティ・レルムに追加定義する – DefaultAuthenticatorと併用することで組み込みLDAP, 外部LDAP両方のユーザを認 証可能 WebLogic Server Default Authenticator 組み込み LDAP OpenDS Authenticator ユーザ, グループ 参照 ユーザ, グループ 参照
  • 23. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.23 認証プロバイダの作成 Tips: 連携対象のLDAPサーバに 対応する認証プロバイダを選択 - 各LDAP認証プロバイダ毎に一般的な ディレクトリ・スキーマが定義されて いる
  • 24. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.24 制御フラグの設定 認証成功したらアプリケーションに制御を戻 す場合はSUFFICIENTを設定 DefaultAuthenticatorの制御フラグ値 (REQUIRED)も変更する
  • 25. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.25 LDAP検索設定(プロバイダ固有)
  • 26. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.26 認証順の設定  新しく定義した認証プロバイダはリストの最後に追加される – 必要に応じて順序を変更する
  • 27. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.27 設定例: DB認証  認証プロバイダのタイプは SQLAuthenticator – 事前準備:  データベースにユーザ, グループ用のテーブルを作成  SQLAuthenticatorが使用するデータソースを事前に作成
  • 28. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.28 参考: DBテーブル作成スクリプト CREATE TABLE USERS ( U_NAME VARCHAR(200) NOT NULL, U_PASSWORD VARCHAR(50) NOT NULL, U_DESCRIPTION VARCHAR(1000)); ALTER TABLE USERS ADD CONSTRAINT PK_USERS PRIMARY KEY (U_NAME); CREATE TABLE GROUPS ( G_NAME VARCHAR(200) NOT NULL, G_DESCRIPTION VARCHAR(1000)); ALTER TABLE GROUPS ADD CONSTRAINT PK_GROUPS PRIMARY KEY (G_NAME); 注: SQLAuthenticatorにデフォルトで設定されている認証処理用SQLを動作させるため簡易スクリプト CREATE TABLE GROUPMEMBERS ( G_NAME VARCHAR(200) NOT NULL, G_MEMBER VARCHAR(200) NOT NULL); ALTER TABLE GROUPMEMBERS ADD CONSTRAINT PK_GROUPMEMS PRIMARY KEY ( G_NAME, G_MEMBER); ALTER TABLE GROUPMEMBERS ADD CONSTRAINT FK1_GROUPMEMBERS FOREIGN KEY ( G_NAME ) REFERENCES GROUPS (G_NAME) ON DELETE CASCADE;
  • 29. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.29 まとめ: 認証プロバイダ設定時の考慮事項  認証プロバイダを追加すると組み込みLDAP以外のデータ・ストアに格納され たユーザでも認証できる – LDAPサーバやRDBなど多様なデータ・ストアを活用できる – DefaultAuthenticatorは削除しないことを推奨  組み込みLDAP(DefaultAuthenticator): 管理ユーザ  外部データ・ストア(追加認証プロバイダ): 一般ユーザ – 複数の認証プロバイダを設定する場合は、認証順と制御フラグの設定に注意する
  • 30. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.30 デフォルト・グローバル・ ロールの利用
  • 31. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.31 管理コンソールのアクセス制御  管理コンソールはWebアプリケーション – 宣言的セキュリティが使われている – デフォルト・グローバル・ロールにアクセスを許可 <security-constraint> <web-resource-collection> <web-resource-name>console</web-resource-name> <url-pattern>/</url-pattern> </web-resource-collection> <auth-constraint> <role-name>Admin</role-name> <role-name>Operator</role-name> <role-name>Deployer</role-name> <role-name>Monitor</role-name> </auth-constraint> </security-constraint> 管理コンソール(consoleapp)のweb.xml
  • 32. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.32 デフォルト・グローバル・ロール ロール名 グループ名 起動・停止 デプロイ 設定変更 設定表示・モニ タ セキュリティ操 作 Admin Administrators ○ ○ ○ ○ ○ Deployer Deployers × ○ △ (一部) ○ × Operator Operators ○ × × ○ × Monitor Monitors × × × ○ × •AppTester (AppTesters) … 管理チャネルを使用して管理モードで起動したアプリケーションにア クセス可能(プロダクション再デプロイメントなどで使用) •ドメイン作成時に指定するユーザはAdministratorsグループに所属する = Adminロールに属する •セキュリティ操作(ユーザロック解除を含む)を実行できるのはAdminロールのみのため、Admin ロールに属するユーザを複数定義しておくことを推奨
  • 33. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.33 管理コンソールにアクセスするには?  次のいずれかを設定 – 認証プロバイダのデータ・ストアにデフォルト・グループと同名のグループを作成 – WebLogic Serverドメインのグローバル・ロール定義を変更 DefaultAuthenticator以外で定義されたユーザのアクセス
  • 34. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.34 グローバル・ロールの定義  ホーム >セキュリティ・レルムのサマリー >myrealm >ロールとポリシー >レ ルム・ロール – グローバルロール→Rolesを選択
  • 35. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.35 管理コンソールでのユーザ管理の注意点  ユーザの追加・削除・変更は、ドメイン設定時のコンフィグレーション・ロッ クとは無関係 – ロック取り消し時も変更は反映されたまま – ユーザ管理は他の管理タスクとは独立して行うことを推奨  管理コンソールでユーザ情報の変更ができるのはDefaultAuthenticator, SQLAuthenticatorなど – LDAPAuthenticatorなどを追加した場合のユーザ情報は表示のみ  編集はLDAPサーバ側で行う
  • 36. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.36 参考: WLSTでユーザ/グループを追加 # 認証プロバイダを参照(serverConfig or domainConfig階層) wls:/domain/serverConfig> atnr=cmo.getSecurityConfiguration().getDefaultReal m().lookupAuthenticationProvider('DefaultAuthenticator') # ユーザ追加 wls:/domain/serverConfig> atnr.createUser('user_name', 'password', 'description') # グループ追加 wls:/domain/serverConfig> atnr.createGroup('group_name', 'description') # グループにユーザを追加 wls:/domain/serverConfig> atnr.addMemberToGroup('group_name', 'user_name')
  • 37. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.37 まとめ: 管理コンソールのアクセス制限  管理コンソールもJava EEアプリケーションとしてデプロイされているため、 Java EEの宣言的セキュリティを使用する – グローバル・ロール毎にアクセス権限が異なるので作業レベルに応じてロールを使 い分けることを推奨  管理コンソールを使用したユーザ設定変更はコンフィグレーション・ロックと は無関係 – ユーザ管理は他の管理タスクとは独立して行うことを推奨 ○○というリソースにアクセスできるのは △△というセキュリティ・ロール
  • 38. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.38 オラクルユニバーシティから のお知らせ
  • 39. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.39 Oracle Universityからのお知らせ  WebLogic Serverの管理方法を体系的に学習したい方に最適な研修 コースをご提供しています。 – Classroomトレーニングだけでなく、Live Virtual Classや『Oracle トレー ニング・オンデマンド』など多様な受講形態から選択いただけます。
  • 40. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.40 コース内容 ■Oracle WebLogic Server概要 ■ドメインの作成 ■Administration Console ■ドメインのモニタリング ■アプリケーションのデプロイメント ■WebLogic Server セキュリティ ■ドメインのバックアップおよびリカバリ ■WebLogic Serverのインストールおよびパッチ適用 ■サーバーの起動および停止 ■JDBCデータソースの構成 ■ノードマネージャ ■WebLogic Serverクラスタリング ■トランザクション・サービスのコンフィグレーション 受講前提条件 ・Linux の基本的な操作方法の理解 ・Java EE の基礎知識(サーブレットや JSP など) ※推奨 対象者 ・Oracle WebLogic Server 管理者 ・Javaアプリケーション開発者 ・アーキテクト コース日程 5日間 日程の詳細は Oracle University Webサイト にてご確認ください。 受講料 定価¥374,850(税込) ※Oracle PartnerNetwork会員様は、パートナー割引価格で受講いただけます。 Oracle WebLogic Server 12c の運用管理スキルをしっかり習得 待望のWebLogic Server 12c(12.1.2)対応研修がいよいよ提供開始です。 このコースでは、アプリケーション・サーバー管理者がOracle WebLogic Server 12cのインストールおよび設定方法を習得することがで きます。管理コンソールやコマンドラインツール(WLST)などを使用してドメインを構成する方法やJava EEアプリケーションをサー バーにデプロイする方法についても説明します。さらに、Oracle WebLogic Server のプロキシとしてOracle HTTP Serverを設定し、 WebLogic Serverクラスタによるアプリケーションのフェイルオーバーとロードバランシングをサポートする方法など、環境構築に必要 なスキルとWebLogic Serverのモニタリングやログ情報の収集など運用に必要なスキルを実機演習を通して習得できます。さらに、 Oracle WebLogic Server 12cで強化されたActive GridLink for RACの構成方法やWebLogic Server 12.1.2の新機能である動的クラスタなど 注目の新機能もカバーします。 Oracle WebLogic Server 12c: 管理 I ミドルウェア 開催日程 ■ 2014年4月7日 (月) 〜 11 日 (金)
  • 41. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.41
  • 42. Copyright © 2014, Oracle and/or its affiliates. All rights reserved.42

×