配置阿里云密钥

获取密钥信息

获取密钥页面:https://usercenter.console.aliyun.com/#/manage/ak

云账号 AccessKey 是您访问阿里云 API 的密钥,具有该账户完全的权限,请您务必妥善保管!不要通过任何方式(e.g. GitHub)将 AccessKey 公开到外部渠道,以避免被他人利用而造成 安全威胁 。 强烈建议您遵循 阿里云安全最佳实践 ,使用 RAM 子用户 AccessKey 来进行 API 调用。

配置密钥

引导式配置

可以通过config add直接进行密钥的添加:

$ s config add

? Please select a provider: (Use arrow keys)
❯ Alibaba Cloud (alibaba)
  AWS (aws)
  Azure (azure)
  Baidu Cloud (baidu)
  Google Cloud (google)
  Huawei Cloud (huawei)
  Tencent Cloud (tencent)
  Custom (others)

当使用者选择某个选项之后,系统会进行交互式引导:

s config add

? Please select a provider: Alibaba Cloud (alibaba)
? AccessKeyID **********
? AccessKeySecret **********
? Please create alias for key pair. If not, please enter to skip default

命令式配置

可以通过命令式直接进行密钥的添加:

s config add --AccessKeyID ****** --AccessKeySecret ******

或:

s config add -kl AccessKeyID,AccessKeySecret -il ${AccessKeyID},${AccessKeySecret}

通过环境变量配置

Serverless Devs 可以比较容易的通过环境变量进行密钥信息的设定。通过环境变量配置密钥的方法有两种:

  • 方法 1:通过命令引入环境变量中的密钥:例如在环境变量中有ALIBABA_CLOUD_ACCOUNT_IDALIBABA_CLOUD_ACCESS_KEY_IDALIBABA_CLOUD_ACCESS_KEY_SECRET等相关内容,此时可以通过s config add命令进行添加:

    s config add -a default-aliyun -kl AccountID,AccessKeyID,AccessKeySecret -il ${ALIBABA_CLOUD_ACCOUNT_ID},${ALIBABA_CLOUD_ACCESS_KEY_ID},${ALIBABA_CLOUD_ACCESS_KEY_SECRET}
    
  • 方法 2:通过指定环境变量的名字进行配置:例如当前有阿里云密钥对:

    • AccountID: temp_accountid
    • AccessKeyID: temp_accesskeyid
    • AccessKeySecret: temp_accesskeysecret 此时可以在环境变量中可以命名 key 为*********_serverless_devs_access,例如default_serverless_devs_access,value 为 JSON 字符串,例如:
    • Key:default_serverless_devs_access
    • Value:{\"AccountID\":\"temp_accountid\",\"AccessKeyID\":\"temp_accesskeyid\",\"AccessKeySecret\":\"temp_accesskeysecret\"} 此时,可以在配置密钥的时候指定密钥default_serverless_devs_access,例如${env(default_serverless_devs_access)}

    s.yaml配置如下:

    edition: 3.0.0          #  命令行YAML规范版本,遵循语义化版本(Semantic Versioning)规范
    name: fc3DeployApp      #  应用名称
    access: default_serverless_devs_access  #  秘钥别名
    
    resources:
      fc3-deploy-test:
        component: fc3  # 组件名称
        props: #  组件的属性值
          region: cn-shenzhen
          functionName: test
          runtime: nodejs16
          ...
    

配置临时密钥

可以通过命令式直接进行密钥的添加:

s config add --AccessKeyID ****** --AccessKeySecret ****** --SecurityToken ******

或者添加自定义内容:

s config add -kl AccessKeyID,AccessKeySecret,SecurityToken -il ${AccessKeyID},${AccessKeySecret},${SecurityToken}
在 GitHub 上编辑本页面 更新时间: Thu, Feb 22, 2024