Skip to main content
Astra Automation
此產品有較新版本可以使用。
本繁體中文版使用機器翻譯,譯文僅供參考,若與英文版本牴觸,應以英文版本為準。

修改認證資料

PUT /accounts/{account_id}/core/v1/credentials/{credential_id}

將整個儲存的資源替換為提供的 JSON 請求主體,同時保留使用者不可修改的鍵值。

參數

Name 類型 必要 說明

account_id

字串

路徑

True

包含帳戶資源的 ID

  • 範例:{{.Account}}

credential_id

字串

路徑

True

要列出的認證資料集合 ID

請求本文

將整個儲存的資源替換為提供的 JSON 請求主體,同時保留使用者不可修改的鍵值。

Name 類型 必要 說明

類型

字串

True

資源的媒體類型。定義的值為:

  • "application/astra-credential"

版本

字串

True

資源版本。定義的值為:

  • "1.0"

  • "1.1"

ID

字串

錯誤

資源的全域唯一識別碼。定義的值為:

  • 符合 UUIDv4 架構

姓名

字串

True

包含使用者指定名稱的 JSON 字串。為使用者建立憑證時,該名稱將設定為該使用者的 UUID。定義的值為:

  • 最短長度:1

  • 最大長度:127

keyType

字串

錯誤

JSON 字串,包含 keyStore 內容的選用使用者指定資料驗證類型描述符。擴充更新限制:

  • 如果資源中不存在 keyType,且在更新時未指定 keyType,則 keyType 不得在更新後的資源中繼續存在。

  • 如果 keyType 在資源中不存在且在更新中被指定,則必須將 keyType 新增至資源並執行驗證。如果驗證失敗,更新將會失敗。

  • 如果資源中存在 keyType 且未在更新中指定,則必須保留 keyType。

  • 如果資源中存在 keyType 並且在更新時有指定,且所指定的 keyType 與現有的 keyType 相符,則必須保留該 keyType。

  • 如果 keyType 在資源中已存在並且在更新中指定,而指定的 keyType 與現有的 keyType 不同,則更新將會失敗。定義的值為:

  • 「generic」- 認證資料是一般資料集合。這相當於不包含 keyType。

  • 擴充驗證的執行方式如下:

  • 必須在 keyStore 中存在一個或多個字串。

  • keyStore 中的每個字串都必須有一個以 base64 編碼的值。

  • "passwordHash" - 憑證是密碼雜湊值。

  • 擴充驗證的執行方式如下:

  • 認證資料名稱必須是唯一的。

  • 憑證名稱必須與有效的使用者資源 ID 相同。

  • 認證資料名稱不得更改。

  • 對應的使用者資源必須具有「authProvider」為「local」。

  • 「cleartext」字串必須存在於 keyStore 中,其值包含經過 base64 編碼的明文密碼:

  • 密碼明文必須符合帳戶的密碼原則。

  • 密碼以雜湊值形式儲存。

  • 字串「change」必須存在於 keyStore 中,其值包含 base64 編碼的字串「true」或「false」。

  • 只有當名稱所指示的使用者 ID 不存在時,才能刪除 passwordHash 類型的憑證。

  • 「apikey」- 認證資料是 API 金鑰。

  • 擴充驗證的執行方式如下:

  • 必須在 keyStore 中存在一個「apikey」字串,其值包含一個 base64 編碼的任意字串。

  • "kubeconfig" - 認證資料是 kubeconfig。

  • 擴充驗證的執行方式如下:

  • 必須存在一個「base64」字串於 keyStore 中,其值包含一個 base64 編碼的 JSON kubeconfig 檔案。

  • kubeconfig 檔案只能描述單一叢集。

  • keyStore 內部不能存在其他欄位。

  • 「 certificate 」-憑證是 PEM 編碼的憑證

  • 擴充驗證的執行方式如下:

  • 「憑證」字串必須存在於 keyStore 中,其值包含 base64 編碼的 PEM 憑證。

  • 「 privkey 」 - 該憑證是 PEM 編碼的私鑰。

  • 擴充驗證的執行方式如下:

  • 「 privkey 」字串必須存在於 keyStore 中,其值包含 base64 編碼的 PEM 私密金鑰。

  • "s3" - 表示憑證用於簡單儲存服務(S3)存取。

  • 擴充驗證的執行方式如下:

  • 「accessKey」字串必須存在於 keyStore 中,其值包含 base64 編碼的 S3 存取金鑰。

  • 「accessSecret」字串必須存在於keyStore中,其值需包含 base64 編碼的 S3 存取密鑰。

keyStore

"keyStore"

True

包含 JSON 字串的 JSON 物件。keyStore 中的每個字串代表憑證的一部分。每個字串的名稱代表憑證的組成部分,對應的鍵值對以 base64 格式儲存該部分憑證的值。定義的值為:

  • 符合 base64 編碼資料架構,字串長度沒有限制。

有效

字串

錯誤

描述憑證是否有效使用的 JSON 字串。如果省略,預設值為 "true"。定義的值為:

  • 「true」- 此認證資料符合使用條件。

  • "false" - 不得使用該憑證。

validFromTimestamp

字串

錯誤

包含時間戳記的 JSON 字串,指示憑證的有效時間。這些用於認證資料輪替。定義的值為:

  • 符合 ISO-8601 日期時間架構

validUntilTimestamp

字串

錯誤

包含時間戳記的 JSON 字串,指示認證資料何時失效。這些用於認證資料輪替。定義的值為:

  • 符合 ISO-8601 日期時間架構

中繼資料

"type_astra_metadata_update"

錯誤

與資源相關聯的用戶端和服務指定中繼資料。定義的值為:

  • 符合 Astra Metadata Schema。如果在建立時未指定、則會建立沒有標籤的中繼資料物件。如果在更新時未指定,元資料物件的標籤、creationTimestamp 和 createdBy 將保持不變。

範例請求
{
  "type": "application/astra-credential",
  "version": "1.1",
  "name": "oldCert",
  "keyStore": {
    "privKey": "SGkh",
    "pubKey": "VGhpcyBpcyBhbiBleGFtcGxlLg=="
  }
}

回應

Status: 204, Indicates if the credential resource was updated.

回應

Status: 403, Forbidden
Name 類型 必要 說明

類型

字串

True

標題

字串

True

詳細資料

字串

True

狀態

字串

True

correlationID

字串

錯誤

範例回應
{
  "type": "https://astra.netapp.io/problems/11",
  "title": "Operation not permitted",
  "detail": "The requested operation isn't permitted.",
  "status": "403"
}

回應

Status: 406, Not acceptable
Name 類型 必要 說明

類型

字串

True

標題

字串

True

詳細資料

字串

True

狀態

字串

True

correlationID

字串

錯誤

範例回應
{
  "type": "https://astra.netapp.io/problems/32",
  "title": "Unsupported content type",
  "detail": "The response can't be returned in the requested format.",
  "status": "406"
}

回應

Status: 500, Internal server error
Name 類型 必要 說明

類型

字串

True

標題

字串

True

詳細資料

字串

True

狀態

字串

True

correlationID

字串

錯誤

範例回應
{
  "type": "https://astra.netapp.io/problems/34",
  "title": "Internal server error",
  "detail": "The server was unable to process this request.",
  "status": "500"
}

回應

Status: 412, Precondition failed
Name 類型 必要 說明

類型

字串

True

標題

字串

True

詳細資料

字串

True

狀態

字串

True

correlationID

字串

錯誤

範例回應
{
  "type": "https://astra.netapp.io/problems/38",
  "title": "Precondition not met",
  "detail": "The conditional headers aren't satisfied.",
  "status": "412"
}

回應

Status: 409, Conflict
Name 類型 必要 說明

類型

字串

True

標題

字串

True

詳細資料

字串

True

狀態

字串

True

correlationID

字串

錯誤

範例回應
{
  "type": "https://astra.netapp.io/problems/39",
  "title": "Credential exists",
  "detail": "A credential of this type already exists.",
  "status": "409"
}

回應

Status: 502, Bad gateway
Name 類型 必要 說明

類型

字串

True

標題

字串

True

詳細資料

字串

True

狀態

字串

True

correlationID

字串

錯誤

範例回應
{
  "type": "https://astra.netapp.io/problems/40",
  "title": "Communication failed",
  "detail": "Communication wasn't made with downstream services.",
  "status": "502"
}

回應

Status: 503, Service unavailable
Name 類型 必要 說明

類型

字串

True

標題

字串

True

詳細資料

字串

True

狀態

字串

True

correlationID

字串

錯誤

範例回應
{
  "type": "https://astra.netapp.io/problems/41",
  "title": "Service not ready",
  "detail": "Currently, the service can't respond to this request.",
  "status": "503"
}

錯誤

Status: 400, Bad request
Name 類型 必要 說明

類型

字串

True

標題

字串

True

詳細資料

字串

True

狀態

字串

True

correlationID

字串

錯誤

invalidParams

陣列["invalidParams"]

錯誤

無效查詢參數清單

範例錯誤回應
{
  "type": "https://astra.netapp.io/problems/7",
  "title": "Invalid JSON payload",
  "detail": "The request body is not valid JSON.",
  "status": "400"
}

定義

請參閱定義

keyStore

包含 JSON 字串的 JSON 物件。keyStore 中的每個字串代表憑證的一部分。每個字串的名稱代表憑證的組成部分,對應的鍵值對以 base64 格式儲存該部分憑證的值。定義的值為:

  • 符合 base64 編碼資料架構,字串長度沒有限制。

將字串對應至字串的雜湊

type_astra_label

Name 類型 必要 說明

姓名

字串

True

字串

True

type_astra_metadata_update

與資源相關聯的用戶端和服務指定中繼資料。定義的值為:

  • 符合 Astra Metadata Schema。如果在建立時未指定、則會建立沒有標籤的中繼資料物件。如果在更新時未指定,元資料物件的標籤、creationTimestamp 和 createdBy 將保持不變。

Name 類型 必要 說明

標籤

陣列["type_astra_label"]

錯誤

建立時間戳記

字串

錯誤

修改時間戳記

字串

錯誤

建立者

字串

錯誤

modifiedBy

字串

錯誤

invalidFields

Name 類型 必要 說明

姓名

字串

True

無效請求內文欄位的名稱

原因

字串

True

請求本文欄位無效的原因

invalidParams

Name 類型 必要 說明

姓名

字串

True

無效查詢參數的名稱

原因

字串

True

查詢參數無效的原因