例 1: AWS プラグインの構成

この例では、BigFix REST API を介してディスパッチされた単一アクションを使用して AWS Asset Discovery プラグインを構成します。

AWS プラグインを既にインストールしており、ユーザーを既に構成済みであるが、多数の他のユーザーをすばやく構成したいとします。

以下の図に示すように、ログインを正しく実行した testuser を使用してプラグインがインストールされ、ステータスが「Successful」であることが分かります。

次に、構成の更新に使用される XML ファイルを作成します。このような XML ファイルは、REST API コマンドによってデータ・ファイルとして渡されます。

詳しくは、『 REST API を使用した BESPluginPortal プラグインの構成』ページと『 BigFix REST API 』ページを参照してください。

単純なアクションには、以下のテンプレートを使用します。
<?xml version="1.0" encoding="utf-8"?>
<BES xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" SkipUI="true">
    <SingleAction>
        <Title>AWS Plugin Config Template</Title>
        <Relevance>true</Relevance>
        <ActionScript>
            <!--Your action script-->
        </ActionScript>
        <SuccessCriteria />
        <Settings />
        <SettingsLocks />
        <Target>
            <ComputerID><!--Your ComputerID--></ComputerID>
        </Target>
    </SingleAction>
</BES>

XML ファイルのコメントから分かるように、少なくとも 2 つのフィールドに入力する必要があります。まず、 ComputerID (AWSAssetDiscoveryPlugin がインストールされているポータル・マシンの ComputerID) を見つけます。

次に、構成のアクション・スクリプトを作成します。2 人のユーザー (つまり testuser2testuser3) を構成するとします。これらの 2 人のユーザーは、それぞれ us-east-1af-south-1 を自分のリージョンとして持っており、デフォルトのプラグイン・リージョンよりも優先されます。

クラウド・プラグインの構成』で説明したように、便利なキーとデータをアクション・パラメーターに保管します。
parameter "firstLabel" = "testuser2"
parameter "secondLabel" = "testuser3"

parameter "accessKey" = "Credentials_AccessKey"
parameter "secretAccessKey" = "Credentials_SecretAccessKey"
parameter "region" = "Credentials_Region"
次に、plugin store 設定を構成するコマンドを記述します。
注: 置換する必要がある値は、<myUserKey2> のように、不等号括弧で囲まれた値のみです。
parameter "firstAccessKey" = "{parameter "accessKey"}_{parameter "firstLabel"}"
parameter "firstPassword" = "{parameter "secretAccessKey"}_{parameter "firstLabel"}"
plugin store "AWSAssetDiscoveryPlugin" set "{parameter "firstAccessKey"}" value "<myUserKey2>" on "{parameter "action issue date" of action}"
plugin store "AWSAssetDiscoveryPlugin" set encrypted "{parameter "firstPassword"}" value "<myUserPass2>" on "{parameter "action issue date" of action}"
plugin store "AWSAssetDiscoveryPlugin" set "Credentials_Region_{parameter "firstLabel"}" value "us-east-1" on "{parameter "action issue date" of action}"

parameter "secondAccessKey" = "{parameter "accessKey"}_{parameter "secondLabel"}"
parameter "secondPassword" = "{parameter "secretAccessKey"}_{parameter "secondLabel"}"
plugin store "AWSAssetDiscoveryPlugin" set "{parameter "secondAccessKey"}" value "<myUserKey3>" on "{parameter "action issue date" of action}"
plugin store "AWSAssetDiscoveryPlugin" set encrypted "{parameter "secondPassword"}" value "<myUserPass3>" on "{parameter "action issue date" of action}"
plugin store "AWSAssetDiscoveryPlugin" set "Credentials_Region_{parameter "secondLabel"}" value "af-south-1" on "{parameter "action issue date" of action}"
必要なものが揃ったので、埋め込まれた XML ファイルを action.xml などのカスタム名で保存するだけです。
<?xml version="1.0" encoding="utf-8"?>
<BES xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" SkipUI="true">
    <SingleAction>
        <Title>AWS Plugin Config Template</Title>
        <Relevance>true</Relevance>
        <ActionScript MIMEType="application/x-Fixlet-Windows-Shell">
parameter "firstLabel" = "testuser2"
parameter "secondLabel" = "testuser3"

parameter "accessKey" = "Credentials_AccessKey"
parameter "secretAccessKey" = "Credentials_SecretAccessKey"
parameter "region" = "Credentials_Region"

parameter "firstAccessKey" = "{parameter "accessKey"}_{parameter "firstLabel"}"
parameter "firstPassword" = "{parameter "secretAccessKey"}_{parameter "firstLabel"}"
plugin store "AWSAssetDiscoveryPlugin" set "{parameter "firstAccessKey"}" value "<myUserKey2>" on "{parameter "action issue date" of action}"
plugin store "AWSAssetDiscoveryPlugin" set encrypted "{parameter "firstPassword"}" value "<myUserPass2>" on "{parameter "action issue date" of action}"
plugin store "AWSAssetDiscoveryPlugin" set "Credentials_Region_{parameter "firstLabel"}" value "us-east-1" on "{parameter "action issue date" of action}"

parameter "secondAccessKey" = "{parameter "accessKey"}_{parameter "secondLabel"}"
parameter "secondPassword" = "{parameter "secretAccessKey"}_{parameter "secondLabel"}"
plugin store "AWSAssetDiscoveryPlugin" set "{parameter "secondAccessKey"}" value "<myUserKey3>" on "{parameter "action issue date" of action}"
plugin store "AWSAssetDiscoveryPlugin" set encrypted "{parameter "secondPassword"}" value "<myUserPass3>" on "{parameter "action issue date" of action}"
plugin store "AWSAssetDiscoveryPlugin" set "Credentials_Region_{parameter "secondLabel"}" value "af-south-1" on "{parameter "action issue date" of action}"
        </ActionScript>
        <SuccessCriteria />
        <Settings />
        <SettingsLocks />
        <Target>
            <ComputerID>1078556546</ComputerID>
        </Target>
    </SingleAction>
注: testuser2 と testuser3 は、架空のラベル名です。ただし、Credentials_AccessKeyCredentials_SecretAccessKeyCredentials_Regionは実際の設定名です。これらのパラメーターを定義します。これらのパラメーターを組み合わせることにより、上記のようにユーザー・キーとパスワードを設定するために必要なキーを定義できるためです。
REST API を使用して action.xml に含まれるアクションを起動するには、IEM CLI を使用して以下のコマンドを発行します。
iem POST <path to action.xml> /api/actions

出力は次のようになります。

アクションが正常に完了したかどうかを WebUI で確認します。この場合、2 人の新規ユーザーが即時に使用可能になります。