パスワードの管理 (Db2ToSQL)
このセクションでは、SQL Server Migration Assistant (SSMA) でのデータベース パスワードのセキュリティ保護と、それらをサーバー間でインポートまたはエクスポートする手順について説明します。
セキュリティで保護されたパスワード
SSMA を使用すると、データベースのパスワードをセキュリティで保護できます。
セキュリティ保護された接続を実装するには、次の処置を行います。
次のいずれかの方法を使用して、有効なパスワードを指定します。
クリア テキスト: ノードの value 属性にデータベース パスワードを
password
入力します。 このノードは、スクリプト ファイルまたはサーバー接続ファイルのサーバー セクションのサーバー定義ノードの下にあります。クリア テキスト内のパスワードは安全ではありません。 そのため、コンソール出力で次の警告メッセージが表示されることがあります。
Server <server-id> password is provided in non-secure clear text form, SSMA console application provides an option to protect the password through encryption, please see -securepassword option in SSMA help file for more information.
暗号化されたパスワード: 指定されたパスワードは、この場合、ローカル コンピューター上の暗号化された形式で
ProtectedStorage.ssma
格納されます。パスワードをセキュリティで保護する
-securepassword
でSSMAforDb2Console.exe
を実行し、コマンド ラインでサーバー ID を渡して追加スイッチを実行し、サーバー接続情報を渡すか、サーバー定義セクションでパスワード ノードを含むスクリプト ファイルを渡します。プロンプトで、ユーザーはデータベースパスワードを入力して確認するよう求められます。
サーバー定義 ID とそれに対応する暗号化されたパスワードは、ローカル コンピューター上のファイルに格納されます
例 1:
Specify password C:\SSMA\SSMAforDb2Console.exe -securepassword -add all -s "D:\Program Files\Microsoft SQL Server Migration Assistant for Db2\Sample Console Scripts\AssessmentReportGenerationSample.xml" -v "D:\Program Files\Microsoft SQL Server Migration Assistant for Db2\Sample Console Scripts\ VariableValueFileSample.xml" Enter password for server_id 'XXX_1'. Re-enter password for server_id 'XXX_1'.
例 2:
C:\SSMA\SSMAforDb2Console.exe -securepassword -add "source_1,target_1" -c "D:\Program Files\Microsoft SQL Server Migration Assistant for Db2\Sample Console Scripts\ServersConnectionFileSample.xml" - v "D:\Program Files\Microsoft SQL Server Migration Assistant for Db2\Sample Console Scripts\ VariableValueFileSample.xml" -o Enter password for server_id 'source_1'. Re-enter password for server_id 'source_1'. Enter password for server_id 'target_1'. Re-enter password for server_id 'target _1'.
暗号化されたパスワードを削除する
コマンドラインで
-securepassword
とSSMAforDb2Console.exe
スイッチを使用して-remove
を実行してサーバー ID を渡し、ローカル コンピューターに存在する保護されたストレージ ファイルから暗号化されたパスワードを削除します。例:
C:\SSMA\SSMAforDb2Console.exe -securepassword -remove all C:\SSMA\SSMAforDb2Console.exe -securepassword -remove "source_1,target_1"
パスワードが暗号化されているサーバー ID を一覧表示する
SSMAforDb2Console.exe
コマンド ラインでコマンド ラインでスイッチを-securepassword
-list
実行し、パスワードが暗号化されているすべてのサーバー ID を一覧表示します。例:
C:\SSMA\SSMAforDb2Console.exe -securepassword -list
スクリプトまたはサーバー接続ファイルに記載されているクリアテキストのパスワードは、セキュリティで保護されたファイル内の暗号化されたパスワードよりも優先されます。
サーバー接続ファイルまたはスクリプト ファイルのサーバー セクションにパスワードが存在しない場合、またはローカル コンピューターで保護されていない場合は、パスワードの入力を求められます。
暗号化されたパスワードをエクスポートまたはインポートする
SSMA コンソール アプリケーションを使用すると、ローカル コンピューター上のファイルに存在する暗号化されたデータベース パスワードを、セキュリティで保護されたファイルにエクスポートできます。その逆も可能です。 暗号化されたパスワードをマシンに依存しないようにするうえで役立ちます。
エクスポート機能 は、ローカルで保護されたストレージからサーバー ID とパスワードを読み取ります。 その後、システムは ID とパスワードを暗号化されたファイルに保存します。 ユーザーは、セキュア ファイルのパスワードを入力するよう求められます。 入力したパスワードの長さが 8 文字以上であることを確認します。 このセキュア ファイルは、異なるマシン間で移植できます。
インポート機能 は、セキュリティで保護されたファイルからサーバー ID とパスワードの情報を読み取ります。 ユーザーに、セキュア ファイルのパスワードを入力するよう求めるプロンプトが表示され、その情報がローカルで保護されたストレージにアペンドされます。
エクスポートの例
- パスワードのエクスポート
- エクスポートされたファイルを保護するためのパスワードを入力します
C:\SSMA\SSMAforDb2Console.exe -securepassword -export all "machine1passwords.file"
を実行します。- エクスポートされたファイルを保護するためのパスワードを入力します
- パスワードを確認入力します。
C:\SSMA\SSMAforDb2Console.exe -p -e "Db2DB_1_1,Sql_1" "machine2passwords.file"
を実行します。- エクスポートされたファイルを保護するためのパスワードを入力します。
- パスワードを確認入力します。
インポートの例
- 暗号化されたパスワードのインポート
- インポートされたファイルを保護するためのパスワードを入力します
C:\SSMA\SSMAforDb2Console.exe -securepassword -import all "machine1passwords.file"
を実行します。- 暗号化されたファイルからサーバーをインポートするパスワードを入力します。
- パスワードを確認入力します。
C:\SSMA\SSMAforDb2Console.exe -p -i "Db2DB_1,Sql_1" "machine2passwords.file"
を実行します。- 暗号化されたファイルからサーバーをインポートするパスワードを入力します。
- パスワードを確認します。