GAM Deploy Tool のコマンドラインは、任意のプラットフォーム (Windows または Unix 系) で使用し、UI から行うのと同じアクションを実行することができます。ただし、GAM データベーステーブルの作成と再編成は、再編成スクリプトを使用して DBA で実行できるため対象外となります。
このツールでは複数のタイプのアクションを実行できます。呼び出しは次の形式にします:
Java: tomcatproduction/webapps/XXX/WEB-INF/classes/com/kbname#
java -cp "../../../lib/*" genexus.security.api.agamdeploytool "<Action> <Corresponding Flags>"
.NET Framework: \Models\XXX\CSharpModel\web\bin
agamdeploytool.exe "<Action> <Corresponding Flags>"
.NET: \Models\XXX\NetCore\web\bin
dotnet agamdeploytool.dll "<Action> <Corresponding Flags>"
データベースへの接続に使用する構成ファイルは現在のディレクトリーに置かれている必要があります (Java の場合は client.cfg、.NET の場合は client.exe.config)。このツールはデプロイ環境に置いて実行するのが理想的です。.NET の場合は仮想ディレクトリー \bin directory の下に置きます。Java の場合は Webapp の下です。
このツールを実行する際に GAM データベース接続設定 (サーバー、ポート、パスワードなど) を指定する必要はありません。それらの情報は前に説明した設定ファイルから取得されます。
このツールは、対応する DBMS ごとに、GAM ライブラリと一緒に配布されます。
このツールで提供されるアクションは次のとおりです:
アクション |
説明 |
-Initialize |
GAM データベースをメタデータを使用して初期化します。 |
-Import |
パッケージをインポートします。 |
-UpgradeGAM |
GAM データベースのバージョンを更新します。再編成が必要な場合、ユーザーは再編成を行った後、このツールアクションを実行する必要があります。 |
-Help |
このツールで使用可能なアクションを示します。 |
-Export |
GAM データベースのデータをエクスポートし、それを .gpkg パッケージに格納します。 |
-GetConnections |
リポジトリごとに接続を取得します。UpdateConnectionFile オプションでパラメーターとして送信される、リポジトリ GUID および接続名を取得するのに役立ちます。 |
-UpdateConnectionFile |
取得した接続データを使用して、Connection.gam ファイルを更新/作成します。 |
-xml_config_file |
XML ファイルのみを受け取る特別なフラグです。ツールで指定したすべてのパラメーターが、アクションも含めてロードされます。XML 形式は -GenerateXML フラグで指定します。 |
-GenerateXML |
サンプル XML を生成し、標準出力で表示します。このサンプル XML はツールに対する入力として使用でき、対応するタグの値を変更します。 |
アクションごとにフラグが異なります:
フラグ |
説明 |
-admin_name |
GAM の管理者名です (既定値: gamadmin)。 |
-admin_pass |
GAM の管理者パスワードです (既定値: gamadmin123)。 |
-xml_config_file string |
すべてのパラメーターが設定されている XML ファイルのパスを指定します。このフラグが設定された場合、ほかのフラグはすべて無視され、ファイルパラメーターのみが考慮されます。 |
-help |
アクションに対して予想されるフラグを表示します。 |
フラグ |
説明 |
-admin_name (*) |
GAM の管理者名です。 |
-admin_pass (*) |
GAM の管理者パスワードです。 |
-xml_config_file string |
すべてのパラメーターが設定されている XML ファイルのパスを指定します。このフラグが設定された場合、ほかのフラグはすべて無視され、ファイルパラメーターのみが考慮されます。 |
-help |
アクションに対して予想されるフラグを表示します。 |
(*) 必須フラグ。
フラグ |
説明 |
-admin_name (*) |
GAM の管理者名です。 |
-admin_pass (*) |
GAM の管理者パスワードです。 |
-target (*) |
パッケージが格納されるターゲットディレクトリーです。 |
-rep_guid (*) |
エクスポートするリポジトリの GUID です。 |
-full_export (true/false) |
True の場合、フルエクスポートを実行します: すべてのロール、ユーザー、およびアプリケーション。 |
-exp_users (true/false) |
ユーザーをエクスポートするかどうかを指定します (full_export が False の場合のみ) |
-exp_roles (true/false) |
ロールをエクスポートするかどうかを指定します (full_export が False の場合のみ) |
-exp_eve_subscriptions
(true/false)
|
イベントのサブスクリプションデータをエクスポートするかどうかを指定します (full_export が False の場合のみ)。GeneXus 15 Upgrade 12 以降で使用できます。 |
-verbose (true/false) |
|
-apps |
エクスポートするアプリケーションの GUID のリストです。形式: App_Guid_1,App_Guid_2,App_Guid_3 |
-roles |
エクスポートするロールの GUID のリストです。形式: Role_Guid_1,Role_Guid_2,Role_Guid_3 |
-pkg_name |
エクスポートしたパッケージに付ける名前です。 |
-xml_config_file |
すべてのパラメーターが設定されている XML ファイルのパスを指定します。このフラグが設定された場合、ほかのフラグはすべて無視され、ファイルパラメーターのみが考慮されます。形式はインポート SDT の形式と同じです。 |
(*) 必須フラグ。
フラグ |
説明 |
-file_path_package |
インポートするパッケージを受け取ります。 |
-admin_name (*) |
GAM の管理者名です。 |
-admin_pass (*) |
GAM の管理者パスワードです。 |
-admin_user_name |
管理者のユーザー名です。 |
-admin_role_guid(**) |
管理者ロールの GUID です。 |
-upd_rep (true/false) |
既存のリポジトリを更新するかどうかを示します。 |
-upd_rep_guid |
更新するリポジトリの GUID を示します。-upd_rep フラグが True の場合に使用します。 |
-new_rep_create (true/false) |
新しいリポジトリを作成するかどうかを示します。 |
-new_rep_name (**) |
新しいリポジトリの名前です。 |
-new_rep_namespace(**) |
新しいリポジトリの名前空間です。 |
-new_rep_guid (**) |
新しいリポジトリの GUID です。 |
-new_rep_admin_name (**) |
新しいリポジトリ管理者の名前です。 |
-new_rep_admin_pass (**) |
新しいリポジトリ管理者のパスワードです。 |
-new_rep_conn_usr_name (**) |
新しいリポジトリ接続のユーザー名です。 |
-new_rep_conn_usr_pass (**) |
新しいリポジトリ接続ユーザーのパスワードです。 |
-imp_auth_types (true/false) |
認証タイプをインポートするかどうかを示します。 |
-imp_sec_policies (true/false) |
セキュリティポリシーをインポートするかどうかを示します。 |
-imp_users (true/false) |
ユーザーをインポートするかどうかを示します。 |
-imp_roles (true/false) |
ロールをインポートするかどうかを示します。 |
-imp_full |
すべてのエンティティ (auth_types、sec_policies、users、roles、apps、connections、eve_subscriptions) をインポートすることを示します。GeneXus 16 Upgrade 6 以降で使用できます。 |
-disable_upd_role_prm (true/false) |
データベースに既に存在するロールの権限をインポートするかどうかを示します。
既定値は false です。 |
-imp_apps (full/none/custom) |
アプリケーションをインポートするレベルです。
- full: すべてのアプリケーションをすべての権限と一緒にインポートします。
- none: アプリケーションに関して何もインポートしません。
- custom: -imp_apps_details に従って設定されます。
|
-imp_apps_details (***) |
インポートする "GUID,Boolean" ペアのリストです (applicationsGuids,ImportPermissionsOfThatApplication)。
形式: App_Guid_1,Imp_Prms_App1;App_Guid_2,Imp_Prms_App2;App_Guid_3,Imp_Prms_App3
|
-imp_connections |
パッケージ接続をインポートします。接続名は <元の名前> + リポジトリ ID に変わります。
新しいリポジトリの場合は、このフラグの値に関係なく、新しい接続が必ず作成されます。
リポジトリが更新されており、-imp_connections が True の場合、接続ユーザー名が既存の接続の接続ユーザー名と同じでないと、その接続がインポートされます。つまり、接続は更新されません。 |
-imp_eve_subscriptions |
イベントのサブスクリプションデータをインポートします。GeneXus 15 Upgrade 12 以降で使用できます。 |
-verbose (true/false) |
|
-connection_gam_file_path |
connection.gam ファイルが生成されるターゲットディレクトリーです。 |
-xml_config_file |
すべてのパラメーターが設定されている XML ファイルのパスを指定します。このフラグが設定された場合、ほかのフラグはすべて無視され、ファイルパラメーターのみが考慮されます。 |
-help |
|
(*) 必須フラグ。
(**) new_rep_create フラグが True の場合に必要です。
(***) imp_apps フラグが custom の場合に必要です。
フラグ |
説明 |
-admin_name (*) |
GAM の管理者名です (gamadmin など)。 |
-admin_pass (*) |
GAM の管理者パスワードです (gamadmin123 など)。 |
-xml_config_file |
すべてのパラメーターが設定されている XML ファイルのパスを指定します。このフラグが設定された場合、ほかのフラグはすべて無視され、ファイルパラメーターのみが考慮されます。 |
-help |
アクションに対して予想されるフラグを表示します。 |
(*) 必須フラグ。
フラグ |
説明 |
-admin_name (*) |
GAM の管理者名です (gamadmin など)。 |
-admin_pass (*) |
GAM の管理者パスワードです (gamadmin123 など)。 |
-target |
connection.gam ファイルが生成されるターゲットディレクトリーです。 |
-connections (*) |
次の形式で示されるリストです: <GuidRepoA>,<NameOfAConnectionOfRepoA>;<GuidRepoB>,<NameOfAConnectionOfRepoB> |
-xml_config_file |
すべてのパラメーターが設定されている XML ファイルのパスを指定します。このフラグが設定された場合、ほかのフラグはすべて無視され、ファイルパラメーターのみが考慮されます。 |
(*) 必須フラグ。
C:\Models\TestGDT\NetCore\web\bin> dotnet agamdeploytool.dll -initialize -admin_name testadmin -admin_pass testadmin123
C:\Models\TestGDT\NetCore\web\bin> dotnet agamdeploytool.dll -upgradegam -admin_name gamadmin -admin_pass gamadmin123
C:\Models\TestGDT\CSharpModel\web\bin> agamdeploytool.exe -getconnections -admin_name gamadmin -admin_pass gamadmin123
C:\Models\TestGDT\CSharpModel\web\bin> agamdeploytool.exe -updateconnectionfile -admin_name gamadmin -admin_pass gamadmin123 -target C:\Models\TestGDT\CSharpModel\web\ -connections 92b783a2-2a50-4261-8ba7-684fb780967d,GAM-Manager
root@ubuntu:/opt/tomcatproduction/webapps/Test/WEB-INF/classes/com/kbname# java -cp "../../../lib/*" genexus.security.api.agamdeploytool -import -admin_name gamadmin -admin_pass gamadmin123 -file_path_package /home/sabrina/test.gpkg -new_rep_create true -new_rep_name testrepo -new_rep_namespace testrepo -new_rep_admin_name adminnew -new_rep_admin_pass admin123 -new_rep_guid 19bd e07d-8b37-4668-8c65-4cab29d8a38c -verbose true -new_rep_conn_usr_name newconn -new_rep_conn_usr_pass newconn123 -admin_role_guid 2a984733-5308-4444-b893-473200d40eda -imp_connections true
root@ubuntu:/opt/tomcatproduction/webapps/Test/WEB-INF/classes/com/kbname# java -cp "../../../lib/*" genexus.security.api.agamdeploytool -export -target /home/sabrina -admin_name gamadmin -admin_pass gamadmin123 -full_export TRUE -pkg_name test -rep_guid 1e89a9ca-bc52-482b-a344-c4cda4a9cc8f
- パッケージがある場合、client.cfg をクラスにコピーする必要があることがあります。
- ツールのアクションを実行するときに DBMS への接続でアクセスが拒否されるエラーが発生する場合は、次を参照してください: SAC #43289。
GeneXus 16 Upgrade 5 以降で使用できます。
linux