動的トークン

コネクションマネージャーとボルトの連携を使用した動的フィールド検索

動的トークン

ボルト連携を使用する場合、特定のトークンはKeeperのレコードの対応する値に置き換えられます。

トークンには、動的トークンと静的トークンがあります。動的トークンは、Keeperボルトで一致するホスト名を検索して、必要なフィールドを抽出します。静的トークンは、特定のKeeperのレコードおよびフィールドを明示的に参照するように作成できます。

ホスト名の照合

Keeperのレコードは、接続の「Hostname」 (ホスト名) フィールドとボルトのレコードの「ホスト名またはIPアドレス」フィールドを使用して接続に割り当てることができます。

これら2つの値が一致した場合、コネクションマネージャーが接続の他のフィールドのトークンを取得して、レコードのユーザー名、パスワード、ドメインなどの値に置き換えます。

Linuxの接続照合の例
SSH接続のシークレットマネージャーとの連携
Windowsログインの例

ユーザーのマッチング

Keeperのレコードは、接続の「Username」 (ユーザー名) フィールドとボルトのレコードの「ログイン」フィールドによって接続に割り当てます。

これら2つの値が一致した場合、コネクションマネージャーは、接続の他のフィールドのトークンを取得して、レコードのシークレットに置き換えます。

この機能は、例えば1つのSSH鍵を複数のサーバーにマッピングする場合に便利で、ホストごとに1つのレコードをボルトに保存する必要はありません。1つのKeeperボルトのレコードを使用して、接続をいくつでも認証できます。以下は、ユーザー名でマッチングするように設定された接続となります。

ユーザー照合による接続例

対応するボルトのレコードを以下に示します。ボルトのレコードにホスト名が指定されていないため、ログインフィールドを使用して照合されます。

ユーザーでボルトのレコードを照合

ユーザーベースの照合では、Keeperのレコードにホスト名/ポートがないことを確かにします。ユーザー名とパスワード (または秘密鍵) の指定するだけで問題ありません。

ドメイン照合

Keeperのレコードは、接続の「ドメイン」フィールドとボルトのレコードの「ドメイン」という名前のカスタムフィールドによって接続に割り当てることができます。

これら2つの値が一致した場合、コネクションマネージャーは、接続の他のフィールドのトークンを取得して、レコードのユーザー名、パスワードなどの値に置き換えます。

ドメイン照合

ドメインをユーザー名フィールドの一部 (LUREY\Administratorなど) として保存したい場合は、keeper/guacamoleイメージのDockerコンテナ環境変数のKSM_STRIP_WINDOWS_DOMAINSフラグを「True」に切り替えて有効にします。

別の例として、Active Directoryの認証情報を使用してLinuxマシンにSSH接続を行う場合、username@domain形式の値をログインフィールドに保存することができます。

使用可能なトークン

内臓のトークンはそれぞれがレコードのフィールドに対応しています。以下は、各トークンとそれに対応するレコードのフィールドの一覧示します。これらのトークンは、すべての接続タイプに適用できます。

パラメータトークン

説明

${KEEPER_SERVER_USERNAME}

取得: 一致した個々のレコードの「Login」フィールド

一致: 「hostname」接続パラメータの値と一致するホスト名/IPアドレスを持つレコード

${KEEPER_SERVER_KEY}

取得: 一致した個々のレコードの「Private Key」フィールド (または個々の.pemファイル添付)

一致: 「hostname」接続パラメータの値と一致するホスト名/IPアドレスを持つレコード

${KEEPER_SERVER_PASSPHRASE}

取得: 一致した個々のレコードの「Passphrase」フィールド (Passphraseがない場合は「Password」)

一致: 「hostname」接続パラメータの値と一致するホスト名/IPアドレスを持つレコード

${KEEPER_SERVER_PASSWORD}

取得: 一致した個々のレコードの「Password」フィールド

一致: 「hostname」接続パラメータの値と一致するホスト名/IPアドレスを持つレコード

${KEEPER_SERVER_DOMAIN}

取得: 一致した個々のレコードの「Domain」カスタムフィールド

一致: 「hostname」接続パラメータの値と一致するホスト名/IPアドレスを持つレコード

${KEEPER_USER_KEY}

取得: 一致した個々のレコードの「Private Key」フィールド (または個々の.pemファイル添付)

一致: 「username」接続パラメータに一致するログインを持つレコード

${KEEPER_USER_PASSPHRASE}

取得: 一致した個々のレコードの「Passphrase」フィールド (Passphraseがない場合はPassword)

一致: 「username」接続パラメータに一致するログインを持つレコード

${KEEPER_USER_PASSWORD}

取得: 一致した個々のレコードの「Password」フィールド

一致: 「username」接続パラメータに一致するログインを持つレコード

${KEEPER_USER_DOMAIN}

取得: 一致した個々のレコードの「Domain」カスタムフィールド

一致: 「username」接続パラメータに一致するログインを持つレコード

${KEEPER_DOMAIN_USERNAME}

取得: 一致した個々のレコードの「Login」フィールド

一致: 「domain」接続パラメータの値と一致するカスタム「Domain」フィールドを持つレコード

${KEEPER_DOMAIN_PASSWORD}

取得: 一致した個々のレコードの「Password」フィールド

一致: 「domain」接続パラメータに一致するログインを持つレコード

ゲートウェイトークン

以下のトークンは、ゲートウェイサポート (RDP) が利用できる接続タイプにのみ適用されます。

パラメータトークン

説明

${KEEPER_GATEWAY_USERNAME}

取得: 一致した個々のレコードの「Login」フィールド

一致: 「gateway-hostname」接続パラメータの値と一致するホスト名/IPアドレスを持つレコード。

${KEEPER_GATEWAY_KEY}

取得: 一致した個々のレコードの「Private Key」フィールド (または個々の.pemファイル添付)

一致: 「gateway-hostname」接続パラメータの値と一致するホスト名/IPアドレスを持つレコード。

${KEEPER_GATEWAY_PASSPHRASE}

取得: 一致した個々のレコードの「Passphrase」フィールド (パスフレーズがない場合は「Password」)

一致: 「gateway-hostname」接続パラメータの値と一致するホスト名/IPアドレスを持つレコード。

${KEEPER_GATEWAY_PASSWORD}

取得: 一致した個々のレコードの「Password」フィールド

一致: 「gateway-hostname」接続パラメータの値と一致するホスト名/IPアドレスを持つレコード。

${KEEPER_GATEWAY_USER_KEY}

取得: 一致した個々のレコードの「Private Key」フィールド (または個々の.pemファイル添付)

一致: 「gateway-username」接続パラメータに一致するログインを持つレコード。

${KEEPER_GATEWAY_USER_PASSPHRASE}

取得: 一致した個々のレコードの「Passphrase」フィールド (Passphraseがない場合は「Password」)

一致: 「gateway-username」接続パラメータに一致するログインを持つレコード

${KEEPER_GATEWAY_USER_PASSWORD}

取得: 一致した個々のレコードの「Password」フィールド

一致: 「gateway-username」接続パラメータに一致するログインを持つレコード

Windowsユーザー名/ドメインの解析

KCMは、対応する名前のフィールドがある限り、Keeperボルトのレコードからドメイン、ユーザー名、パスワードの各フィールドを識別します。 以下に例を示します。

カスタムフィールドでのドメイン照合

ログインフィールドからドメインを自動解析

Keeperボルトのログインフィールドの値がDOMAIN\UsernameまたはUsername@Domainの形式で供給されている場合、Active Directoryの「ドメイン」フィールドおよび「ユーザー名」フィールドを解析できます。

自動解析を有効にするには、環境変数KSM_STRIP_WINDOWS_DOMAINSをDocker Configファイルに追加する必要があります。これにより、ユーザー名がドメインと結合されている場合に照合が機能するようになります。

KSM_MATCH_DOMAINS_FOR_USERSと呼ばれる別のプロパティは、ユーザー名とドメインの両方が正確に一致する場合にのみ、マッチングを強制します。

以下に例を示します。

docker-compose.yml
            ....
            MYSQL_DATABASE: "guacamole_db"
            MYSQL_USERNAME: "guacamole_user"
            KSM_CONFIG:"XXX"
            ....
            ....
            KSM_STRIP_WINDOWS_DOMAINS: "true"
            ....

これで、レコードの「ログイン」フィールドに以下のように指定できます。

ログインフィールドからドメインを自動解析

Last updated