MxLogon サーバツールキット用 Access プログラム
MxLogon サーバツールキットでは、ユーザが直接 MySQL データベースを操作するには SQL 文を発⾏ する方法しか用意されていません。誰でも容易にデータベースを操作できるよう Access プログラムを別途 用意しました。この Access プログラムは MxLogon サーバツールキットの一部ではありません(別途提供 されています)
Access プログラムは ODBC ドライバ経由で MySQL データベースを操作します。MySQL の ODBC ド ライバ(GPL ライセンス)を使用しますので、Access プログラムのソースコードは公開されています。
1. Access プログラムの導入
MySQL のデータベースを UI 操作するためにマクロソフト Access のプログラムをサーバに導入します。導 入には ODBC ドライバ / MSAccess ランタイムが必要です。32bit/64bit OS のどちらにも 32bit 版 を導入します。
1.1 32 ビット版の ODBC ドライバ & MS Access ランタイム導入
次の2つをダウンロード、インストールしてください。もし、MS Access 2010 か 2013 が既にインストール されていれば MS Access ランタイムは導入する必要はありません。
1. 32bit 版( x86 版) の MS Access 2013 か MS Access 2010 のランタイム MS Access 2013 http://www.microsoft.com/ja-jp/download/details.aspx?id=39358 から AccessRuntime_x86_ja-jp.exe をダウンロード/インストール。 MS Access 2010 http://www.microsoft.com/ja-jp/download/details.aspx?id=10910 AccessRuntime.exe をダウンロード/インストール 2. 32bit 版( x86 版)MySQL ODBC Connector
http://dev.mysql.com/downloads/connector/odbc/ から
Windows (x86, 32-bit), MSI Installer をダウンロード/インストール
ム(Microsoft Visual C++ 2010 再頒布可能パッケージ(x86) )がインストールされていない
と途中でエラーになってしまいますのでご注意ください。
1.2 ODBC データソース作成
Access から ODBC 経由で MySQL のデータベースにアクセスできるように、ODBC データソースを作 成します。
Windows のコントールパネルの「システムとセキュリティ」-「管理ツール」の ODBC データソース(32bit) で以下の通りに MySQL のデータベースへの接続を作成してください。これは、MySQL が動作しているサ ーバ上で ODBC データソースを作成する例です。 ● データソース名 ︓mxlogon_local ● ユーザ ︓ mxlogon_odbc ● mxlogon_odbc の既定のパスワードは password ● データベースは mxlogon を選択
1.3 Access プログラム用の DLL コピー
Access から USB キーを操作できるよう Matrix32.dll を Windows フォルダ内の system32 フォ ルダにコピーしてください。64bit OS では system32 ではなく SysWOW64 フォルダにコピーします。 Access プログラムは Matrix32.dll を⾒つけられないと、USBキー読み込み処理で異常終了してし
まいます。
1.4 USB キー管理用 Access プログラム起動
付属の MS Access プログラム mxlogon_local.accdb を実⾏します。mxlogon_local.accdb をダブルクリックすると Access ランタイムによってプログラムが以下のように起動するはずです。 ■ USB キーを接続してから、SerNo (シリアル番号) のテキストボックスをダブルクリックしてくださ い。USB キーのシリアル番号が読み込まれて表示されます。 ■ USB キーに設定する PIN を 4-5 桁数字で入⼒してください。 ■ ユーザを登録後、USB キーに割り当てるユーザを選択します。 ■ コンピュータを登録後、USB キーが利用可能なコンピュータを指定します。指定されていないコ ンピュータでは USB キーは利用できません。1 台 1 台指定するのは面倒なので、コンピュータ グループを作成してグループを指定することができます。 ユーザとコンピュータの登録方法は、サーバ側設定確認作業で説明します。
1.5 クライアントへの Access プログラム導入 / MySQL への接続確認
MySQL のデータベースを UI 操作するマクロソフト Access プログラムはクライアントコンピュータにも導 入可能です。また、Access プログラムをクライアントコンピュータに導入しなくても、できるだけクライアント で ODBC データソースを作成して、クライアントから MySQL に SSL 接続できることを確認するようにし てください。 a. サーバと同じように ODBC ドライバ / MS Access ランタイム導入b. Matrix32.dll を Windows フォルダ内の system32 フォルダに配置。64bit OS では system32 ではなく SysWOW64 フォルダに配置
c. ODBC データソースを作成
現時点では、mxlogon_odbc というユーザは localhost からのみ MySQL に接続できます。クライア ントコンピュータからは接続できません。
TCP/IP Server に MySQL が実⾏しているコンピュータ名(⼜は IP アドレス)、User に mxlogon_odbc を 指 定 し て 、 [Test] し て み て く だ さ い 。 “Access denied for user
‘mxlogon_odbc@’xxxx’ いうアクセス拒否されたというメッセージが表示されます。 サーバと同じようにクライアントから MxSQL の mxlogon データベースを操作できるようにするには、ここで 表示された ‘mxlogon_odbc@’xxxx’ という MySQL ユーザを作成します。必ず、このユーザの権限 は、mxlogon_odbc@’localhost’ と同じにします。 ユーザ作成例︓ 1. Access プログラムを導入する場合 mysql.exe に管理者ユーザでログインして、以下 SQL コマンドを発⾏します。できるだけ SSL 接続を 有効にしてください。
>create user mxlogon_odbc@’xxxx’ identified by 'password'; >grant select, delete, update, insert
on mxlogon.* to mxlogon_odbc@’xxxx’ require ssl; 2. 接続テストをする場合
>call mxlogon.update_credInfo( ‘mxlogon’, ‘xxxx’, ‘password’);
接 続 テストす る だ け の ユー ザに は、テー ブル を直 接 す る 操 作 は許 可 す る必要 はあ りませ ん 。 pdate_credInfo ストアードプロシージャで接続テスト用ユーザを作成できます。
● データソース名 ︓mxlogon_local
● ユーザ ︓ mxlogon_odbc(接続テストの場合︓mxlogon) ● mxlogon_odbc の既定のパスワードは password
● データベースは mxlogon を選択 ● ssl タブでクライアント証明書を設定
[Test]ボタンで接続を確認してみてください。”Connection Successful” がでたら、Access プログラ ムはこのクライアントで実⾏できます。ODBC で接続できたら、他のプログラムも問題なく クライアントから MySQL に接続できるはずです( ODBC で接続できなければ、他のプログラムも接続できないはずで す)
2. USB キー情報の設定
USBキーに情報を設定する前に、USBキーに設定するコンピュータとユーザを登録しなければなりません。
2.1 コンピュータの手動登録
コンピュータは Access プログラムの [コンピュータ登録]から手動登録できます。
コンピュータのドメインとコンピュータ名を手入⼒ください。設定するドメインとコンピュータ名は、コマンドプロン プトで net config workstation を実⾏して表示される名前を以下ように設定してください。
コンピュータ名 = 表示されるコンピュータ名 ドメイン = 表示されるログオンドメイン ドメインに参加しているコンピュータのドメインは参加しているドメイン名、ドメインに参加していないコンピュ ータのドメインはコンピュータ名と同じになるはずです。
2.2 ユーザの手動登録
ユーザは Access プログラムの [ユーザ一覧]で表示できます。しかし、この画面ではパスワードを登録で きませんので、ユーザ登録は完結しないことをご留意ください。 この画面では、ドメインユーザのユーザ名とドメインのみを手入⼒して、その後で各ユーザのパスワードを変 更すると暗号化されたパスワードが設定されます。UI でパスワード変更する、多数のユーザのパスワード を変更するには net user コマンドなどバッチファイルで実⾏する等の手段で⾏ってください。 Passhook が導入されていれば、自動で対応するユーザの暗号化パスワードがされます。■ USB キーを接続してから、SerNo (シリアル番号) のテキストボックスをダブルクリックしてください。 USB キーのシリアル番号が読み込まれて表示されます。 ■ USB キーに設定する PIN を 4-5 桁数字で入⼒してください。 ■ USB キーに割り当てるユーザを選択してください。 ■ USB キーが利用可能なコンピュータを指定します。指定されていないコンピュータでは USB キーは利 用できません。 ■ コンピュータグループを登録しておくと、USB キーへのコンピュータ設定の手間を省略できます [コンピュータグループ登録]を選択するとコンピュータグループ登録フォームが開きます。 ■ グループ名を設定します。 ■ コンピュータ ID コンボボックスでグループに登録するコンピュータを選択していきます。 ■ 新しいグループを作成するには、フォーム下部にある新しいレコード作成ボタンをクリックします。
利用可能コンピュータコンボボックスをクリックするとコンピュータグループが現れます。USB キーに割り当てる コンピュータグループを選択すると、グループのコンピュータを一括で利用可能なコンピュータとして[追加]、 [置き換え]ができます。 複数の USB キーを登録してください。