

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 使用 管理秘密 AWS Secrets Manager
<a name="managing-secrets"></a>

**Topics**
+ [更新秘密值](manage_update-secret-value.md)
+ [

# 使用 Secrets Manager 產生密碼
](generate-password.md)
+ [

# 將秘密復原至先前的版本
](roll-back-secret.md)
+ [變更秘密的加密金鑰](manage_update-encryption-key.md)
+ [修改秘密](manage_update-secret.md)
+ [查找秘密](manage_search-secret.md)
+ [刪除秘密](manage_delete-secret.md)
+ [還原秘密](manage_restore-secret.md)
+ [標籤 秘密](managing-secrets_tagging.md)

# 更新 AWS Secrets Manager 秘密的值
<a name="manage_update-secret-value"></a>



若要更新秘密的值，您可以使用主控台、CLI 或軟體開發套件。在更新秘密值時，Secrets Manager 會使用預備標籤 `AWSCURRENT` 建立新的秘密版本。您仍然可以存取具有標籤 `AWSPREVIOUS` 的舊版本。您還可以新增自己的標籤。如需詳細資訊，請參閱 [Secrets Manager 版本控制](whats-in-a-secret.md#term_version)。

**若要更秘密值 (主控台)**

1. 於 [https://console.aws.amazon.com/secretsmanager/](https://console.aws.amazon.com/secretsmanager/) 開啟 Secrets Manager 主控台。

1. 從秘密清單中選擇秘密。

1. 在秘密詳細資訊頁面的**概觀**分頁上，在**秘密值**區段中，選擇**擷取秘密值**，然後選擇**編輯**。

## AWS CLI
<a name="manage_update-secret-value_CLI"></a>

**若要更新秘密值 (AWS CLI)**
+ 在命令 shell 中輸入命令時，存在命令歷史記錄被存取或公用程式存取命令參數的風險。請參閱 [降低使用 AWS CLI 存放 AWS Secrets Manager 秘密的風險](security_cli-exposure-risks.md)。

  下列 [https://docs.aws.amazon.com//cli/latest/reference/secretsmanager/put-secret-value.html](https://docs.aws.amazon.com//cli/latest/reference/secretsmanager/put-secret-value.html) 會建立具有兩個金鑰值對之新版本的機密。

  ```
  aws secretsmanager put-secret-value \
        --secret-id MyTestSecret \
        --secret-string "{\"user\":\"diegor\",\"password\":\"EXAMPLE-PASSWORD\"}"
  ```

  以下 [https://docs.aws.amazon.com//cli/latest/reference/secretsmanager/put-secret-value.html](https://docs.aws.amazon.com//cli/latest/reference/secretsmanager/put-secret-value.html) 會建立具有自訂預備標籤的新版本。新版本將具有標籤 `MyLabel` 和 `AWSCURRENT`。

  ```
  aws secretsmanager put-secret-value \
        --secret-id MyTestSecret \
        --secret-string "{\"user\":\"diegor\",\"password\":\"EXAMPLE-PASSWORD\"}"
        --version-stages "MyLabel"
  ```

## AWS 開發套件
<a name="manage_update-secret-value_SDK"></a>

建議您避免以超過每 10 分鐘一次的持續速率呼叫 `PutSecretValue` 或 `UpdateSecret`。在呼叫 `PutSecretValue` 和 `UpdateSecret` 更新機密值時，機密管理員會建立機密的新版本。當版本超過 100 個時，Secrets Manager 會移除未標記的版本，但不會移除建立時間不到 24 小時的版本。如果以超過每 10 分鐘一次的速率更新機密值，您建立的版本比機密管理員移除的版本更多，且您將達到機密版本的配額。

若要更新秘密值，請使用以下動作：[https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_UpdateSecret.html](https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_UpdateSecret.html) 或 [https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_PutSecretValue.html](https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_PutSecretValue.html)。如需詳細資訊，請參閱[AWS SDKs](asm_access.md#asm-sdks)。

# 使用 Secrets Manager 產生密碼
<a name="generate-password"></a>

使用 Secrets Manager 的常見模式是在 Secrets Manager 中產生密碼，然後在資料庫或服務中使用該密碼。您可以使用下列方式執行這項操作：
+ CloudFormation – 請參閱 [在 中建立 AWS Secrets Manager 秘密 AWS CloudFormation](cloudformation.md)。
+ AWS CLI – 請參閱 [https://docs.aws.amazon.com/cli/latest/reference/secretsmanager/get-random-password.html](https://docs.aws.amazon.com/cli/latest/reference/secretsmanager/get-random-password.html)。
+ AWS SDKs – 請參閱 [https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_GetRandomPassword.html](https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_GetRandomPassword.html)。

# 將秘密復原至先前的版本
<a name="roll-back-secret"></a>

您可以使用 移動連接至秘密版本的標籤，將秘密還原至先前的版本 AWS CLI。如需 Secrets Manager 如何存放秘密版本的資訊，請參閱 [秘密版本](whats-in-a-secret.md#term_version)。

下列[https://docs.aws.amazon.com/cli/latest/reference/secretsmanager/update-secret-version-stage.html](https://docs.aws.amazon.com/cli/latest/reference/secretsmanager/update-secret-version-stage.html)範例會將 AWSCURRENT 預備標籤移至舊版的秘密，將秘密還原至舊版。若要尋找舊版的 ID，請使用 [https://docs.aws.amazon.com/cli/latest/reference/secretsmanager/list-secret-version-ids.html](https://docs.aws.amazon.com/cli/latest/reference/secretsmanager/list-secret-version-ids.html)或檢視 Secrets Manager 主控台中的版本。

在此範例中，具有 AWSCURRENT 標籤的版本為 a1b2c3d4-5678-90ab-cdef-EXAMPLE111111，具有 AWSPREVIOUS 標籤的版本為 a1b2c3d4-5678-90ab-cdef-EXAMPLE22222。在此範例中，您將 AWSCURRENT 標籤從 11111 版移至 22222。由於 AWSCURRENT 標籤已從版本中移除， `update-secret-version-stage`會自動將 AWSPREVIOUS 標籤移至該版本 (11111)。效果是交換 AWSCURRENT 和 AWSPREVIOUS 版本。

```
aws secretsmanager update-secret-version-stage \
  --secret-id MyTestSecret \
  --version-stage AWSCURRENT \
  --move-to-version-id a1b2c3d4-5678-90ab-cdef-EXAMPLE22222 \
  --remove-from-version-id a1b2c3d4-5678-90ab-cdef-EXAMPLE11111
```

# 變更 AWS Secrets Manager 秘密的加密金鑰
<a name="manage_update-encryption-key"></a>

Secrets Manager 使用[信封加密](security-encryption.md)搭配 AWS KMS 金鑰和資料金鑰來保護每個秘密值。對於每個秘密，您可以選擇要使用的 KMS 金鑰。您可以使用 AWS 受管金鑰 **aws/secretsmanager**，也可以使用客戶受管金鑰。在大多數情況下，我們建議使用 **aws/secretsmanager**，而且使用它無需付費。如果您需要從另一個 存取秘密 AWS 帳戶，或者如果您想要使用自己的 KMS 金鑰來輪換它或套用金鑰政策，請使用 客戶受管金鑰。您必須擁有[KMS 金鑰的許可](security-encryption.md#security-encryption-authz)。如需有關使用客戶受管金鑰的成本的資訊，請參閱 [定價](intro.md#asm_pricing)。

您可以變更秘密的加密金鑰。例如，如果您想要[從另一個帳戶存取秘密](auth-and-access_examples_cross.md)，而且秘密目前使用 AWS 受管金鑰 加密`aws/secretsmanager`，您可以切換到 客戶受管金鑰。

**提示**  
如果您想要輪換 客戶受管金鑰，建議您使用 AWS KMS 自動金鑰輪換。如需詳細資訊，請參閱[輪換 AWS KMS 金鑰](https://docs.aws.amazon.com/kms/latest/developerguide/rotate-keys.html)。

當您變更加密金鑰時，Secrets Manager 會使用新金鑰重新加密 `AWSPENDING`、 `AWSCURRENT`和 `AWSPREVIOUS`版本。為了避免將您鎖定在秘密之外，Secrets Manager 會保留所有使用上一個金鑰加密的現有版本。這表示您可以使用先前的金鑰或新的金鑰來解密 `AWSCURRENT``AWSPENDING`、 和 `AWSPREVIOUS`版本。如果您沒有前一個金鑰的`kms:Decrypt`許可，當您變更加密金鑰時，Secrets Manager 無法解密秘密版本以重新加密它們。在此情況下，現有的版本不會重新加密。

若要讓它`AWSCURRENT`只能由新的加密金鑰解密，請使用新金鑰建立新的秘密版本。然後，若要能夠解密`AWSCURRENT`秘密版本，您必須擁有新金鑰的許可。

如果停用先前的加密金鑰，則除了 `AWSCURRENT`、`AWSPENDING` 和 `AWSPREVIOUS` 之外，您將無法解密任何秘密版本。如果您有其他要保留存取的標記秘密版本，則需要使用 [AWS CLI](#manage_update-encryption-key_CLI)，以新的加密金鑰重新建立這些版本。

**若要變更秘密的加密金鑰 (主控台)**

1. 於 [https://console.aws.amazon.com/secretsmanager/](https://console.aws.amazon.com/secretsmanager/) 開啟 Secrets Manager 主控台。

1. 從秘密清單中選擇秘密。

1. 在秘密詳細資訊頁面上，在**秘密詳細資訊**區段中，選擇**動作**，然後選擇**編輯加密金鑰**。

## AWS CLI
<a name="manage_update-encryption-key_CLI"></a>

如果您變更秘密的加密金鑰，然後停用先前的加密金鑰，則除了 `AWSCURRENT`、`AWSPENDING` 和 `AWSPREVIOUS` 之外，您將無法解密任何秘密版本。如果您有其他要保留存取的標記秘密版本，則需要使用 [AWS CLI](#manage_update-encryption-key_CLI)，以新的加密金鑰重新建立這些版本。

**若要變更秘密的加密金鑰 (AWS CLI)**

1. 下列 [https://docs.aws.amazon.com//cli/latest/reference/secretsmanager/update-secret.html](https://docs.aws.amazon.com//cli/latest/reference/secretsmanager/update-secret.html) 範例會更新用於加密機密值的 KMS 金鑰。KMS 金鑰必須位於與機密相同的區域。

   ```
   aws secretsmanager update-secret \
         --secret-id MyTestSecret \
         --kms-key-id arn:aws:kms:us-west-2:123456789012:key/EXAMPLE1-90ab-cdef-fedc-ba987EXAMPLE
   ```

1. (選擇性) 如果您有具有自訂標籤的秘密版本，若要使用新金鑰重新加密，則您必須重新建立這些版本。

   在命令 shell 中輸入命令時，存在命令歷史記錄被存取或公用程式存取命令參數的風險。請參閱 [降低使用 AWS CLI 存放 AWS Secrets Manager 秘密的風險](security_cli-exposure-risks.md)。

   1. 取得秘密版本的值。

      ```
      aws secretsmanager get-secret-value \
            --secret-id MyTestSecret \
            --version-stage MyCustomLabel
      ```

      記下秘密值。

   1. 使用該值建立新版本。

      ```
      aws secretsmanager put-secret-value \
          --secret-id testDescriptionUpdate \
          --secret-string "SecretValue" \
          --version-stages "MyCustomLabel"
      ```

# 修改 AWS Secrets Manager 秘密
<a name="manage_update-secret"></a>

您可以在建立秘密後修改中繼資料，具體取決於建立秘密的人員。對於由其他服務建立的秘密，您可能需要使用其他服務來更新或輪換它。

若要決定管理秘密的人員，您可以檢閱秘密名稱。由其他服務管理的秘密以該服務的 ID 為字首。或者，在 中 AWS CLI呼叫 [describe-secret](https://docs.aws.amazon.com/cli/latest/reference/secretsmanager/describe-secret.html)，然後檢閱 欄位 `OwningService`。如需詳細資訊，請參閱[AWS Secrets Manager 由其他 AWS 服務管理的秘密](service-linked-secrets.md)。

對於您管理的秘密，您可以修改說明、資源型政策、加密金鑰和標籤。雖然我們建議您使用輪換來更新含有憑證的秘密值，但您也可以變更加密的秘密值。輪換會同時更新 Secrets Manager 中的秘密以及資料庫或服務上的憑證。這可讓秘密自動同步，以便在用戶端請求秘密值時，隨時都能擷取運作中的一組憑證。如需詳細資訊，請參閱[輪換 AWS Secrets Manager 秘密](rotating-secrets.md)。

修改機密時，Secrets Manager 會產生 CloudTrail 日誌項目。如需詳細資訊，請參閱[使用 記錄 AWS Secrets Manager 事件 AWS CloudTrail](monitoring-cloudtrail.md)。

**若要更新您管理的秘密 (主控台)**

1. 於 [https://console.aws.amazon.com/secretsmanager/](https://console.aws.amazon.com/secretsmanager/) 開啟 Secrets Manager 主控台。

1. 從秘密清單中選擇秘密。

1. 在秘密詳細資訊頁面上，執行下列動作：

   **請注意**，您無法變更秘密的名稱或 ARN。
   + 若要更新描述，請在 **Secrets details** (秘密詳細資訊) 區段，選擇 **Actions** (動作)，然後選擇 **Edit description** (編輯描述)。
   + 若要更新加密金鑰，請參閱 [變更 AWS Secrets Manager 秘密的加密金鑰](manage_update-encryption-key.md)。
   + 若要更新標籤，在**標籤**分頁上，選擇**編輯標籤**。請參閱 [在 中標記秘密 AWS Secrets Manager](managing-secrets_tagging.md)。
   + 若要更新秘密值，請參閱 [更新 AWS Secrets Manager 秘密的值](manage_update-secret-value.md)。
   + 若要更新密秘的許可，在**概觀**分頁上，選擇**編輯許可**。請參閱 [資源型政策](auth-and-access_resource-policies.md)。
   + 若要更新機密的輪換，在**輪換**分頁上，選擇**編輯輪換**。請參閱 [輪換 AWS Secrets Manager 秘密](rotating-secrets.md)。
   + 若要將您的秘密複寫到其他區域，請參閱[多區域複寫](replicate-secrets.md)。
   + 如果您的秘密有複本，您可以變更複本的加密金鑰。在**複寫**分頁上，選取複本的選項按鈕，然後在**動作**選單中，選擇**編輯加密金鑰** 。請參閱 [中的秘密加密和解密 AWS Secrets Manager](security-encryption.md)。
   + 若要變更機密，使其由其他服務管理，您需要在該服務中重新建立機密。請參閱 [由其他服務管理的秘密](service-linked-secrets.md)。

## AWS CLI
<a name="manage_update-secret_CLI"></a>

**Example 更新機密描述**  
下列 [https://docs.aws.amazon.com//cli/latest/reference/secretsmanager/update-secret.html](https://docs.aws.amazon.com//cli/latest/reference/secretsmanager/update-secret.html) 範例會更新機密的描述。  

```
aws secretsmanager update-secret \
    --secret-id MyTestSecret \
    --description "This is a new description for the secret."
```

## AWS 開發套件
<a name="manage_update-secret_SDK"></a>

建議您避免以超過每 10 分鐘一次的持續速率呼叫 `PutSecretValue` 或 `UpdateSecret`。在呼叫 `PutSecretValue` 和 `UpdateSecret` 更新機密值時，機密管理員會建立機密的新版本。當版本超過 100 個時，Secrets Manager 會移除未標記的版本，但不會移除建立時間不到 24 小時的版本。如果以超過每 10 分鐘一次的速率更新機密值，您建立的版本比機密管理員移除的版本更多，且您將達到機密版本的配額。

若要更新秘密，請使用以下動作：[https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_UpdateSecret.html](https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_UpdateSecret.html) 或 [https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_ReplicateSecretToRegions.html](https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_ReplicateSecretToRegions.html)。如需詳細資訊，請參閱[AWS SDKs](asm_access.md#asm-sdks)。

# 在 中尋找秘密 AWS Secrets Manager
<a name="manage_search-secret"></a>

當您在不使用篩選條件的情況下搜尋秘密時，Secrets Manager 會比對秘密名稱、描述、標籤金鑰和標籤值中的關鍵字。不使用篩選條件進行搜尋並不區分大小寫，而且會忽略特殊字元，例如空格、/、\$1、=、\$1，而且只使用數字和字母。在沒有篩選條件的情況下進行搜尋時，Secrets Manager 會分析搜尋字串以將其轉換為單獨的單詞。單詞透過從大寫到小寫、從字母到數字，或從數字/字母到標點符號的任何變化來分隔。例如，輸入搜尋詞 `credsDatabase#892` 以在名稱、描述、標籤索引鍵和值中搜尋`creds`、`Database` 和 `892`。

列出機密時，Secrets Manager 會產生 CloudTrail 日誌項目。如需詳細資訊，請參閱[使用 記錄 AWS Secrets Manager 事件 AWS CloudTrail](monitoring-cloudtrail.md)。

Secrets Manager 是一項區域服務，僅傳回所選區域中的秘密。

## 搜尋篩選條件
<a name="manage_search-secret-filters"></a>

如果您不使用任何篩選條件，Secrets Manager 會將搜尋字串分成單字，然後搜尋相符項目的所有屬性。此搜尋不區分大小寫。例如，搜尋 會將秘密與名稱、描述或標籤中的 **my** 或 **secret** 一詞**My\$1Secret**相符。

您可以將下列篩選條件套用至您的搜尋：

**名稱**  
比對秘密名稱的開頭；區分大小寫。例如：**Name:** **Data** 會傳回名為 `DatabaseSecret` 的秘密，而不是 `databaseSecret` 或者 `MyData`。

**Description**  
比對秘密描述中的字詞，不區分大小寫。例如：**Description**: **My Description** 會將秘密與下列說明進行比對：  
+ `My Description`
+ `my description`
+ `My basic description`
+ `Description of my secret`

**管理者**  
尋找由 外部 服務管理的秘密 AWS，例如：  
+ 1Password
+ 無金鑰
+ CyberArk
+ HashiCorp

**擁有服務**  
比對管理服務 ID 前綴的開頭，不區分大小寫。例如，**my-ser** 使用前綴 `my-serv` 和 `my-service` 比對由服務管理的機密。如需詳細資訊，請參閱[由其他服務管理的秘密](service-linked-secrets.md)。

**已複寫的秘密**  
您可以篩選主要秘密、複本秘密或未複寫的秘密。

**標籤金鑰**  
比對標籤金鑰的開頭；區分大小寫。例如：**Tag key:** **Prod** 返回帶有標籤 `Production` 和 `Prod1` 的秘密，而不是帶有標籤 `prod` 或者 `1 Prod` 的秘密。

**標籤值**  
比對標籤值的開頭；區分大小寫。例如：**Tag value:** **Prod** 返回帶有標籤 `Production` 和 `Prod1` 的秘密，而不是帶有標籤值 `prod` 或者 `1 Prod` 的秘密。

## AWS CLI
<a name="manage_search-secret_cli"></a>

**Example 列出帳戶中的機密**  
下列 [https://docs.aws.amazon.com//cli/latest/reference/secretsmanager/list-secrets.html](https://docs.aws.amazon.com//cli/latest/reference/secretsmanager/list-secrets.html) 範例會取得您帳戶中的機密清單。  

```
aws secretsmanager list-secrets
```

**Example 篩選帳戶中的機密清單**  
下列 [https://docs.aws.amazon.com//cli/latest/reference/secretsmanager/list-secrets.html](https://docs.aws.amazon.com//cli/latest/reference/secretsmanager/list-secrets.html) 範例會取得您帳戶中名稱包含 **Test** 的機密清單。依名稱篩選區分大小寫。  

```
aws secretsmanager list-secrets \
    --filters Key="name",Values="Test"
```

**Example 尋找由其他 AWS 服務管理的秘密**  
下列 [https://docs.aws.amazon.com//cli/latest/reference/secretsmanager/list-secrets.html](https://docs.aws.amazon.com//cli/latest/reference/secretsmanager/list-secrets.html) 範例會取得由服務管理的秘密清單。您可以依 ID 指定服務。如需詳細資訊，請參閱[由其他服務管理的秘密](service-linked-secrets.md)。  

```
aws secretsmanager list-secrets \
    --filters Key="owning-service",Values="<service ID prefix>"
```

## AWS 開發套件
<a name="manage_search-secret_sdk"></a>

若要使用其中一個 AWS SDKs 尋找秘密，請使用 [https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_ListSecrets.html](https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_ListSecrets.html)。如需詳細資訊，請參閱[AWS SDKs](asm_access.md#asm-sdks)。



# 刪除 AWS Secrets Manager 秘密
<a name="manage_delete-secret"></a>

由於秘密的關鍵性質， AWS Secrets Manager 刻意讓刪除秘密變得困難。Secrets Manager 不會立即刪除秘密。反之，Secrets Manager 會立即使秘密無法存取，並排定在最少七天的復原時段後刪除。在復原時段結束之前，您都可以恢復之前刪除的秘密。不會針對您已標示為刪除的秘密收取任何費用。

如果主要秘密複寫到其他區域，則無法刪除它。先刪除複本，然後再刪除主要秘密。當您刪除複本時，會立即刪除它。

您無法直接刪除某個版本的秘密。反之，您可以使用 AWS CLI 或 AWS SDK 從版本中移除所有預備標籤。這會將版本標示為已棄用，然後 Secrets Manager 可在背景自動刪除該版本。

如果您不知道應用程式是否仍在使用秘密，則可以建立 Amazon CloudWatch 警示，來提醒您任何在復原時段期間嘗試存取秘密的情況。如需詳細資訊，請參閱 [監控何時存取排程刪除的 AWS Secrets Manager 秘密](monitoring_cloudwatch_deleted-secrets.md)。

若要刪除秘密，您必須擁有 `secretsmanager:ListSecrets` 和 `secretsmanager:DeleteSecret` 許可。

刪除機密時，Secrets Manager 會產生 CloudTrail 日誌項目。如需詳細資訊，請參閱[使用 記錄 AWS Secrets Manager 事件 AWS CloudTrail](monitoring-cloudtrail.md)。

**若要刪除秘密 (主控台)**

1. 前往以下位置開啟 Secrets Manager 主控台：[https://console.aws.amazon.com/secretsmanager/](https://console.aws.amazon.com/secretsmanager/)。

1. 在秘密清單中，選擇您要刪除的秘密。

1. 在 **Secrets details** (秘密詳細資訊) 區段，選擇 **Actions** (動作)，然後選擇 **Delete description** (刪除描述)。

1. 在 **Disable secret and schedule deletion** (停用秘密和排程刪除) 對話方塊中，於 **Waiting period** (等待期) 下，輸入永久刪除前要等待的天數。Secrets Manager 會連接稱為 `DeletionDate` 的欄位，並將欄位設為目前的日期和時間，加上復原時段的指定天數。

1. 選擇 **Schedule deletion** (排定刪除)。

**若要檢視已刪除的秘密**

1. 前往以下位置開啟機密管理員控制台：[https://console.aws.amazon.com/secretsmanager/](https://console.aws.amazon.com/secretsmanager/)。

1. 在 **Secrets** (秘密) 頁面上，選擇 **Preferences** (偏好設定) (![\[Gear icon representing settings or configuration options.\]](http://docs.aws.amazon.com/zh_tw/secretsmanager/latest/userguide/images/preferences-gear.png))。

1. 在「偏好設定」對話方塊中，選取**顯示排程刪除的機密**，然後選擇**儲存**。

**若要刪除複本秘密**

1. 前往以下位置開啟機密管理員控制台：[https://console.aws.amazon.com/secretsmanager/](https://console.aws.amazon.com/secretsmanager/)。

1. 選擇主要秘密。

1. 在 **Replicate Secret** (複寫秘密) 區段中，選擇複本秘密。

1. 從 **Actions** (動作) 選單中，選擇 **Delete Replica** (刪除複本)。

## AWS CLI
<a name="manage_delete-secret_cli"></a>

**Example 刪除秘密**  
下列 [https://docs.aws.amazon.com//cli/latest/reference/secretsmanager/delete-secret.html](https://docs.aws.amazon.com//cli/latest/reference/secretsmanager/delete-secret.html) 範例會刪除機密。您可以在 DeletionDate 回應欄位中的日期和時間之前使用 [https://docs.aws.amazon.com//cli/latest/reference/secretsmanager/restore-secret.html](https://docs.aws.amazon.com//cli/latest/reference/secretsmanager/restore-secret.html) 復原機密。若要刪除複寫至其他區域的機密，請先使用 [https://docs.aws.amazon.com//cli/latest/reference/secretsmanager/remove-regions-from-replication.html](https://docs.aws.amazon.com//cli/latest/reference/secretsmanager/remove-regions-from-replication.html) 移除複本，然後呼叫 [https://docs.aws.amazon.com//cli/latest/reference/secretsmanager/delete-secret.html](https://docs.aws.amazon.com//cli/latest/reference/secretsmanager/delete-secret.html)。  

```
aws secretsmanager delete-secret \
    --secret-id MyTestSecret \
    --recovery-window-in-days 7
```

**Example 立即刪除機密**  
下列 [https://docs.aws.amazon.com//cli/latest/reference/secretsmanager/delete-secret.html](https://docs.aws.amazon.com//cli/latest/reference/secretsmanager/delete-secret.html) 範例會在沒有復原時段的情況下立即刪除機密。您無法復原此機密。  

```
aws secretsmanager delete-secret \
    --secret-id MyTestSecret \
    --force-delete-without-recovery
```

**Example 刪除複本秘密**  
下列 [https://docs.aws.amazon.com//cli/latest/reference/secretsmanager/remove-regions-from-replication.html](https://docs.aws.amazon.com//cli/latest/reference/secretsmanager/remove-regions-from-replication.html) 範例會刪除 eu-west-3 中的複本機密。若要刪除複寫至其他區域的主要機密，請先刪除複本，然後呼叫 [https://docs.aws.amazon.com//cli/latest/reference/secretsmanager/delete-secret.html](https://docs.aws.amazon.com//cli/latest/reference/secretsmanager/delete-secret.html)。  

```
aws secretsmanager remove-regions-from-replication \
    --secret-id MyTestSecret \
    --remove-replica-regions eu-west-3
```

## AWS 開發套件
<a name="manage_delete-secret_sdk"></a>

若要刪除秘密，請使用 [https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_DeleteSecret.html](https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_DeleteSecret.html) 命令。若要刪除秘密的某個版本，請使用 [https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_UpdateSecretVersionStage.html](https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_UpdateSecretVersionStage.html) 命令。若要刪除複本，請使用 [https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_StopReplicationToReplica.html](https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_StopReplicationToReplica.html) 命令。如需詳細資訊，請參閱[AWS SDKs](asm_access.md#asm-sdks)。

# 還原 AWS Secrets Manager 秘密
<a name="manage_restore-secret"></a>

Secrets Manager 會將排定刪除的秘密視為*已棄用*且您不再能夠直接存取。復原時段過後，Secrets Manager 會永久刪除秘密。一旦 Secrets Manager 刪除秘密，您就無法將其復原。復原時段結束之前，您可以復原秘密讓它再度成為可存取。這會移除 `DeletionDate` 欄位，因而取消排定的永久刪除。

若要在主控台中還原秘密和中繼資料，您必須擁有 `secretsmanager:ListSecrets` 和 `secretsmanager:RestoreSecret` 許可。

還原機密時，Secrets Manager 會產生 CloudTrail 日誌項目。如需詳細資訊，請參閱[使用 記錄 AWS Secrets Manager 事件 AWS CloudTrail](monitoring-cloudtrail.md)。

**若要還原秘密 (主控台)**

1. 前往以下位置開啟 Secrets Manager 主控台：[https://console.aws.amazon.com/secretsmanager/](https://console.aws.amazon.com/secretsmanager/)。

1. 在秘密清單中，選擇您想要還原的秘密。

   如果秘密清單中沒有出現刪除的秘密，請選擇 **Preferences** (偏好設定) (![\[Gear icon representing settings or configuration options.\]](http://docs.aws.amazon.com/zh_tw/secretsmanager/latest/userguide/images/preferences-gear.png))。在「偏好設定」對話方塊中，選取**顯示排程刪除的機密**，然後選擇**儲存**。

1. 在 **Secret details** (秘密詳細資訊) 頁面中，選擇 **Cancel deletion** (取消刪除)。

1. 在 **Cancel secret deletion** (取消秘密刪除) 對話方塊中，選擇 **Cancel deletion** (取消刪除)。

## AWS CLI
<a name="manage_restore-secret_CLI"></a>

**Example 還原先前刪除的機密**  
下列 [https://docs.aws.amazon.com//cli/latest/reference/secretsmanager/restore-secret.html](https://docs.aws.amazon.com//cli/latest/reference/secretsmanager/restore-secret.html) 範例會還原先前排程刪除的機密。  

```
aws secretsmanager restore-secret \
    --secret-id MyTestSecret
```

## AWS 開發套件
<a name="manage_restore-secret_SDK"></a>

若要還原標記為刪除的秘密，請使用 [https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_RestoreSecret.html](https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_RestoreSecret.html) 命令。如需詳細資訊，請參閱[AWS SDKs](asm_access.md#asm-sdks)。

# 在 中標記秘密 AWS Secrets Manager
<a name="managing-secrets_tagging"></a>

在 中 AWS Secrets Manager，您可以使用標籤將中繼資料指派給秘密。標籤是您為秘密定義的鍵/值對。標籤可協助您管理 AWS 資源和組織資料，包括帳單資訊。

透過標籤，您可以：
+ 管理、搜尋和篩選帳戶中 AWS 的秘密和其他資源
+ 根據連接的標籤控制對秘密的存取
+ 追蹤和分類與特定秘密或專案相關的費用

如需使用標籤控制存取的詳細資訊，請參閱 [使用屬性型存取控制 (ABAC) 控制對秘密的存取](auth-and-access-abac.md)。

若要了解成本分配標籤，請參閱 AWS Billing 《 使用者指南》中的[使用 AWS 成本分配標籤](https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html)。

如需有關標籤配額和命名限制的資訊，請參閱《 *AWS 一般參考指南*》中的[標記的服務配額](https://docs.aws.amazon.com/general/latest/gr/arg.html#taged-reference-quotas)。標籤會區分大小寫。

標記或取消標記機密時，Secrets Manager 會產生 CloudTrail 日誌項目。如需詳細資訊，請參閱[使用 記錄 AWS Secrets Manager 事件 AWS CloudTrail](monitoring-cloudtrail.md)。

**提示**  
在您的所有 AWS 資源中使用一致的標記機制。如需最佳實務，請參閱[標記最佳實務](https://docs.aws.amazon.com/whitepapers/latest/tagging-best-practices/tagging-best-practices.html)白皮書。

## 檢閱標籤基本概念
<a name="tagging-basics"></a>

您可以在 主控台中依標籤尋找秘密 AWS CLI，而 SDKs。 AWS 也提供 [資源群組](https://docs.aws.amazon.com/ARG/latest/userguide/resource-groups.html)工具來建立自訂主控台，以根據其標籤來合併和整理您的資源。若要尋找具有特定標籤的秘密，請參閱 [在 中尋找秘密 AWS Secrets Manager](manage_search-secret.md)。

您可以使用 Secrets Manager 主控台 AWS CLI或 Secrets Manager API 來：
+ 使用標籤建立秘密
+ 將標籤新增至秘密
+ 列出秘密的標籤
+ 從機密移除標籤

您可以使用標籤來分類秘密。例如，您可以依用途、擁有者或環境來分類秘密。由於您定義了每個標籤的鍵和值，您可以建立一組自訂的類別，以符合您的特定需求。以下是數個標籤的範例：
+ `Project: Project name`
+ `Owner: Name`
+ `Purpose: Load testing`
+ `Application: Application name`
+ `Environment: Production`

## 使用標記追蹤成本
<a name="tagging-billing"></a>

您可以使用標籤來分類和追蹤您的 AWS 成本。當您將標籤套用至 AWS 資源時，包括秘密， AWS 成本分配報告會包含依標籤彙總的用量和成本。您可以套用代表業務類別 (例如成本中心、應用程式名稱或擁有者) 的標籤，來整理多個服務中的成本。如需詳細資訊，請參閱《AWS Billing 使用者指南》**中的[將成本分配標籤用於自訂帳單報告](https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html)。

## 了解標籤限制
<a name="tagging-restrictions"></a>

下列限制適用於標籤。

**基本限制**
+ 每個資源 （秘密） 的標籤數目上限為 50。
+ 標籤鍵與值皆區分大小寫。
+ 您無法變更或編輯已刪除秘密的標籤。

**標籤鍵限制**
+ 每個標籤鍵都必須是唯一的。如果您新增具有已使用索引鍵的標籤，則新的標籤會覆寫現有鍵值對。
+ 您無法以 啟動標籤金鑰，`aws:`因為此字首保留給 使用 AWS。 會代表您 AWS 建立以此字首開頭的標籤，但您無法編輯或刪除它們。
+ 標籤鍵的長度必須介於 1 到 128 個 Unicode 字元之間。
+ 標籤鍵必須包含下列字元：Unicode 字母、數字、空格以及下列特殊字元：`_ . / = + - @`。

**標籤值限制**
+ 標籤值的長度必須介於 0 到 255 個 Unicode 字元之間。
+ 標籤值可以空白。否則，它們必須包含下列字元：Unicode 字母、數字、空格以及下列任何特殊字元：`_ . / = + - @`。

## 使用 Secrets Manager 主控台標記秘密
<a name="tagging-console"></a>

您可以使用 [Secrets Manager 主控台](https://console.aws.amazon.com/secretsmanager)來管理秘密的標籤。

若要存取標記功能，請執行下列動作：

1. 開啟 Secrets Manager 主控台。

1. 在導覽列中，選擇您偏好的區域。

1. 在**秘密**頁面上，選取秘密。

**檢視秘密的標籤**
+ 在**秘密詳細資訊**頁面上，選擇**標籤**索引標籤。

**使用標籤建立秘密**
+ 請遵循 [建立秘密](create_secret.md) 中的步驟。

**新增或編輯秘密的標籤**

1. 在**秘密詳細資訊**頁面上，選擇**標籤**索引標籤，然後選擇**編輯標籤**。

1. 在金鑰欄位中輸入標籤**金鑰**。或者，在值欄位中輸入標籤**值**。

1. 選擇**儲存**。新的或更新的標籤會出現在標籤清單中。
**注意**  
如果未啟用**儲存**按鈕，則標籤索引鍵或值可能不符合標籤限制。如需詳細資訊，請參閱[了解標籤限制](#tagging-restrictions)。

**從秘密中移除標籤**

1. 在**秘密詳細資訊**頁面上，選擇**標籤**索引標籤，然後選擇您要**移除**的標籤旁的移除圖示。

1. 選擇**儲存**以確認移除，或選擇**復原**以取消。

## 使用 標記秘密 AWS CLI
<a name="managing-secrets_tagging-cli"></a>

### AWS CLI 範例
<a name="managing-secrets_taggging-cli-examples"></a>

**Example 將標籤新增至機密**  
下列 [https://docs.aws.amazon.com//cli/latest/reference/secretsmanager/tag-resource.html](https://docs.aws.amazon.com//cli/latest/reference/secretsmanager/tag-resource.html) 範例顯示如何使用速記語法連接標籤。  

```
aws secretsmanager tag-resource \
            --secret-id MyTestSecret \
            --tags Key=FirstTag,Value=FirstValue
```

**Example 將多個標籤新增至機密**  
下列 [https://docs.aws.amazon.com//cli/latest/reference/secretsmanager/tag-resource.html](https://docs.aws.amazon.com//cli/latest/reference/secretsmanager/tag-resource.html) 範例會將兩個金鑰值標籤連接至機密。  

```
aws secretsmanager tag-resource \
            --secret-id MyTestSecret \
            --tags '[{"Key": "FirstTag", "Value": "FirstValue"}, {"Key": "SecondTag", "Value": "SecondValue"}]'
```

**Example 從機密移除標籤**  
下列 [https://docs.aws.amazon.com//cli/latest/reference/secretsmanager/untag-resource.html](https://docs.aws.amazon.com//cli/latest/reference/secretsmanager/untag-resource.html) 範例會從機密中移除兩個標籤。對於每個標籤，金鑰和值都會移除。  

```
aws secretsmanager untag-resource \
            --secret-id MyTestSecret \
            --tag-keys '[ "FirstTag", "SecondTag"]'
```

## 使用 Secrets Manager API 標記秘密
<a name="managing-secrets_tagging-api"></a>

您可以使用 Secrets Manager API 新增、列出和移除標籤。如需範例，請參閱下列文件：
+ [ListSecrets](https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_ListSecrets.html)：使用 `ListSecrets`來檢視套用至秘密的標籤
+ [TagResource](https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_TagResource.html)：將標籤新增至秘密
+ [取消標記](https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_UntagResource.html)：從秘密中移除標籤

## 使用 Secrets Manager AWS SDK 標記秘密
<a name="managing-secrets_tagging-sdk"></a>

若要變更秘密的標籤，請使用下列 API 操作：
+ [ListSecrets](https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_ListSecrets.html)：使用 `ListSecrets`來檢視套用至秘密的標籤
+ [https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_TagResource.html](https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_TagResource.html)：將標籤新增至秘密
+ [https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_UntagResource.html](https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_UntagResource.html)：從秘密中移除標籤

如需使用 SDK 的詳細資訊，請參閱 [AWS SDKs](asm_access.md#asm-sdks)。