CLI 身份验证

使用原生 Cloud PKCE 登录,并将其会话与旧版 API 及 DDS 服务凭据区分开来。

Overview

根据所用命令选择凭据路径。原生 Cloud 登录、旧版客户操作凭据及由运营者配置的 DDS HTTP 服务,具有独立契约。本地 XLS 与原生工作区操作无需 Cloud 凭据。

桌面端与 CLI 凭据相互独立

界面

凭据路径

权限来源

Digital Design Studio 2.0.2 Windows

通过浏览器登录以使用受保护的本地功能;编辑和保存亦可在未登录的情况下工作

No My PC device licence. Free 登录支持已说明的本地功能;Cloud 和 AI 检查单独权限。

alti ide cloud

浏览器 PKCE 与私有 CLI 会话

服务端检查账户身份及组织/项目权限

客户操作/作业客户端

ALTI_TOKEN 和 ALTI_ORG_ID

向所选 API 提供的凭据及范围

alti ide service

已配置的服务源地址及 ALTI_STUDIO_SERVICE_SECRET

旧版服务现有的授权契约

任何 CLI 会话都不会授予桌面许可证。请勿将桌面会话文件、浏览器 cookie 或内部服务请求头导入原生 Cloud 请求。

原生 Cloud 登录

Bash
alti ide cloud login
alti ide cloud whoami
alti ide cloud refresh
alti ide cloud logout

登录会输出浏览器 PKCE 流程的授权 URL。默认使用 https://api.altifigence.com,私有会话目录为 ~/.local/state/altifigence/cloud-cli。使用 --session-dir 选择其他会话时,请始终保持一致。登录也接受 --org 和有界的 --wait-seconds;后续命令使用各自的请求截止时间。

使用 whoami 获取服务端身份,不要根据已存储令牌推断身份。刷新和登出操作作用于此原生会话。Cloud 搜索和终端命令中的组织/项目 ID 限定请求范围,但无法授予访问权限。类型化的 ide cloud run 操作保留服务端权限检查,并在契约携带上传源码时要求 --allow-source-upload。

CLI 通过明确的原生 API 路由连接。登录流程不保证每个组织都已启用所有 Cloud 操作。

CLI 读取的环境变量

旧版客户操作及 Cloud 作业客户端保留以下设置:

变量

作用

ALTI_TOKEN

必需的 bearer 凭据;缺失或空白值被拒绝

ALTI_ORG_ID

必需的组织范围

ALTI_API_BASE

API 基地址,默认 https://api.altifigence.com

ALTI_BYO

1,true,或 yes 选择自带身份主体类型

ALTI_ALLOW_SOURCE_UPLOAD

明确同意携带源码的客户 MCP 操作;未提供则拒绝

仅将端点覆盖设置为你控制的服务,或明确为账户提供的端点。更改源地址可能将对应凭据发送到其他宿主。

旧版 DDS HTTP 命令则使用 --endpoint 或 ALTI_STUDIO_ENDPOINT 及已有服务密钥环境设置。它们不复用原生 Cloud 登录,也不会为该服务虚构认证流程。

配置状态不是身份验证

alti auth status 仅检查旧版环境配置。其 serverVerification 仍为 not_performed;它不等同于 alti ide cloud whoami。

旧版顶层 alti login 和 alti whoami 仍以退出码 4 退出,并报告 AUTH_FLOW_UNAVAILABLE 和 IDENTITY_NOT_VERIFIED。顶层 alti logout 无法清除从父进程继承的值。请在来源处清除或轮换这些值;原生会话请使用 ide cloud logout。

密钥处理

  • 将 CI 凭据保存在 CI 密钥存储中,仅注入需要它们的步骤。

  • 会话目录仅供所有者私有使用;请勿加入源码控制、跨用户共享缓存或公开工件。

  • 请勿记录令牌、服务密钥、浏览器 cookie 或完整环境。

  • 执行带凭据的命令时禁用 shell 跟踪,并轮换任何可能进入日志的值。

远程 API 访问

针对所选后端,请使用类型化的 作业与 Cloud 命令。客户端验证和成功登录不能替代服务端权限,也不能证明所请求的作业已完成。

验证并恢复原生会话

Bash
alti ide cloud login
alti ide cloud whoami

请使用之后实际运行 CLI 的同一普通 Linux 用户执行这些命令。完成浏览器流程,并在工作区操作前要求 whoami 成功响应。如果使用替代的 --session-dir,登录及后续调用都应使用它;不同目录意味着不同的已保存会话。

会话过期时,使用原生刷新/登录流程。身份验证成功但项目访问被拒绝时,请检查组织成员身份及项目权限。请勿从桌面端复制凭据,或通过修改 API 源地址规避拒绝。账户恢复请使用 账户安全。