在使用Serverless Devs前,您需要配置Serverless Devs。本文以阿里云密鑰為例,介紹如何使用s config相關命令添加、獲取和刪除密鑰。

前提條件

安裝Serverless Devs

添加密鑰信息

  1. 執行以下命令選擇云廠商。
    s config add
    執行輸出:
    > Alibaba Cloud (alibaba)
      AWS (aws)
      Azure (azure)
      Baidu Cloud (baidu)
      Google Cloud (google)
      Huawei Cloud (huawei)
      Tencent Cloud (tencent)
    (Move up and down to reveal more choices)
  2. 選擇目標云廠商,然后按回車。本文以Alibaba Cloud (alibaba)為例。
  3. 根據交互提示,設置相關密鑰信息。
    Please select a provider: Alibaba Cloud (alibaba)
     Refer to the document for alibaba key:  http://config.devsapp.net/account/alibaba
     AccountID 188077086902****
     AccessKeyID LTAI4G4cwJkK4Rza6xd9****
     AccessKeySecret eCc0GxSpzfq1DVspnqqd6nmYNN****
     Please create alias for key pair. If not, please enter to skip default
    
        Alias: default
        AccountID: 188077086902****
        AccessKeyID: LTAI4G4cwJkK4Rza6xd9****
        AccessKeySecret: eCc0GxSpzfq1DVspnqqd6nmYNN****
    
    Configuration successful
    您可以在函數計算控制臺概覽頁的常用信息區域查看Account ID和AccessKey ID,如下圖所示。fun_config_accesskey
    Serverless Devs同時也支持命令式密鑰添加,例如執行以下命令配置阿里云的密鑰信息:
    s config add --AccessKeyID LTAI4G4cwJkK4Rza6xd9**** --AccessKeySecret  eCc0GxSpzfq1DVspnqqd6nmYNN**** --AccountID 188077086902**** --access ***
    注意 為了方便管理多種密鑰信息,Serverless Devs支持多密鑰管理。您在配置密鑰時,可以為每個密鑰配置別名信息aliasName,即可以在使用時指定某個密鑰實現特定功能,例如:
    • 通過密鑰進行環境劃分,可使用不同的別名綁定不同的賬號,然后將資源部署到不同的賬號下,例如賬號A作為生產,賬號B作為預發。
    • 通過對密鑰進行權限控制,使不同的密鑰擁有不同的權限做不同的工作,例如:
      • 配置別名為website-access密鑰,僅用于部署網站。
      • 配置別名為fc-access密鑰,僅用于部署函數。

獲取密鑰信息

參數說明:
  • -a--access:指定別名名稱。
  • -h--help:顯示幫助信息。
執行以下命令,獲取密鑰信息:
  • 獲取指定別名的密鑰信息。例如-a指定目標別名為default:
    s config get -a default
    輸出示例:
    default:
      AccountID: 188077086902****
      AccessKeyID: LTAI4FoAC3JPPWKPZDVg****
      AccessKeySecret: gwL7FuveTjmHC7xyvvwOxP6ysI****
  • 獲取全部的密鑰信息:
    s config get
    輸出示例:
    default:
      AccountID: 188077086902****
      AccessKeyID: LTAI4G4cwJkK4Rza6xd9****
      AccessKeySecret: eCc0GxSpzfq1DVspnqqd6nmYNN****
    default-1:
      AccountID: 188077086902****
      AccessKeyID: LTAI4FoAC3JPPWKPZDVg****
      AccessKeySecret: gwL7FuveTjmHC7xyvvwOxP6ysI****
說明 您可以執行s config get -h命令獲取該命令下的更多信息。

刪除密鑰信息

參數說明:
  • -a--access:指定別名名稱。
  • -h--help:顯示幫助信息。
執行以下命令,刪除密鑰,-a指定別名。
s config delete -a aliasName