Files
claude-code/CHANGELOG-2.1.263-f.md
T
claude c31dd5875c
Helm Chart Release / release-chart (push) Successful in 7s
Build Session Image / build-push (push) Successful in 2m5s
feat: git identity を Web UI から登録・削除できるようにする (v2.1.263-f)
helm --set-file ではなく UI から SSH 秘密鍵 + known_hosts / HTTPS トークンを登録可能に。

- git.guiIdentities.enabled(既定 true)。UI に「認証情報」カード(一覧/追加/削除)
- GET/POST/DELETE /api/identities。登録分はセッション NS の Secret
  (ラベル identity-source=gui / identity-type)として保存。Helm 管理分と同一覧に統合
- manager.py: resolve_identity / list_identities / create_gui_identity / delete_gui_identity。
  build_pod と create_session は Helm 管理 + GUI 登録の両方を解決。
  /api/config の identities を {name,type,source} 配列に変更
- rbac.yaml: guiIdentities.enabled 時のみ manager Role に同 NS secrets の CRUD を付与
- 秘密鍵はリクエストボディで manager へ届くため README に経路 TLS 必須を明記
- helm lint / template 検証済み
2026-09-09 12:47:50 +09:00

37 lines
1.9 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# CHANGELOG 2.1.263-f — 手動リリース
## 追加: GUI からの git identity 登録
Web UI の **「認証情報(identity)」カード** から、`helm` を触らずに SSH 秘密鍵 +
`known_hosts` / HTTPS トークンを登録・削除できるようにした。
- `git.guiIdentities.enabled`(既定 `true`)
- API:
- `GET /api/identities` … Helm 管理 + GUI 登録の identity 一覧(`{name, type, source}`)
- `POST /api/identities` … 登録(`{name, type, privateKey, knownHosts}` または
`{name, type, username, token}`)。`ssh` は `known_hosts` 必須、秘密鍵の簡易検証あり。
Helm 管理と同名は拒否。既存 GUI 分は置き換え。
- `DELETE /api/identities/<name>` … 削除(`identity-source=gui` のみ。Helm 管理は不可)
- 保存先: セッション NS の Secret。ラベル
`claude-code.cafepieters.com/identity-source: gui|helm` /
`claude-code.cafepieters.com/identity-type: ssh|https-token` で区別。
- `build_pod` / セッション作成のバリデーションは Helm 管理と GUI 登録の両方を解決する
(`resolve_identity` / `list_identities`)。
- `/api/config` の `identities` は文字列配列 → `{name,type,source}` 配列に変更。UI も追従。
## RBAC
`git.guiIdentities.enabled: true` のとき、manager Role にセッション NS の
`secrets` `["get","list","create","update","patch","delete"]` を追加(`false` なら付かない)。
同 NS には Claude 認証情報 Secret も存在するため、不要なら無効化を推奨。
## セキュリティ注意
秘密鍵はブラウザ → gateway → manager をリクエストボディで通る。経路の TLS
(Ingress の `tls` / LB の TLS 終端)を有効にすること。README「git — 接続先と認証
アイデンティティ」に明記。
## バージョン
`version` = `2.1.263-f` / `appVersion` = `"2.1.263"`。