
# 授权
码道CLI基于华为云AK/SK实现身份鉴权，提供两种授权模式以灵活适配不同场景。
- **进程级临时授权**：仅在当前终端会话内生效，窗口关闭后自动失效。无需持久化存储密钥，特别适合临时调试或在公共机器上进行测试，安全便捷。
- **系统环境变量永久授权**：将鉴权信息写入系统Shell或Windows环境变量。新开终端或重启设备后依然有效，适合个人本地长期开发使用，避免重复配置。
![](https://support.huaweicloud.com/usermanual-cli/public_sys-resources/note_3.0-zh-cn.png)
如果你的账号未开通任意套餐，授权完成后会自动为你开通**个人体验版**套餐。
 #### 前置准备
1. 你需要参考文档[访问密钥](https://support.huaweicloud.com/usermanual-ca/ca_05_0003.html)，新建访问密钥。
   
   **创建成功后，请单击"立即下载"，保存密钥信息，否则弹窗关闭后将无法再次获取该密钥信息。**
   
   
2. 根据你的操作系统，参考下述章节完成环境变量的配置。 
   其中，Access Key Id和Secret Access Key的值，通过你下载保存的credentials.csv文件中获取。
   
   
 
#### Windows
下面为您介绍在Windows系统中，如何通过进程级配置和系统环境变量配置完成授权操作。
#### 配置进程级变量
通过配置进程级变量，可对当前窗口完成临时授权。
- 如果你使用CMD，请执行下述命令进行配置。
  ```
  set CODEARTS_CLI_AK=Access Key Id
  ```
  ```
  set CODEARTS_CLI_SK=Secret Access Key
  ```
  执行完成后，在当前窗口执行如下命令，检验是否生效。
  ```
  echo %CODEARTS_CLI_AK%
  echo %CODEARTS_CLI_SK%
  ```
  如果显示你刚设置的内容，则配置生效，如果显示"%CODEARTS_CLI_AK%"或者"%CODEARTS_CLI_SK%"，表示配置未生效。
  
- 如果你使用PowerShell，请执行下述命令进行配置。
  ```
  $env:CODEARTS_CLI_AK="Access Key Id"
  ```
  ```
  $env:CODEARTS_CLI_SK="Secret Access Key"
  ```
  执行完成后，你可以执行下述命令验证是否设置成功。无异常回显则表示配置生效。
  ```
  echo $env:CODEARTS_CLI_AK
  ```
  ```
  echo $env:CODEARTS_CLI_SK
  ```
  
 
#### 配置系统环境变量
通过配置系统环境变量，可实现配置永久生效。
1. 打开"系统属性"，单击"高级"页签下的"环境变量"。
2. 修改"用户变量"或者"系统变量"，创建CODEARTS_CLI_AK和CODEARTS_CLI_SK。 
   其中，CODEARTS_CLI_AK的值为"Access Key Id"，CODEARTS_CLI_SK的值为"Secret Access Key"。
   
   
3. 配置完成后，你可进入想要启动的项目，鼠标右键"在终端中打开"，输入"codearts"并回车。 
   进入TUI开发环境，表示永久性配置生效。
   
   
 
#### macOS
下面为你介绍在macOS系统中，如何通过进程级配置和系统环境变量配置完成授权操作。
#### 配置进程级变量
1. 打开终端并执行下述命令，可对当前窗口完成临时授权。 
   ```
   export CODEARTS_CLI_AK="Access Key Id"
   export CODEARTS_CLI_SK="Secret Access Key"
   ```
   
   
2. 执行完成后，在当前窗口执行如下命令，检验是否生效。 
   ```
   echo $CODEARTS_CLI_AK
   echo $CODEARTS_CLI_SK
   ```
   如果输出密钥内容，表示配置生效，如果没有输出或者空行，表示配置没有生效。
   
   
 
#### 配置系统环境变量
1. 把环境变量配置追加写入到"～/.zshrc"文件。 
   ```
   echo 'export CODEARTS_CLI_AK="Access Key Id"' >> ~/.zshrc
   ```
   ```
   echo 'export CODEARTS_CLI_SK="Secret Access Key"' >> ~/.zshrc
   ```
   
   
2. 将两个变量永久保存。 
   ```
   source ~/.zshrc
   ```
   
   
3. 验证配置是否生效。 
   ```
   echo $CODEARTS_CLI_AK
   echo $CODEARTS_CLI_SK
   ```
   如果输出密钥内容，表示配置生效，如果没有输出或者空行，表示配置没有生效。
   
   
 
#### Linux
您可以根据您的需要，选择授权方式：
表1不同授权方式对比 
| 授权方式       | 生效范围         | 生命周期              | 适用Shell                         | 权限要求   | 典型使用场景                   |
|:---|:---|:---|:---|:---|:---|
| 临时进程授权     | 仅当前终端窗口      | 关闭终端立即失效，重启服务器清空  | bash、zsh、sh                     | 普通用户即可 | 临时调试、一次性测试、临时执行脚本，不想留存密钥 |
| Bash用户永久授权 | 当前登录用户，所有新终端 | 永久保存，重启终端或者服务器仍存在 | Linux默认Bash（CentOS、Ubuntu或者麒麟等） | 普通用户即可 | 个人服务器、日常高频使用，本机仅自己操作     |
   
#### 临时进程授权
仅当前终端窗口生效，关闭窗口后配置自动失效，适合一次性调试、临时执行命令，不持久存储密钥。
1. 配置临时环境变量（AK/SK）。 
   在终端中执行以下命令，为当前会话窗口注入临时访问凭证：
   ```
   export CODEARTS_CLI_AK="Access Key Id"
   export CODEARTS_CLI_SK="Secret Access Key"
   ```
   其中，*Access Key Id* 和*Secret Access Key* 请替换为您实际获取的密钥值，获取方式请参考[前置准备]。
   
   
2. 验证授权是否成功。 
   例如，在终端中执行**codearts models**命令，测试权限是否生效。
   - 如果输出类似如下回显信息，表示授权成功。
     ```
     model_id                              model_name
     ------------------------------------------------
     huaweicloud-maas/GLM-5.2                  GLM-5.2
     huaweicloud-maas/glm-5.2-sft-harmony      GLM-5.2-ArkTS-SPARK
     huaweicloud-maas/openpangu-2.0-flash      OpenPangu-2.0-Flash
     huaweicloud-maas/openpangu-2.0-pro        OpenPangu-2.0-Pro
     ```
     
   
   - 如果返回认证失败或错误提示，请执行如下命令，检查配置的AK/SK是否正确。
     ```
     echo $CODEARTS_CLI_AK
     echo $CODEARTS_CLI_SK
     ```
     
   
   
   
   
 
#### Bash用户永久授权
如果当前登录用户需要长期使用，推荐此方式进行永久授权。新开终端、重启服务器配置均保留，无需管理员权限。
1. 将环境变量追加写入Bash配置文件。 
   执行以下命令，将CODEARTS_CLI_AK和CODEARTS_CLI_SK环境变量追加到当前用户的".bashrc"文件中：
   ```
   echo 'export CODEARTS_CLI_AK="Access Key Id"' >> ~/.bashrc
   echo 'export CODEARTS_CLI_SK="Secret Access Key"' >> ~/.bashrc
   ```
   其中，*Access Key Id* 和*Secret Access Key* 请替换为您实际获取的密钥值，获取方式请参考[前置准备]。
   
   
2. 重新加载Bash配置，使添加的环境变量立即生效。 
   ```
   source ~/.bashrc
   ```
   
   
3. 验证授权是否永久生效。 
   关闭当前终端窗口，打开一个新的终端会话，执行**codearts models**命令，测试授权是否生效。
   - 如果回显模型信息，说明永久授权已生效。
     ```
     model_id                              model_name
     ------------------------------------------------
     huaweicloud-maas/GLM-5.2                  GLM-5.2
     huaweicloud-maas/glm-5.2-sft-harmony      GLM-5.2-ArkTS-SPARK
     huaweicloud-maas/openpangu-2.0-flash      OpenPangu-2.0-Flash
     huaweicloud-maas/openpangu-2.0-pro        OpenPangu-2.0-Pro
     ```
     
   
   
   
   - 如果返回认证失败或错误提示，请执行如下命令，检查配置的AK/SK是否正确。
     ```
     echo $CODEARTS_CLI_AK
     echo $CODEARTS_CLI_SK
     ```
     
   
   
   
   
 
