機械翻訳について

Encrypt Model Tool

Oracleのセキュリティ標準を満たすために、暗号化アルゴリズムを実行するには、JDK 7、JDK 8以降のバージョンが必要です。

モデルには、WebLogic Serverドメイン構成が含まれます。 特定のタイプのリソースおよびその他の構成にはパスワードが必要です。たとえば、JDBCデータ・ソースでは、データベース接続を確立するユーザーのパスワードが必要です。 パスワードを必要とするリソースを作成または構成する場合は、そのパスワードをモデルに直接または変数ファイルに指定する必要があります。 クリアテキストのパスワードはソースとして構成を格納することには影響しないため、Encrypt Model Toolはモデル作成者にパスフレーズ・ベースの可逆暗号化を使用したモデルおよび変数ファイル内のパスワードを暗号化を提供します。 暗号化されたパスワードを含むモデルでツールを使用する場合、必要なWebLogic Server構成(ドメイン固有のキーに基づく独自の暗号化メカニズムをサポートする)をツールがメモリー内のパスワードを復号化できるように、暗号化パスフレーズを指定する必要があります。 WebLogic Deploy Tooling暗号化メカニズムを使用する必要はありませんが、クリアテキスト・パスワードをディスクに格納することは望ましくありません。

Create Domain、Update DomainおよびDeploy Applications Toolsでは、一連のモデルを使用できます。 Encryptモデルはモデルのセットを暗号化します。 各モデルは、同じパスフレーズを使用して暗号化され、元のロケーションに書き込まれます。

WebLogic Deploy Toolingでは、モデル内でドメインで暗号化されたパスワードを直接使用することもできます。 Encrypt Model Toolは、このメソッドと併用できません。

次のモデル例から始めます:

domainInfo:
    AdminUserName: weblogic
    AdminPassword: welcome1
    ServerStartMode: prod
topology:
    Name: DemoDomain
    SecurityConfiguration:
        NodeManagerUsername: weblogic
        NodeManagerPasswordEncrypted: welcome1
    Security:
        Group:
            FriscoGroup:
                Description: The WLS Deploy development group
        User:
            Robert:
                Password: welcome1
                GroupMemberOf: [ Administrators, FriscoGroup ]
            Derek:
                Password: welcome1
                GroupMemberOf: 'Administrators, FriscoGroup'
            Richard:
                Password: welcome1
                GroupMemberOf: [ FriscoGroup ]
            Carolyn:
                Password: welcome1
                GroupMemberOf: FriscoGroup
            Mike:
                Password: welcome1
                GroupMemberOf: FriscoGroup
            Johnny:
                Password: welcome1
                GroupMemberOf: FriscoGroup
            Gopi:
                Password: welcome1
                GroupMemberOf: FriscoGroup

モデルでEncrypt Model Toolを実行するには、次のコマンドを実行します:

$ weblogic-deploy\bin\encryptModel.cmd -oracle_home c:\wls12213 -model_file UnencryptedDemoDomain.yaml

このツールでは、暗号化パスフレーズを2回入力し、モデル内で検出されたパスワードを暗号化し、変数値を持つパスワード・フィールドをスキップして、次のモデルのような結果を生成します。 標準入力プロンプトは、他の2つのオプションでバイパスできます。 パスフレーズを環境変数に格納し、コマンド行オプション-passphrase_envで環境変数名を使用します。 もう1つのオプションは、パスフレーズ値を含むファイルを作成することです。 コマンド行オプション-passphrase_fileを使用して、このファイル名を渡します。

domainInfo:
    AdminUserName: weblogic
    AdminPassword: '{AES}a0dacEQ4Q2JnTmI4VHp5NjIzVHNPRFg5ZjRiVDJ4NzU6T1M0SGYwM2xBeHdRdHFWVTpWZEh6bkd4NzZSQT0='
    ServerStartMode: prod
topology:
    Name: DemoDomain
    SecurityConfiguration:
        NodeManagerUsername: weblogic
        NodeManagerPasswordEncrypted: '{AES}WndJQWNySWpoY0VEbFpmR2V1RFhvamVFdGwzandtaFU6L1d4V0dPRFpsaXJIUkl2djpQdUdLaTloR1IxTT0='
    Security:
        Group:
            FriscoGroup:
                Description: The WebLogic Deploy development group
        User:
            Robert:
                Password: '{AES}VFIzVmdwcWNLeHBPaWhyRy82VER6WFV6aHRPbGcwMjQ6bS90OGVSTnJxWTIvZjkrRjpjSzBQUHlOWWpWTT0='
                GroupMemberOf: [ Administrators, FriscoGroup ]
            Derek:
                Password: '{AES}R1BTM21ZSkxpdTNIZjNqcTlsSC9PeHV4aXJoT3kxazM6M1dLOXBLeCtlc1lsVDUrWjo5VitHZUxCcjZnOD0='
                GroupMemberOf: 'Administrators, FriscoGroup'
            Richard:
                Password: '{AES}Y3FkQmRIRGhjZEtlRjVkVVdLQU1Eb09LWDIzMlhUWVo6MjllVExsMmNmNzJzZDFjaTpNcVNDbUs2cnRFRT0='
                GroupMemberOf: [ FriscoGroup ]
            Carolyn:
                Password: '{AES}cW8wczJqZXJZOHVsTGNOTmlqTGpuZGFoSkY2ME5WbTk6c0VaWGs1ME5pemlKdC9wajpFaTJPRS9ZQlcvND0='
                GroupMemberOf: FriscoGroup
            Mike:
                Password: '{AES}cnF6Z3JOVWcvc0czN3JVb1g5T2FidmRsSU51anJCa0Y6UlBsNVFsOFlXU29xUlY1aDp3VWZWYU5VOVRkMD0='
                GroupMemberOf: FriscoGroup
            Johnny:
                Password: '{AES}UWJ5Y25Ma2RHTkNMVTZ1RnlhRkNaTUxXaXV4SjBjaWg6citwTDQvelN1aUlPdnZaSDpCMEdSWGg2ZlVJUT0='
                GroupMemberOf: FriscoGroup
            Gopi:
                Password: '{AES}MWJGcnhtZlNyWXVrU1VXMVFxZFEvQThoS1hPN2FQdDc6MmRPaUF2Y1FCQ3VIK3MydDpZaFR5clBrN1FjOD0='
                GroupMemberOf: FriscoGroup

モデルが次のモデルのように変数ファイルにパスワードを格納する場合:

resources:
    JDBCSystemResource:
        Generic1:
            Target: mycluster
            JdbcResource:
              JDBCDataSourceParams:
                  JNDIName: [ jdbc/generic1 ]
                  GlobalTransactionsProtocol: TwoPhaseCommit
              JDBCDriverParams:
                  DriverName: oracle.jdbc.xa.client.OracleXADataSource
                  URL: 'jdbc:oracle:thin:@//@@PROP:db.url@@'
                  PasswordEncrypted: '@@PROP:db.password@@'
                  Properties:
                      user:
                          Value: '@@PROP:db.user@@'
                      oracle.net.CONNECT_TIMEOUT:
                          Value: 5000
                      oracle.jdbc.ReadTimeout:
                          Value: 30000
              JDBCConnectionPoolParams:
                  InitialCapacity: 3
                  MaxCapacity: 15
                  TestTableName: SQL ISVALID
                  TestConnectionsOnReserve: true
    MailSession:
        MyMailSession:
            JNDIName: mail/MyMailSession
            Target: mycluster
            SessionUsername: john.smith@example.com
            SessionPasswordEncrypted: '@@PROP:mymailsession.password@@'
            Properties:
                mail.store.protocol: imap
                mail.imap.port: 993
                mail.imap.ssl.enable: true
                mail.imap.starttls.enable: true
                mail.imap.host: imap.example.com
                mail.impa.auth: true
                mail.transport.protocol: smtp
                mail.smtp.starttls.enable: true
                mail.smtp.port: 465
                mail.smtp.ssl.enable: true
                mail.smtp.auth: true
                mail.smtp.host: smtp.example.com

Encrypt Model Toolを実行し、次のようにモデル・ファイルと変数ファイルの両方を渡します:

$ weblogic-deploy\bin\encryptModel.cmd -oracle_home c:\wls12213 -model_file UnencryptedDemoDomain.yaml -variable_file UnencryptedDemoDomain.properties

変数ファイルは次のようになります:

#Variables updated after encryption
#Thu Feb 01 19:12:57 CST 2018
db.user=rpatrick
db.url=mydb.example.com:1539/PDBORCL
db.password={AES}czFXMkNFWNG9jNTNYd0hRL2R1anBnb0hDUlp4K1liQWFBdVM4UTlvMnE0NU1aMUZ5UVhiK25oaWFBc2lIQ20\=
mymailsession.password={AES}RW9nRnUzcE41WGNMdnEzNDdRQVVNWm1LMGhidkFBVXg6OUN3aXcyci82cmh3cnpNQTpmY2UycUp5YWl4UT0\=

環境変数

次の環境変数を設定できます。

  • JAVA_HOME JDKのロケーション。 これは、WDT暗号化アルゴリズムをサポートする有効なJDKである必要があります。
  • WLSDEPLOY_PROPERTIES Javaに渡されるシステム・プロパティ。

Encrypt Model ToolではWLSTを使用せずにJythonを直接使用するため、JAVA_HOMEはコマンドの実行に使用されるJDKになります(WLSTを使用する他のツールとは異なり)。

encryptModelのパラメータ表

パラメータ 定義 デフォルト
-manual モデルなしで実行し、単一パスワードの暗号化された値を取得します。
-model_file モデル・ファイルまたはモデル・ファイルのセットのロケーション。
-oracle_home Oracle WebLogicインストールのホーム・ディレクトリ。 ORACLE_HOME環境変数が設定されていない場合は必須です。
-passphrase_env プロンプトで暗号化パスフレーズを入力する代替手段。 この値は、WDTがパスフレーズの取得に使用する環境変数名です。
-passphrase_file プロンプトで暗号化パスフレーズを入力する代替手段。 この値は、パスフレーズを取得するためにWDTが読み取る文字列値を持つファイルの名前です。
-passphrase_prompt WDTが暗号化パスフレーズを要求したり、標準入力から読み取ったりできるようにします。
-variable_file モデルで使用されるすべての変数の変数値を含むプロパティ・ファイルのロケーションと名前。