X

An Oracle blog about WebLogic Channel

「WebLogic Server セキュリティ」レポート

WebLogic勉強会 通信

WebLogic Serverファンの皆様、こんにちは、WebLogic Server勉強会通信です。
2014年3月25日に東京で開催された
「第45回WebLogic Server勉強会@東京」
「WebLogic Server セキュリティ」(講師:日本オラクル オラクルユニバーシティ 岡田 大輔)をレポートします。岡田さんはWebLogic Serverで
使用されているセキュリティ・フレームワークの概要からセキュリティ・レルムの構成方法、ユーザの変更管理などの
WebLogic Serverセキュリティの基本を中心に説明しました。ぜひ、この機会にWebLogic Serverのセキュリティの考え方、設定のポイントなどマスターしてください。
(日本オラクル Fusion Middleware事業統括本部 佐々木 政和)

はじめに

「WebLogic Serverセキュリティ」(講師:日本オラクル オラクルユニバーシティ 岡田 大輔)
セッションをレポートします。

  • 1).Java EEセキュリティ、宣言的セキュリティの考え方
  • 2).セキュリティ・レルムとは何か、その構成要素
  • 3).セキュリティ・プロバイダ概要、認証プロバイダの設定例
  • 4).管理コンソールのアクセス制御、デフォルト・グローバル・ロールの定義やユーザ管理の注意点
  • Java EEセキュリティ、宣言的セキュリティの考え方

    WebLogic Serverのセキュリティ機能はWebLogic Server上のリソースを統一的に保護する目的で
    標準技術に準拠した宣言的セキュリティを使用して実装されています。ユーザ、グループとセキュリティ・ロール、
    セキュリティ・ポリシー、リソースの関係を設定します。
    セキュリティ・ポリシーはアクセス制御リスト(ACL)にかわるもので、「誰がWebLogicリソースにアクセスできるか」という
    問いに答えるものです。セキュリティ・ポリシーは、WebLogic Serverリソースと、1つまたは複数のユーザー、グループ、
    またはセキュリティ・ロールとの間に関連付けを定義するときに作成されます。
    リソースはWebアプリケーションの場合はURLで、EJBの場合はメソッド単位になります。
    宣言的セキュリティにより、アプリケーション開発者と管理者の役割分担が明確になります。
    開発者はリソース毎に、注釈(アノテーション)やデプロイメント記述子を使用してアクセスポリシーを宣言
    します。また、アプリケーションで使用するセキュリティロールを宣言します。
    一方、管理者は開発者が設定したJava EE宣言的セキュリティが機能するように
    WebLogic Serverドメインのセキュリティ設定を行います。

    WebLogic Serverのセキュリティフレームワークは、サードパーティのセキュリティプロバイダー
    ソリューションを連携するためにSecurity Provider Interface (SSPI)をサポートしています。
    アプリケーション開発者は、JAASを活用することで低レベルのセキュリティ関連インタフェースを
    意識する必要はありません。

    この図はクライアントがログインリクエストを出し、次にリソースへのアクセスリクエストを
    送った時の内部の動きを説明しています。まず、WebLogic Serverの
    セキュリティフレームワークはログインモジュールを呼び出し、ユーザの認証を
    行います。次にセキュリティロールを介してリクエストされたリソースへのアクセス認可を
    判断します。開発者はJava EEに沿った開発を行い、管理者はセキュリティプロバイダを適切に設定
    しなけれはなりません。

    セキュリティ・レルムとは何か、その構成要素

    セキュリティ・レルムはWebLogic Serverリソースを保護する仕組みです。
    セキュリティ・レルムは、
    WebLogicリソースを保護する複数のメカニズムで構成されています。
    各セキュリティ・レルムは、構成済みのセキュリティ・プロバイダ、ユーザー、グループ、セキュリティ・ロール、
    およびセキュリティ・ポリシーで構成されます。
    ユーザーはセキュリティ・レルムで定義されていないと、そのセキュリティ・レルムに属するWebLogicリソースに
    アクセスできません。ユーザーが特定のWebLogicリソースにアクセスしようとした場合、WebLogic Serverは、
    関連するセキュリティ・レルムでそのユーザーに割り当てられているセキュリティ・ロールと、その特定のWebLogicリソースのセキュリティ・ポリシーをチェックして、ユーザを認証および認可します。

    各種のリソースにアクセスできるのはセキュリティ・レルム内のユーザのみです。
    一部のセキュリティ・プロバイダはセキュリティ・サービスを提供するための
    データを格納するストアとしてセキュリティ・プロバイダデータベースを使用します。
    この中には、ユーザ,グループ(認証プロバイダ)、
    セキュリティ・ポリシー(認可プロバイダ)、
    セキュリティ・ロール(ロール・マッピング・プロバイダ)、
    資格証明(資格マッピングプロバイダ)などが格納されます。
    セキュリティ・プロバイダデータベースには、
    デフォルトの組み込みLDAPサーバと
    ドメイン作成時(または作成後)に指定可能なRDBMS
    セキュリティ・ストアがあります。
    WebLogic Serverで標準実装として提供されるデフォルトのセキュリティ・プロバイダ実装は
    myrealmです。
    レルムは複数定義可能ですがアクティブにできるレルムは一つだけなので、
    必要に応じてmyrealmのセキュリティ・プロバイダ定義をカスタマイズします。

    セキュリティ・プロバイダ概要、認証プロバイダの設定例

    セキュリティ・レルムを構成するセキュリティ・プロバイダは任意で追加・削除可能です。
    また、認証プロバイダを追加すると組み込みLDAP以外のデータ・ストアに
    格納されたユーザでも認証できます。例えば、
    管理ユーザ向けには組み込みLDAP(DefaultAuthenticator)を使用して、
    一般ユーザ向けに外部データ・ストア(追加認証プロバイダ)を使用する方法です。
    複数の認証プロバイダを設定する場合は、認証順と制御フラグの設定に注意する
    必要があります。

    管理コンソールのアクセス制御、デフォルト・グローバル・ロールの定義やユーザ管理の注意点

    WebLogic Sreverの管理コンソールはWebアプリケーションとして実装されています。
    宣言的セキュリティが使われており、デフォルト・グローバル・ロールにより
    各リソースへのアクセス可否が決まります。

    まとめ

    WebLogic Serverのセキュリティをマスターするためには、Java EEの宣言的セキュリティの仕組みを理解して
    アプリケーション開発者と管理者それぞれの役割を果たすことが重要になります。
    ぜひ、「WebLogic Server セキュリティ」資料をレビューしてください。




    Be the first to comment

    Comments ( 0 )
    Please enter your name.Please provide a valid email address.Please enter a comment.CAPTCHA challenge response provided was incorrect. Please try again.