パスワードの管理 (OracleToSQL)

このセクションでは、データベースパスワードのセキュリティ保護と、それらをサーバー間でインポートまたはエクスポートする処置について説明します。

パスワードのセキュリティ保護

SSMA を使用すると、データベースのパスワードをセキュリティで保護できます。

セキュリティ保護された接続を実装するには、次の処置を行います。

次の 3 つの方法のいずれかを使用して、有効なパスワードを指定します。

  1. クリア テキスト: 'password' ノードの値属性にデータベース パスワードを入力します。 スクリプト ファイルまたはサーバー接続ファイルの [サーバー] セクションのサーバー定義ノードにあります。

    クリアテキスト内のパスワードは安全ではありません。 そのため、コンソール出力 に次の警告メッセージが表示されます。「サーバー<server-id>のパスワードはセキュリティで保護されていないクリア テキスト形式で提供されています。SSMA コンソール アプリには、暗号化を使用してパスワードを保護するオプションが用意されています。詳細については、SSMA ヘルプ ファイルの -securepassword オプションを参照してください。」

    暗号化されたパスワード: この場合、指定されたパスワードは ProtectedStorage.ssma のローカル コンピューター上の暗号化された形式で格納されます。

    • パスワードの保護

      • -securepasswordSSMAforOracleConsole.exe を実行し、コマンド ラインでサーバー ID を渡して追加スイッチを実行し、サーバー接続情報を渡すか、サーバー定義セクションでパスワード ノードを含むスクリプト ファイルを渡します。

      • プロンプトで、ユーザーはデータベースパスワードを入力して確認するよう求められます。

        サーバー定義 ID とそれに対応する暗号化されたパスワードは、ローカル コンピューター上のファイルに格納されます

        例 1:

        1. パスワードを指定します。

        2. C:\SSMA\SSMAforOracleConsole.EXE -securepassword -add all -s "D:\Program Files\Microsoft SQL Server Migration Assistant for Oracle\Sample Console Scripts\AssessmentReportGenerationSample.xml" -v "D:\Program Files\Microsoft SQL Server Migration Assistant for Oracle\Sample Console Scripts\ VariableValueFileSample.xml"

        3. server_id 'XXX_1': xxxxxxx のパスワードを入力します

        4. server_id 'XXX_1': xxxxxxx のパスワードを再入力します

        例 2:

        1. C:\SSMA\SSMAforOracleConsole.EXE -securepassword -add "source_1,target_1" -c "D:\Program Files\Microsoft SQL Server Migration Assistant for Oracle\Sample Console Scripts\ServersConnectionFileSample.xml" - v "D:\Program Files\Microsoft SQL Server Migration Assistant for Oracle\Sample Console Scripts\ VariableValueFileSample.xml" -o

        2. server_id 'source_1': xxxxxxx のパスワードを入力します

        3. server_id 'source_1': xxxxxxx のパスワードを再入力します

        4. server_id 'target_1': xxxxxxx のパスワードを入力します

        5. server_id 'target _1': xxxxxxx のパスワードを再入力します

    • 暗号化されたパスワードの削除

      -securepasswordSSMAforOracleConsole.exe を実行し、コマンド ラインでサーバー ID を渡して -remove スイッチを実行し、ローカル コンピューターに存在する保護されたストレージ ファイルから暗号化されたパスワードを削除します。

      例:

      C:\SSMA\SSMAforOracleConsole.EXE -securepassword -remove all
      C:\SSMA\SSMAforOracleConsole.EXE -securepassword -remove "source_1,target_1"  
      
    • パスワードが暗号化されているサーバー ID の一覧を表示

      -securepasswordSSMAforOracleConsole.exe を実行し、コマンド ラインで -list スイッチを実行して、パスワードが暗号化されているすべてのサーバー ID を一覧表示します。

      例:

      C:\SSMA\SSMAforOracleConsole.EXE -securepassword -list  
      

    注意

    1. スクリプトまたはサーバー接続ファイルに記載されているクリアテキストのパスワードは、セキュリティで保護されたファイル内の暗号化されたパスワードよりも優先されます。
    2. サーバー接続ファイルまたはスクリプト ファイルのサーバー セクションにパスワードが存在しない場合、またはローカル コンピューターで保護されていない場合は、コンソールにパスワードを入力してもらうようメッセージが表示されます。

暗号化されたパスワードのエクスポートまたはインポート

SSMA コンソール アプリを使用すると、ローカル コンピューター上のファイルに存在する暗号化されたデータベース パスワードを、セキュリティで保護されたファイルにエクスポートできます。また、その逆もできます。 暗号化されたパスワードをマシンに依存しないようにするうえで役立ちます。 エクスポート機能を使用すると、ローカルで保護されたストレージからサーバー ID とパスワードを読み取り、暗号化されたファイルに情報が保存されます。 ユーザーは、セキュア ファイルのパスワードを入力するよう求められます。 必ず 8 文字以上のパスワードを入力するようにしてください。 このセキュア ファイルは、異なるマシン間で移植できます。 インポート機能は、セキュア ファイルからサーバー ID とパスワードの情報を読み取ります。 ユーザーに、セキュア ファイルのパスワードを入力するよう求めるプロンプトが表示され、その情報がローカルで保護されたストレージにアペンドされます。

エクスポートの例 :

  1. パスワードのエクスポート

  2. エクスポートされたファイルを保護するためのパスワードを入力します

  3. C:\SSMA\SSMAforOracleConsole.EXE -securepassword -export all "machine1passwords.file"

  4. エクスポートされたファイルを保護するためのパスワードを入力します: xxxxxxxx

  5. 確認のため、パスワードを再入力してください: xxxxxxxx

  6. C:\SSMA\SSMAforOracleConsole.EXE -p -e "OracleDB_1_1,Sql_1" "machine2passwords.file"

  7. エクスポートされたファイルを保護するためのパスワードを入力します: xxxxxxxx

  8. 確認のため、パスワードを再入力してください: xxxxxxxx

インポートの例 :

  1. 暗号化されたパスワードのインポート

  2. インポートされたファイルを保護するためのパスワードを入力します

  3. C:\SSMA\SSMAforOracleConsole.EXE -securepassword -import all "machine1passwords.file"

  4. 暗号化されたファイルからサーバーをインポートするためのパスワードを入力します: xxxxxxxx

  5. 確認のため、パスワードを再入力してください: xxxxxxxx

  6. C:\SSMA\SSMAforOracleConsole.EXE -p -i "OracleDB_1,Sql_1" "machine2passwords.file"

  7. 暗号化されたファイルからサーバーをインポートするためのパスワードを入力します: xxxxxxxx

  8. 確認のため、パスワードを再入力してください: xxxxxxxx

参照

SSMA コンソールの実行 (Oracle)