最佳做法和策略 - 標記 AWS 資源和標籤編輯器

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

最佳做法和策略

這些部分提供有關標記 AWS 資源和使用標籤編輯器時的最佳實踐和策略的資訊。

標記最佳做法

為 AWS 資源建立標記策略時,請遵循最佳做法:

  • 不要在標籤中添加個人身份信息(PII)或其他機密或敏感信息。許多 AWS 服務都可以使用標籤,包括帳單。標籤不適用於私人或敏感資料。

  • 使用標準化、區分大小寫的標籤格式,並統一套用在所有資源類型上。

  • 考慮支援多種用途的標籤準則,例如資源存取控制管理、成本追蹤、自動化和組織。

  • 使用自動化工具來協助管理資源標籤。標籤編輯器和 Resource Groups 標記可API讓您以程式設計方式控制標籤,讓自動管理、搜尋和篩選標籤和資源變得更加容易。

  • 使用太多標籤,還不如使用較少的標籤。

  • 請記住,變更標籤以因應不斷變更的業務需求很容易,但請考量變更後的後果。例如,變更存取控制標籤表示您也必須更新參考這些標籤的政策,以及控制對資源的存取。

  • 您可以使用 AWS Organizations建立和部署標籤政策,自動強制執行組織選擇採用的標記標準。標籤政策可讓您指定標記規則,這些規則可定義有效索引鍵名稱以及每個索引鍵的有效值。您可以選擇只進行監控,讓您有機會評估和清理現有標籤。一旦標籤符合所選標準,您就可以在標籤政策中啟用強制執行功能,以防止建立不合規的標籤。如需詳細資訊,請參閱《AWS Organizations 使用者指南》中的標籤政策

標籤命名最佳做法

這些是我們建議您搭配標籤使用的一些最佳作法和命名慣例。

AWS 標籤的關鍵名稱區分大小寫,因此請確保使用一致。例如,標籤鍵CostCentercostcenter是不同的。一個標籤索引鍵可能會設定為財務分析和報表的成本配置標記,而另一個標籤鍵可能不會設定為相同的用途。

許多標籤由各種預先定義 AWS 或自動創建 AWS 服務。許多AWS 產生的標籤會使用全部小寫的金鑰名稱,以連字號分隔名稱中的文字,以及前綴後跟冒號,以識別標籤的來源服務。例如,請參閱下列內容:

  • aws:ec2spot:fleet-request-id是用來識別啟動執行個體之 Amazon EC2 Spot 執行個體請求的標籤。

  • aws:cloudformation:stack-name是標識創建資源的 AWS CloudFormation 堆棧的標籤。

  • elasticbeanstalk:environment-name是識別建立資源之應用程式的標籤。

請考慮使用下列規則命名標籤:

  • 單詞使用全部小寫。

  • 使用連字號來分隔單字。

  • 使用前綴後跟冒號來識別組織名稱或縮寫名稱。

例如,對於名稱為虛擬的公司 AnyCompany,您可以定義標籤,例如:

  • anycompany:cost-center以識別內部成本中心代碼。

  • anycompany:environment-type識別環境是否為開發、測試或生產環境。

  • anycompany:application-id以識別為其建立資源的應用程式。

前置詞可確保標籤可以清楚地識別由您的組織定義,而不是由您可能正在使用的第三方工具 AWS 或第三方工具所定義。將所有小寫字母和連字號 (作為分隔符號) 搭配使用可避免對如何大寫標籤名稱造成混淆。例如:anycompany:project-idANYCOMPANY:ProjectIDanycompany:projectIDAnycompany:ProjectId 更容易記住。

標籤命名限制和需求

下列基本命名和使用需求適用於標籤:

  • 每個資源最多可以有 50 個使用者建立的標籤。

  • 系統建立以 aws: 開頭的標籤會保留供 AWS 使用,且不會計入此限制。您無法編輯或刪除以 aws: 字首開頭的標籤。

  • 對於每一個資源,每個標籤金鑰必須是唯一的,且每個標籤金鑰只能有一個值。

  • 標籤鍵必須至少為 1,且 UTF -8 中最多 128 個 Unicode 字元。

  • 標籤值必須至少為 0,且 UTF -8 中最多 256 個 Unicode 字元。

  • 允許的字元可能因服 AWS 務而異。如需有關可用來標記特定 AWS 服務中資源的字元的詳細資訊,請參閱其說明文件。通常,允許的字符是字母,數字,UTF-8 中可表示的空格,以及以下字符:_.:/= +-@。

  • 標籤鍵與值皆區分大小寫。做為最佳實務,請決定大寫標籤的策略,並一致地在所有資源類型中實作該策略。例如,決定要使用 Costcentercostcenter 還是 CostCenter,並針對所有標籤使用相同的慣例。避免針對相似的標籤使用不一致的大小寫處理。

通用標記策略

使用下列標記策略來協助識別和管理 AWS 資源。

資源組織的標籤

標籤是組織中 AWS 資源的好方法 AWS Management Console。您可以設定標籤與資源一起顯示,也可以設定依標籤搜尋及篩選。使用此 AWS Resource Groups 服務,您可以根據一或多個標籤或部分標籤來建立 AWS 資源群組。您也可以根據群組在 AWS CloudFormation 堆疊中的複本來建立群組。使用資源群組和標籤編輯器,您可以合併將多項服務、資源和區域集結在一處的應用程式資料,然後進行檢視。

成本配置的標籤

AWS Cost Explorer 和詳細的帳單報告可讓您按標籤劃分 AWS 成本。一般而言,您會使用成本中心/業務單位、客戶專案等商業標籤,將成本與傳統的 AWS 成本配置維度產生關聯。不過,成本分配報告可包含各種標籤。這可讓您建立成本與技術或安全性方面的關聯性,像是特定的應用程式、環境或合規計劃。

對於某些服務,您可以將 AWS產生的createdBy標籤用於成本分配目的,以協助考量可能未分類的資源。createdBy 標籤僅適用於支援的 AWS 服務和資源。其值包含與特定API或主控台事件相關聯的資料。如需詳細資訊,請參閱 AWS Billing and Cost Management 使用者指南中的 AWS產生的成本分配標籤

用於自動化的標籤

特定資源或服務的標籤通常用於在自動化活動期間篩選資源。自動化標籤是用來選擇加入或選擇退出自動化任務,或用以識別要存檔、更新或刪除的特定資源版本。例如,您可以執行自動化的 startstop 指令碼,在非上班時間關閉開發環境以降低成本。在這個案例中,Amazon 彈性運算雲端 (AmazonEC2) 執行個體標籤是識別執行個體以選擇退出此動作的簡單方法。對於尋找和刪除過時或滾動 Amazon EBS 快照的指令碼,快照標籤可以新增額外的搜尋條件維度。 out-of-date

存取控制的標籤

IAM策略支援以標籤為基礎的條件,可讓您根據特定標籤或標籤值來IAM限制權限。例如,IAM使用者或角色權限可以包括根據其標記限制對特定環境 (例如開發、測試或生產環境) 的EC2API呼叫的條件。您可以使用相同的策略來限制對特定 Amazon Virtual Private Cloud (AmazonVPC) 網路的API呼叫。Support 以標籤為基礎的資源層級IAM權限是服務特定的。當您使用標籤型條件控制存取時,請務必定義並限制能修改標籤的人員。如需有關使用標籤來控制 AWS 資源API存取權的詳細資訊,請參閱《使用指南》IAM中的適IAM用AWS 服務

標記管理

有效的標記策略使用標準化標籤,並以程式設計方式在 AWS 資源之間一致地套用 您可以在 AWS 環境中使用被動和主動方法來管理標籤。

  • 反應式控管用於使用 Resource Groups 標API記和自訂指令碼等工具來尋找未正確標記的資源。 AWS Config 規則若要手動尋找資源,您可以使用標籤編輯器和詳細的帳單報告。

  • 主動式控管使用 Service Catalog AWS CloudFormation、中的標籤原則或資IAM源層級權限等工具 AWS Organizations,確保在資源建立時一致地套用標準化標籤。

    例如,您可以使用 AWS CloudFormation Resource Tags屬性將標籤套用至資源類型。在 Service Catalog 中,您可以新增在產品啟動時,自動合併並套用至產品的組合和產品標籤。更嚴格的主動式管理形式包含自動化的任務。例如,您可以使用 Resource Groups 標記API來搜尋 AWS 環境的標籤,或執行指令碼隔離或刪除標記不正確的資源。