# PAMユーザー

<figure><img src="https://859776093-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FPL6k1aGsLiFiiJ3Y7zCl%2Fuploads%2FHw8OvMZptHR4VkZByoTT%2Fimage.png?alt=media&#x26;token=659c0efb-2d78-46a6-b45e-2a383f3c77fe" alt=""><figcaption></figcaption></figure>

## 概要

PAMユーザーはKeeperPAMリソースの一種で、アカウントの認証情報を表し、他のリソースからリンクされて使用されます。

<table><thead><tr><th width="215">PAMレコードタイプ</th><th>対応アカウントタイプ</th></tr></thead><tbody><tr><td>PAMユーザー</td><td>ローカルWindowsアカウント、ドメインアカウント、Active Directoryユーザー、IAMユーザー、データベースアカウント、SaaSアカウント、Linuxアカウント、SSH秘密鍵</td></tr></tbody></table>

## PAMユーザーとは

KeeperPAMユーザーレコードは、他のPAMリソース内の特定のアカウントを定義します。PAMマシン、PAMデータベース、PAMディレクトリ、PAMリモートブラウザの各レコードは、PAMユーザーにリンクされます。

## 機能

PAMユーザーリソースでは以下がサポートされています。

* オンデマンドパスワードローテーションおよびスケジュールパスワードローテーション
* 特権管理自動化用PAMスクリプト
* ユーザーおよびチームへの永続的な共有
* 時間制限付きアクセスの共有
* 共有解除後の自動ローテーション

## PAMユーザーの作成

PAMユーザーを作成する前に、PAM構成に加えてマシン、データベース、ディレクトリ、ブラウザなどのPAMリソースをまず作成しておいてください。

PAMユーザーの作成手順

1. **\[新規作成]** をクリックします。
2. 用途に応じて、**\[ローテーション]**、**\[トンネル]**、**\[コネクション]** のいずれかを選択します。
3. ポップアップウィンドウで以下を行います。
   1. **\[新しいレコード]** を選択
   2. レコードを作成する共有フォルダを選択
   3. タイトルを入力
   4. 対象として **\[ユーザー]** を選択
4. **\[次へ]** をクリックし、必要な情報をすべて入力します。

<figure><img src="https://859776093-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FPL6k1aGsLiFiiJ3Y7zCl%2Fuploads%2FAoW2yOOcZPfFEw5EgE1l%2Fimage.png?alt=media&#x26;token=8aace350-241f-4cac-984e-bca159e8a407" alt=""><figcaption><p>PAMユーザーの作成</p></figcaption></figure>

## PAMユーザーレコードタイプのフィールド

<table><thead><tr><th width="168">フィールド</th><th width="251">説明</th><th>備考</th></tr></thead><tbody><tr><td>ログイン</td><td><p>ユーザー名。正確なコンテキストと形式は、関連するリソースによって異なります。</p><p>詳細については下の<a href="#bei-kao">備考</a>をご参照ください。</p></td><td><strong>必須</strong><br><br>例:<br><code>username</code><br><code>username@domain</code><br><code>DOMAIN\username</code></td></tr><tr><td>パスワード</td><td>ユーザーのパスワード</td><td>ローテーション可能</td></tr><tr><td>プライベートPEMキー</td><td>ユーザーに紐づけられたPEM形式のSSH秘密鍵</td><td>ローテーション可能</td></tr><tr><td>識別名</td><td>識別名。PAMディレクトリに関連付けられている場合に使用されます。</td><td><p><strong>必須</strong> (ディレクトリによってユーザーが管理されている場合にのみ)<br></p><p>例:<br>CN=Jeff Smith,OU=Sales,DC=demo,DC=COM<br></p><p>空欄のままにした場合、プロバイダの種類に応じてデフォルトが試行されます。</p></td></tr><tr><td>管理ユーザー</td><td>AWSまたはAzure IAMシステムによって管理されるアカウント用のフラグ</td><td>Keeperディスカバリによって設定され、パスワードがローテーションできないことを示します。たとえば、AWSのトークンベース認証などです。</td></tr><tr><td>接続データベース</td><td>データベース名が必要な特定の状況で使用します。</td><td>特殊なケース (例: LDAPを使ってMySQLデータベースに接続する場合)</td></tr></tbody></table>

#### 備考

ドメイン参加済みのWindowsマシンに接続する場合

* ドメイン参加済みシステムでは、常にUPN形式 (`user@domain.local`) をご使用ください。この形式は最新の形式で、DNSに依存し、NetBIOSの問題を回避できます。
* 旧システムやUPNがサポートされていない混在環境では、`DOMAIN\user` 形式をご使用ください。

Keeperでは指定されたユーザー名をそのまま使用してリモートシステムへのログインを試行します。\
認証に失敗した場合、Keeperは次の形式で再試行します。

* ユーザープリンシパル名 (UPN) 形式: <admin@company.com>
* ドメインNetBIOS形式: COMPANY\admin
* 短縮UPN形式 (TLDなし): admin\@company
* ドメインFQDN＋バックスラッシュ形式: company.com\admin

### SSHキーのパスフレーズ

PAMユーザーのレコードにSSHキーを保存する場合、PEM形式の秘密鍵は「秘密鍵」フィールドに追加されます。SSH鍵ファイルが暗号化されている場合は、「パスフレーズ」というタイトルのカスタムフィールドを作成し、SSH鍵のパスフレーズを保存できます。

| フィールド名 | 説明                        | 備考                    |
| ------ | ------------------------- | --------------------- |
| パスフレーズ | SSH秘密鍵を接続時に復号するために使用されます。 | SSH鍵が暗号化されている場合は必須です。 |

### ローテーション設定の構成

PAMユーザーレコードの **\[ローテーション設定]** セクションでは、認証情報のローテーションをどのように管理するかを設定します。

<figure><img src="https://859776093-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FPL6k1aGsLiFiiJ3Y7zCl%2Fuploads%2F7ghcbqFNmq9tAw3ByVtv%2Fimage.png?alt=media&#x26;token=e52e81b5-fb59-4bf9-805a-0f71641b036e" alt=""><figcaption><p>PAMユーザーレコードの編集</p></figcaption></figure>

## パスワードローテーションの設定

<table><thead><tr><th>フィールド</th><th width="235">説明</th><th>必須か否か</th></tr></thead><tbody><tr><td>ローテーションタイプ</td><td>実行するローテーションの種類 (および使用するプロトコル) を指定します。</td><td><strong>必須</strong><br><br>「一般」、「IAMユーザー」、「PAMスクリプトの実行のみ」。詳細については下のセクションをご覧ください。</td></tr><tr><td>PAMリソース</td><td><p>「一般」ローテーションタイプの場合、必要な権限を提供できるPAMリソースレコードを指定します。</p><p>「IAMユーザー」ローテーションタイプの場合、クラウドAPIを利用するPAM構成を指定します。</p></td><td>「一般」および「IAMユーザー」のローテーションタイプでのみ<strong>必須</strong></td></tr><tr><td>ローテーションスケジュール</td><td>ローテーションは、オンデマンドまたは特定のスケジュールで実行できます。</td><td>高度なスケジュール機能については<a href="https://github.com/Keeper-Security/gitbook-jp-secrets-manager/blob/main/privileged-access-manager/references/cron-spec/README.md">cron式のページ</a>をご参照ください。</td></tr><tr><td>パスワードの複雑さ</td><td>パスワードベースのローテーションに適用され、PEMキーには適用されません。</td><td>[さらに表示]をクリックして特殊文字や記号を制御します。</td></tr></tbody></table>

## ローテーションタイプ

以下の3種類のローテーションタイプに対応しています。

* **一般**\
  LDAP、データベース、SSHキーなどのネイティブプロトコルを使用してローテーションを実行します。
* **IAMユーザー**\
  AWS IAMユーザーやAzure管理リソースなど、クラウド特有のAPIを使用してローテーションを実行します。この場合、必要なのはPAM構成のみで必要な情報が含まれています。
* **PAMスクリプトの実行のみ**\
  標準のローテーションをスキップし、添付されたPAMスクリプトのみを実行します。

<figure><img src="https://859776093-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FPL6k1aGsLiFiiJ3Y7zCl%2Fuploads%2FiwpYlPrMYM8UVPZhfupD%2Fimage.png?alt=media&#x26;token=27f980f6-af88-450b-b672-1b58dd25430e" alt=""><figcaption><p>パスワードローテーションの設定</p></figcaption></figure>

ローテーションのスケジュールは、特定の間隔で設定するか、cron式を使用して設定できます。

<figure><img src="https://859776093-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FPL6k1aGsLiFiiJ3Y7zCl%2Fuploads%2FTHr1agpRLpAgqKgqvKCQ%2Fimage.png?alt=media&#x26;token=9d7d567f-5a47-468f-a786-991c2c5a5ae9" alt=""><figcaption><p>カスタムスケジュール</p></figcaption></figure>

<figure><img src="https://859776093-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FPL6k1aGsLiFiiJ3Y7zCl%2Fuploads%2FElxbFPPvenPu8HGxXPvd%2Fimage.png?alt=media&#x26;token=58577c6a-4548-403a-bf26-b38dcc63649f" alt=""><figcaption><p>カレンダー設定</p></figcaption></figure>

<figure><img src="https://859776093-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FPL6k1aGsLiFiiJ3Y7zCl%2Fuploads%2F075lK0UkM8ebtGbUiom6%2Fimage.png?alt=media&#x26;token=e55c7eb1-13ba-4709-91f5-581e67c50c46" alt=""><figcaption><p>Cron式</p></figcaption></figure>

## PAMリソース

ローテーションの設定を完了するためには、ローテーションタイプに応じたリソースを選択する必要があります。

「一般」ローテーションの場合、Keeperゲートウェイはネイティブプロトコルを使用して必要なローテーションを実行し、指定されたPAMリソースでローテーションが実行されます。必要に応じて、PAMリソースに関連付けられた管理者の認証情報が使用されます。

以下の例では、Windowsサービスアカウントのパスワードが関連のWindowsサーバーでローテーションされます。

<figure><img src="https://859776093-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FPL6k1aGsLiFiiJ3Y7zCl%2Fuploads%2FDklXHVXbZuoC3sy7W8iD%2Fimage.png?alt=media&#x26;token=821a27b1-3e8e-45d3-9e9b-a6da4415d714" alt=""><figcaption><p>ローテーションリソース</p></figcaption></figure>

「IAMユーザー」ローテーションタイプの場合、Keeperゲートウェイが参照PAM構成を使用して、ローテーションを実行に使用するAPIとローテーション方法を決定します。以下の例では、AWSのIAMユーザーが「AWS (US-WEST-1)」構成を使用します。

IAMユーザーローテーションを使用する場合、Keeperゲートウェイは、インスタンスロールポリシーから特権を継承するか、PAM構成レコード内のアクセスキーを通じて特権を取得することが前提となります。

<figure><img src="https://859776093-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FPL6k1aGsLiFiiJ3Y7zCl%2Fuploads%2FhCrm3cpBnLmgiKLdoSx3%2Fimage.png?alt=media&#x26;token=f9a27873-44eb-4a2b-a314-7d72228bfb2c" alt=""><figcaption><p>lAMユーザーローテーション</p></figcaption></figure>

## 要約

* PAMユーザーレコードは、ローテーションする認証情報を格納します。
* PAMユーザーレコードのローテーション設定は、特定のPAMマシン、PAMデータベース、PAMディレクトリリソースを参照します。このリソースがローテーションの対象となります。
* Keeperゲートウェイは、PAMマシン、PAMデータベース、PAMディレクトリリソースに関連付けられた管理者認証情報を使用して、ネイティブプロトコルでローテーションを実行します。
* AWSおよびAzure管理リソースの場合、Keeperはゲートウェイのインスタンスロール権限や、PAM構成のシークレットを使用してAPIでローテーションを実行します。

## 例

以下はPAMユーザーレコードの例となります。

* Windowsドメイン管理者

<figure><img src="https://859776093-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FPL6k1aGsLiFiiJ3Y7zCl%2Fuploads%2FI3hrCvPQT4cJ6n8TUFuY%2Fimage.png?alt=media&#x26;token=edef632d-ec1f-4875-9816-9087e916c1f1" alt=""><figcaption><p>Windowsドメイン管理者ユーザー</p></figcaption></figure>

* Windowsドメインユーザーとポストローテーションスクリプト

<figure><img src="https://859776093-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FPL6k1aGsLiFiiJ3Y7zCl%2Fuploads%2FX4014cpy9bziQft4EOqM%2Fimage.png?alt=media&#x26;token=ddee7054-d829-4596-98fe-64401acf8888" alt=""><figcaption><p>Windowsドメインユーザーとポストローテーションスクリプト</p></figcaption></figure>

* AWS IAMユーザー

<figure><img src="https://859776093-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FPL6k1aGsLiFiiJ3Y7zCl%2Fuploads%2Fd8DmCAe9wgPw7vAJ8tZD%2Fimage.png?alt=media&#x26;token=7bad69db-3ad9-47a7-91f6-ebea6ccba1cc" alt=""><figcaption><p>AWS IAMユーザー</p></figcaption></figure>

* データベースユーザー

<figure><img src="https://859776093-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FPL6k1aGsLiFiiJ3Y7zCl%2Fuploads%2Fmr4riXcrCvomWmm2HgLN%2Fimage.png?alt=media&#x26;token=70f64a6e-0319-404e-a752-7d7844ecd6b6" alt=""><figcaption><p>データベースユーザー</p></figcaption></figure>

* Azure ADユーザー

<figure><img src="https://859776093-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FPL6k1aGsLiFiiJ3Y7zCl%2Fuploads%2FpxWtCFKBZ0K0F3N6lvtB%2Fimage.png?alt=media&#x26;token=3e95e09f-8745-4935-9e32-4610afe7acdb" alt=""><figcaption><p>Azure ADユーザー</p></figcaption></figure>

## コマンダーCLI

コマンダーCLIを使用すると、PAMユーザーレコードの作成、認証情報のローテーション、チームメンバーへの認証情報の共有、新入社員オンボーディング向けのワンタイム共有リンクによる認証情報の配布などを自動化できます。

参照先

* [コマンダーCLI](https://docs.keeper.io/jp/keeperpam/commander-cli/overview)
* [KeeperPAMコマンド](https://docs.keeper.io/keeperpam/commander-cli/command-reference/keeperpam-commands)
* [共有コマンド](https://docs.keeper.io/jp/keeperpam/commander-cli/command-reference/sharing-commands)
* [自動化コマンド](https://docs.keeper.io/jp/keeperpam/commander-cli/command-reference/automation-commands)
