Previous Topic

Next Topic

Book Contents

Book Index

データベース - リモートアクセス

MOVEit Transfer API を使用した安全な読み取り専用リモートアクセス

MOVEit Transfer の設定および監査データベースの情報にリモートでアクセスするには、MOVEit Transfer API の「ReportRunCustom()」メソッドとカスタムクエリを使用します。このメソッドでは、MOVEit Transfer の認証情報を使用してユーザーの認証を行う必要があり、ポート 443 で HTTPS を使用するため送信時のデータを SSL で保護し、ファイアウォールとの親和性があります。

この例では、VB コードと MOVEit Transfer API を併用し、氏名が A で始まるユーザーを最大で 5 人含むリストを XML 形式で返します。

Dim boolOK as Boolean = false
Dim fields as String = "Username,RealName,Email,Notes"
Dim tables as String = "users"
Dim criteria as String = "RealName LIKE 'A%'"
Dim groupings as String = ""
Dim order as String = "RealName"
Dim limit as String = "5"
Dim OutputFormat as String = "XML"
Dim LocalPath as String = "d:\reports\newest_5_A_users.xml"
boolOK = ReportRunCustom( fields, tables, criteria, groupings, order, limit, OutputFormat, LocalPath )
IF boolOK then...

詳細については、「Web インターフェイス - レポート - カスタムレポート」および MOVEit Transfer API のドキュメントを参照してください。 MOVEit Transfer API からカスタムレポートを使用できるように、MOVEit Transfer でカスタムレポートを事前設定する必要はありません。API 関数呼び出しの各フィールドをどのように使用するかについては、「カスタムレポート」を参照してください。

データベースとの間で読み取り/書き込みアクセスを行う必要があるが、MOVEit Transfer API ではできない場合、より複雑な方法としてデータベースへの直接アクセスを行います。

MOVEit Transfer データベースへの安全なリモートアクセスの確立

その設定と監査ログを格納するために MOVEit Transfer が基盤として使用する MySQL データベースに ODBC 接続を介して安全にアクセスするには、MySQL データベースでユーザーを設定し、stunnel を使用して安全なチャネルを設定する必要があります。

MOVEit Transfer データベースへのリモートアクセスには、3.51 バージョンの MySQL ODBC ドライバ (MyODBC) が必要な場合もあります。このドライバは MySQL から無料で入手できます (デフォルトでは、MOVEit Transfer および MOVEit Automation と共にインストールされます)。その他にも、検証済みの MySQL データベースドライバ (.NET 用の ODBC 以外のドライバを含む) がいくつかあります。

以下の手順に従い、TCP ポート 33062 上での安全な MySQL ポートリスニングを設定します。この値を変更するには、必要な stunnel 設定ファイルを編集してください。

stunnel のクライアントに関する手順など、このツールを使用したリモートレポートの詳細については、MOVEit Automation のドキュメントを参照してください。

MOVEit Transfer における読み取り専用データベースユーザーの設定

ほとんどの場合、MOVEit Transfer データベースにアクセスするには読み取り専用ユーザーを設定します。

注意: データベースの変更は高度な作業です。十分な経験のない方がこの作業を行うと、設定エラーが発生し、MOVEit Transfer の開封明示チェック機能に影響することがあります。

  1. MOVEit Transfer でコマンドプロンプトを開きます。
  2. CD コマンドを使用して、MySQL ルートフォルダーの Bin サブフォルダーに移動します (例: D:\MySQL\Bin)。
  3. 適切なルートパスワードを使用し、次のコマンドを実行します。

    D:\mysql\bin>mysql --user=root --password=31r00t0
    Welcome to the MySQL monitor.Commands end with ; or \g.
    Your MySQL connection id is 19660
    Server version:5.0.44-classic-nt MySQL Enterprise Server - Classic (Commercial)

    Type 'help;' or '\h' for help.Type '\c' to clear the buffer.

  4. mysql> コマンドプロンプトで、次のコマンドを発行します。micentral m1c3ntra1 は、リモートクライアントから接続するときに使用するユーザー名とパスワードに置き換えてください。

    mysql> GRANT SELECT,CREATE TEMPORARY TABLES ON moveitdmz.* TO 'micentral'@'localhost' IDENTIFIED BY 'm1c3ntra1';
    Query OK, 0 rows affected (0.00 sec)

    mysql> FLUSH PRIVILEGES;
    Query OK, 0 rows affected (0.00 sec)

    mysql> exit
    Bye

  5. 設定したアクセス許可をテストするには、次のコマンドを発行します。必要に応じて適切な認証情報に置き換えてください。

    D:\mysql\bin>mysql --user=micentral --password=m1c3ntra1 moveitdmz
    Welcome to the MySQL monitor.Commands end with ; or \g.
    Your MySQL connection id is 19660
    Server version:5.0.44-classic-nt MySQL Enterprise Server - Classic (Commercial)

    Type 'help;' or '\h' for help.Type '\c' to clear the buffer.

    mysql> select count(*) from users;

    +----------+

    | count(*) |

    +----------+

    | 42 |

    +----------+

    1 row in set (0.08 sec)

    mysql> insert into log set ID=1;
    ERROR 1044:Access denied for user: 'micentral@localhost' to database 'moveitdmz'
    mysql> exit
    Bye

MOVEit Transfer における STunnel サーバーの設定

  1. MOVEit Transfer でコマンドプロンプトを開きます。
  2. CD コマンドを使用して、MOVEit Transfer ルートフォルダーの Util サブフォルダーに移動します (例: D:\MOVEitDMZ\Util)。
  3. 次のコマンドを実行し、以下のように出力されることを確認します。

    D:\moveitdmz\Util>stunnel_makecert

    D:\moveitdmz\Util>openssl genrsa -out stunnel_key.pem 2048

    Loading 'screen' into random state - done

    Generating RSA private key, 2048 bit long modulus

    ..............+++

    ....+++

    e is 65537 (0x10001)

    D:\moveit dmz\Util>openssl req -config stunnel_makecert_parms.txt -new -x509 -key stunnel_key.pem -out stunnel_mysqlserver.pem -days

  4. 次のコマンドを実行します (このサーバーの設定を変更する必要はありません)。

    D:\moveitdmz\util>stunnel stunnel_mysqlserver.conf

  5. このコマンドが失敗した場合、「Stunnel server is down due to an error.(Stunnel サーバーはエラーのため停止しています。)」といったメッセージがエラーダイアログボックスに表示され、そのエラーの詳細が大きなダイアログボックスに表示されます。

    このコマンドの成否にかかわらず、小さな STunnel アイコン (stunnel_icon.gif (904 バイト)) がトレイに表示されます。

  6. コマンドが成功した場合は、この手順の次のセクション (下記) に進んでください。問題が発生した場合は、STunnel アイコンを右クリックし、[Exit (終了)]を選択します。

サービスとしての STunnel の設定

新しい接続をテストした後、次のコマンドを実行して stunnel をサービスとしてインストールします (これにより、stunnel が自動的に起動します)。

  1. MOVEit Transfer と MOVEit Automation で stunnel アプリケーションを終了します。
  2. MOVEit Transfer で、次のコマンドを実行してサービスをインストールします ([Created service (作成されたサービス)] ポップアップが表示されることに注意してください)。

    D:\moveitdmz\util>stunnel -install stunnel_mysqlserver.conf

  3. MOVEit Transfer で、次のコマンドを実行してサービスを起動します。

    D:\moveitdmz\util>net start stunnel

データベースエンジンとして SQL Server を選択した場合は、ADO や ADO.NET などの Microsoft 標準ドライバを使用してデータに安全にアクセスできます。使用するプログラムと Microsoft SQL Server 間のすべての通信を暗号化するには、接続文字列に次を含めてください。

TrustServerCertificate=yes; Encrypt=yes;