> ## Documentation Index
> Fetch the complete documentation index at: https://docs.sambanova.ai/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# デバイス認証情報

本ガイドでは、SambaRack Manager でのデバイス認証情報 (device credential) の管理について説明します。SambaRack Manager が管理機能を実行するには、個々のデバイスの認証情報が必要です。認証情報は、AES-GCM 暗号化で保護された暗号化ファイル (`credentials.json.enc`) に保存されます。

<Note>
  SambaRack Manager は、ローカルのパスワード保管庫 (password vault) として機能します。デバイスのパスワードの変更、認証情報のプッシュ、デバイス認証の管理は行いません。
</Note>

セットアップの全体の流れは次のとおりです。

1. SambaRack Manager ソフトウェアのインストール
2. 初期セットアップと動作確認
3. SambaRack Manager インベントリへの SambaRack の追加
4. **SambaRack Manager でのデバイス認証情報の設定** (このページ)

## 認証情報の仕組み

まず本セクションに一度目を通してください。以降の内容はすべて、次の 4 つの前提に基づいています。

### SambaRack Manager はパスワード保管庫であり、パスワードマネージャーではない

<Note>
  SambaRack Manager は、登録された認証情報を保存し、それを使用してデバイスに対する認証を行います。デバイスのパスワードの変更、ハードウェアへの認証情報のプッシュ、デバイス認証の管理は、いかなる形でも**行いません**。
</Note>

パスワードはハードウェア側で設定します。SambaRack Manager はそれを記憶するだけです。

### 認証情報は保存時に暗号化される

認証情報は、AES-GCM 暗号化で保護された `credentials.json.enc` に保存されます。暗号鍵は初期セットアップ時に生成され、設定ディレクトリ内に保管されます。パスワードがログに書き込まれることはありません。

### デバイスタイプごとに 1 つの共有パスワード

デフォルトでは、同じタイプのデバイスはすべて、そのタイプのパスワードを共有します。すべての BMC で 1 つ、すべての XRDU で 1 つ、すべてのホストで 1 つのパスワードを共有します。

特定のデバイスに固有のパスワードを設定するには、[デバイス単位の認証情報](#任意-デバイス単位の認証情報) を設定します。ラック単位のパスワードはありません。

### 自動同期は行われない

SambaRack Manager には、デバイス側でパスワードが変更されたことを検知する手段がありません。両者が同期しなくなると、そのデバイスに対して認証を行うすべての操作が失敗します。

| 操作 | 必要な手順 | タイミング |
| - | - | - |
| デバイスパスワードの変更 | 先にデバイス側を更新し、その後 SambaRack Manager を更新する | 変更後すぐ |
| パスワードのローテーション | 先にデバイス側を更新し、その後 SambaRack Manager を更新する | メンテナンスウィンドウ中 |
| 認証エラーのトラブルシューティング | デバイスのパスワードが SambaRack Manager と一致していることを確認する | 最初のデバッグ手順として |

<Warning>
  SambaRack Manager の認証情報がデバイスのパスワードと同期しなくなると、以下の操作が実行できなくなります。

  * ノードのパワーサイクル
  * BMC へのアクセス
  * ノード設定の変更
  * リモート操作の実行

  この失敗は接続の時点で表面化するため、認証情報の問題ではなく、ネットワークやハードウェアの障害のように見えることがよくあります。重要な操作を行う前に、認証情報が一致していることを必ず確認してください。
</Warning>

***

## 認証情報のセットアップ

### ステップ 1: ハードウェアでのパスワードの設定

SambaRack ユニットは、デフォルトのパスワードが設定された状態で出荷されます。**できるだけ早い段階でこれらを変更してください**。デバイスタイプごとの具体的な手順については、各デバイスのハードウェア管理ガイドをご参照ください。

### ステップ 2: SambaRack Manager への各パスワードの登録

```bash theme={}
snctl secret set --device-type <device_type>
```

値は安全な方法で対話的に入力を求められ、ターミナルには表示 (エコー) されません。

```bash theme={}
snctl secret set --device-type host
Enter secret value: ••••••••
Confirm secret value: ••••••••
```

```text theme={}
✓ Secret set for host (host)
```

空の値、または空白のみの値は拒否されます。

インベントリ内のすべてのデバイスタイプについて、この操作を繰り返します。

| デバイスタイプ | `--device-type` に指定する値 |
| - | - |
| BMC | `bmc` |
| ホスト | `host` |
| XRDU | `xrdu` |
| PDU | `pdu` |
| アクセススイッチ | `access_switch` |
| データスイッチ | `data_switch` |
| シリアルターミナル | `serial_terminal` |

<Note>
  電源操作を実行する前に、最低限 `bmc`、`host`、`xrdu` を登録してください。電源コマンドはこの 3 つすべてに対して認証を行います。
</Note>

**このステップが完了すると、SambaRack Manager を使用する準備が整います。**

***

## 認証情報の管理

### パスワードの設定・更新

新しい認証情報の設定と既存の認証情報の更新には、同じコマンドを使用します。

```bash theme={}
snctl secret set --device-type <device_type>
```

以下のタイミングで実行してください。

* 新しいラックまたはデバイスをインベントリに追加したとき
* いずれかのデバイスの認証情報が変更されたとき
* デバイスまたはハードウェア FRU (Field Replaceable Unit) を交換したとき — 新しいデバイスの認証情報をデフォルト値から変更する必要があります

### パスワードの表示

```bash theme={}
snctl secret get --device-type <device_type>
```

値はデフォルトでマスク表示されます。

```bash theme={}
snctl secret get --device-type bmc
```

| シークレットの長さ | 出力 |
| - | - |
| 4 文字を超える場合 | `bmc: My***3!` |
| 4 文字以下の場合 | `bmc: ***` |

値全体を表示するには、`--show-value` を追加します。

```bash theme={}
snctl secret get --device-type bmc --show-value
```

```yaml theme={}
bmc: MySecurePassword123!
```

<Warning>
  `--show-value` は安全な環境でのみ使用してください。パスワードが平文で出力され、ターミナルのスクロールバックやシェル履歴に残ります。出力を共有したり、チケット・チャット・ドキュメントに貼り付けたりしないでください。
</Warning>

どちらの形式でも、`-o json` を追加すると機械可読な出力が得られます。

### パスワードの削除

値を入力する代わりに `--clear` を指定します。入力は求められません。

```bash theme={}
snctl secret set --device-type bmc --clear
```

```text theme={}
✓ Secret cleared for bmc
```

一度も設定されていない認証情報をクリアしても、エラーにはならず正常に完了します。

<Warning>
  デバイスタイプの認証情報をクリアすると、そのタイプの**すべての**デバイスがパスワードのない状態になります。新しいパスワードを設定するまで、それらすべてに対する電源操作とファームウェア操作は失敗します。
</Warning>

***

## (任意) デバイス単位の認証情報

特定のデバイスがそのタイプのパスワードを共有していない場合は、正規のデバイスパス (canonical device path) を指定して、そのデバイス固有の認証情報を設定します。デバイス単位の認証情報は、デバイスタイプのパスワードよりも優先されます。

### オーバーライドの設定

```bash theme={}
snctl secret set --device <device_path>
```

```bash theme={}
snctl secret set --device Rack/001/Node/0/bmc
Enter secret value: ••••••••
Confirm secret value: ••••••••
```

```text theme={}
✓ Secret set for device Rack/001/Node/0/bmc
```

パスの形式については、[デバイスパスとインデックス](srm-rack-admin#デバイスパスとインデックス) をご参照ください。

### デバイスが解決する認証情報の確認

`snctl secret get --device` は、デバイスが実際に使用する認証情報と、それがどの階層に由来するかを表示します。これにより、オーバーライドが有効なのか、デバイスタイプの認証情報にフォールバックしているのかを確認できます。

```bash theme={}
snctl secret get --device Rack/001/Node/0/bmc
```

**オーバーライドが設定されている場合:**

```powershell theme={}
Rack/001/Node/0/bmc (device override): My***3!
```

**オーバーライドなし — デバイスタイプへのフォールバック:**

```powershell theme={}
Rack/001/Node/0/bmc (default: bmc): Sh***d!
```

ここでも `--show-value` と `-o json` を使用できます。JSON 出力には解決階層 (resolution tier) が含まれます。

### オーバーライドの削除

同じパスを指定してクリアします。以降、そのデバイスはデバイスタイプの認証情報にフォールバックします。

```bash theme={}
snctl secret set --device Rack/001/Node/0/bmc --clear
```

```text theme={}
✓ Secret cleared for device Rack/001/Node/0/bmc
```

***

## 次のステップ

これでセットアップは完了です。インベントリへの登録が済み、SambaRack Manager がデバイスに対して認証できるようになったので、ハードウェアの管理を開始できます。

| ガイド | できること |
| - | - |
| [ノード管理](srm-node-admin) | ノード詳細の表示、デバイス接続情報の確認、ノード名の変更 |
| [グループ管理](srm-group-admin) | 単一のコマンドで複数のラックを対象にできるよう、ラックを名前付きグループにまとめる |
| [電源操作](srm-power-admin) | 電源状態の確認と、ノードの電源オン・電源オフ・パワーサイクルの実行 |
| [ファームウェア更新](srm-firmware-updates) | インストール済みファームウェアとプランオブレコード (Plan of Record; POR) の比較、および BIOS・BMC・XRDU・Thor Card ファームウェアのアップグレード |

<Note>
  SambaRack Manager を初めて利用する場合は、[ノード管理](srm-node-admin) と [電源操作](srm-power-admin) から始めてください。`snctl node list` と `snctl power state --help` はどちらも読み取り専用のため、ハードウェアの状態を変更する操作を実行する前に、インベントリと認証情報が正しいことを安全に確認できます。
</Note>
