[PR #194] [MERGED] feat(kiro): 添加 AWS SSO 凭据导入和批量导入流式进度功能 #293

Closed
opened 2026-02-27 07:18:51 +03:00 by kerem · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/justlovemaki/AIClient-2-API/pull/194
Author: @leonaii
Created: 1/9/2026
Status: Merged
Merged: 1/9/2026
Merged by: @justlovemaki

Base: mainHead: main


📝 Commits (1)

  • 1abc6bb feat(kiro): 添加 AWS SSO 凭据导入和批量导入流式进度功能

📊 Changes

4 files changed (+1196 additions, -60 deletions)

View changed files

📝 src/oauth-handlers.js (+340 -2)
📝 src/ui-manager.js (+113 -9)
📝 static/app/i18n.js (+68 -2)
📝 static/app/provider-manager.js (+675 -47)

📄 Description

新增功能

1. AWS SSO 凭据导入功能

  • 支持从 AWS SSO cache 目录导入凭据文件(适用于 AWS Builder ID 模式)
  • 支持文件上传和 JSON 粘贴两种输入模式
  • 支持多文件智能合并(自动补全缺失字段)
  • 实时验证必需字段(clientId、clientSecret、accessToken、refreshToken)
  • 导入前自动刷新 token 获取最新凭据

2. 批量导入实时进度显示

  • 将批量导入 API 改为 SSE(Server-Sent Events)流式响应
  • 前端实时显示每个 token 的处理进度和结果
  • 支持显示成功、失败、重复等不同状态

3. 重复凭据检测

  • 新增 checkKiroCredentialsDuplicate 函数,基于 refreshToken 检测重复
  • 批量导入和 AWS 导入均支持重复检测
  • 重复凭据会显示已存在的文件路径

修改的文件

文件 变更说明
src/oauth-handlers.js 新增 checkKiroCredentialsDuplicatebatchImportKiroRefreshTokensStreamimportAwsCredentials 函数
src/ui-manager.js 新增 /api/kiro/import-aws-credentials 端点,批量导入改为 SSE 流式响应
static/app/provider-manager.js 新增 AWS 导入 UI 模态框,批量导入改为 SSE 实时进度显示
static/app/i18n.js 新增 AWS 导入相关的中英文国际化文本

技术细节

  • 批量导入 API 使用 text/event-stream 响应类型
  • AWS 凭据导入支持可选的 token 刷新(失败时保存原始凭据)
  • 重复凭据检测返回 HTTP 409 Conflict 状态码

🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/justlovemaki/AIClient-2-API/pull/194 **Author:** [@leonaii](https://github.com/leonaii) **Created:** 1/9/2026 **Status:** ✅ Merged **Merged:** 1/9/2026 **Merged by:** [@justlovemaki](https://github.com/justlovemaki) **Base:** `main` ← **Head:** `main` --- ### 📝 Commits (1) - [`1abc6bb`](https://github.com/justlovemaki/AIClient-2-API/commit/1abc6bb51e65fac54c940c7e3288a2d315c088ab) feat(kiro): 添加 AWS SSO 凭据导入和批量导入流式进度功能 ### 📊 Changes **4 files changed** (+1196 additions, -60 deletions) <details> <summary>View changed files</summary> 📝 `src/oauth-handlers.js` (+340 -2) 📝 `src/ui-manager.js` (+113 -9) 📝 `static/app/i18n.js` (+68 -2) 📝 `static/app/provider-manager.js` (+675 -47) </details> ### 📄 Description ## 新增功能 ### 1. AWS SSO 凭据导入功能 - 支持从 AWS SSO cache 目录导入凭据文件(适用于 AWS Builder ID 模式) - 支持文件上传和 JSON 粘贴两种输入模式 - 支持多文件智能合并(自动补全缺失字段) - 实时验证必需字段(clientId、clientSecret、accessToken、refreshToken) - 导入前自动刷新 token 获取最新凭据 ### 2. 批量导入实时进度显示 - 将批量导入 API 改为 SSE(Server-Sent Events)流式响应 - 前端实时显示每个 token 的处理进度和结果 - 支持显示成功、失败、重复等不同状态 ### 3. 重复凭据检测 - 新增 `checkKiroCredentialsDuplicate` 函数,基于 refreshToken 检测重复 - 批量导入和 AWS 导入均支持重复检测 - 重复凭据会显示已存在的文件路径 ## 修改的文件 | 文件 | 变更说明 | |------|----------| | `src/oauth-handlers.js` | 新增 `checkKiroCredentialsDuplicate`、`batchImportKiroRefreshTokensStream`、`importAwsCredentials` 函数 | | `src/ui-manager.js` | 新增 `/api/kiro/import-aws-credentials` 端点,批量导入改为 SSE 流式响应 | | `static/app/provider-manager.js` | 新增 AWS 导入 UI 模态框,批量导入改为 SSE 实时进度显示 | | `static/app/i18n.js` | 新增 AWS 导入相关的中英文国际化文本 | ## 技术细节 - 批量导入 API 使用 `text/event-stream` 响应类型 - AWS 凭据导入支持可选的 token 刷新(失败时保存原始凭据) - 重复凭据检测返回 HTTP 409 Conflict 状态码 --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
kerem 2026-02-27 07:18:51 +03:00
Sign in to join this conversation.
No labels
pull-request
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/AIClient-2-API-justlovemaki#293
No description provided.