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 検証済み
This commit is contained in:
+14
-1
@@ -216,8 +216,21 @@ git:
|
||||
defaultAuthorName: "Claude"
|
||||
defaultAuthorEmail: "claude@cafepieters.com"
|
||||
|
||||
# 認証アイデンティティ。セッション作成時に名前で選択する。
|
||||
# GUI(Web UI)からの認証情報 identity 登録を許可する。
|
||||
# 有効にすると、UI の「認証情報」カードから SSH 秘密鍵 + known_hosts / HTTPS トークンを
|
||||
# 登録・削除できる。登録内容はセッション NS の Secret として保存される。
|
||||
# トレードオフ:
|
||||
# - manager にセッション NS の secrets への get/list/create/update/delete 権限が付く
|
||||
# (同 NS には Claude 認証情報 Secret も存在する点に留意)。
|
||||
# - 秘密鍵はブラウザ→gateway→manager をリクエストボディで通る。経路の TLS
|
||||
# (Ingress の tls / LB の TLS 終端)を必ず有効にすること。
|
||||
# 下の git.identities(Helm 管理)は常に読み取り専用で UI に表示される。
|
||||
guiIdentities:
|
||||
enabled: true
|
||||
|
||||
# 認証アイデンティティ(Helm 管理)。セッション作成時に名前で選択する。
|
||||
# GitHub / Gitea / GitLab など SSH または HTTPS トークンで認証する任意のホストに対応。
|
||||
# GUI から登録したものと合わせて使える(同名は不可)。
|
||||
identities: {}
|
||||
# gitea-ssh:
|
||||
# type: ssh # ssh | https-token
|
||||
|
||||
Reference in New Issue
Block a user