允許 Amazon Macie 中的列表選項和要求 - Amazon Macie

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

允許 Amazon Macie 中的列表選項和要求

在 Amazon Macie 中,您可以使用允許清單來指定當 Macie 檢查 Amazon Simple Storage Service (Amazon S3) 物件是否有敏感資料時,要忽略的文字或文字模式。Macie 為兩種類型的允許清單 (預先定義的文字和規則運算式) 提供選項。

如果您希望 Macie 忽略您認為不敏感的特定字詞、片語和其他類型的字元序列,預先定義的文字清單非常有用。範例包括貴組織的公開代表姓名、特定電話號碼或貴組織用於測試的特定範例資料。如果 Macie 找到符合受管理或自訂資料識別碼準則的文字,而且該文字也符合允許清單中的項目,Macie 就不會在敏感資料發現項目、統計資料和其他類型的結果中報告該文字出現。

如果您希望 Macie 忽略變化或可能發生變化的文本,同時也堅持常見模式,則正則表達式(regex)非常有用。正則表達式指定要忽略的文本模式。範例包括組織的公用電話號碼、組織網域的電子郵件地址,或是組織用於測試的樣本資料。如果 Macie 找到符合受管理或自訂資料識別碼準則的文字,而且該文字也符合允許清單中的規則運算式模式,Macie 就不會在敏感資料發現項目、統計資料和其他類型的結果中報告該文字出現。

除了亞太區域 (大阪) 區域外,您可以 AWS 區域 在 Macie 目前提供的所有區域中建立和使用這兩種類型的允許清單。建立和管理允許清單時,請記住下列選項和需求。另外請注意,不支持郵件地址的允許列表條目和正則表達式模式。

預先定義文字清單的選項和需求

對於這種類型的允許清單,您可以提供以行分隔的純文字檔案,其中列出要忽略的特定字元序列。清單項目通常是您認為不敏感、不太可能變更且不一定遵循特定模式的字詞、片語和其他類型的字元序列。如果您使用這種類型的清單,Amazon Macie 不會報告與清單中項目完全相符的文字出現次數。Macie 會將每個清單項目視為字串常值。

若要使用這種類型的允許清單,請先在文字編輯器中建立清單並將其儲存為純文字檔案。然後將列表上傳到 S3 通用存儲桶。此外,請確定值區和物件的儲存空間和加密設定允許 Macie 擷取和解密清單。然後在 Macie 中創建和配置列表的設置。

在 Macie 中設定設定之後,我們建議您使用一組適用於您帳戶或組織的代表性資料來測試允許清單。若要測試清單,除了通常用於分析資料的受管理資料識別碼和自訂資料識別碼之外,您還可以建立一次性工作,並將工作設定為使用清單。然後,您可以檢視工作的結果,包括敏感資料發現項目、敏感資料探索結果,或兩者兼而有之。如果工作的結果與預期的結果不同,您可以變更並測試清單,直到結果符合您預期的結果為止。

完成設定並測試允許清單之後,您可以建立並設定其他工作以使用該清單,或將其新增至帳戶的自動化敏感資料探索設定。當這些任務開始執行或下一個自動化探索分析週期開始時,Macie 會從 Amazon S3 擷取最新版本的清單,並將其存放在暫存記憶體中。然後,當 Macie 檢查 S3 物件是否存在敏感資料時,會使用此清單的暫存副本。當工作完成執行或分析週期完成時,Macie 會從記憶體中永久刪除其清單複本。該列表不會在 Macie 中持續存在。只有清單的設定會保留在 Macie 中。

重要

由於預先定義的文字清單不會保留在 Macie 中,因此定期檢查允許清單的狀態非常重要。如果 Macie 無法擷取或剖析您設定工作或自動探索要使用的清單,Macie 就不會使用該清單。這可能會產生非預期的結果,例如針對您在清單中指定的文字找到敏感資料。

語法要求

當您建立此類型的允許清單時,請注意清單檔案的下列需求:

  • 清單必須儲存為純文字 (text/plain) 檔案,例如 .txt、.text 或 .plain 檔案。

  • 清單必須使用分行符號來分隔個別項目。例如:

    Akua Mansa John Doe Martha Rivera 425-555-0100 425-555-0101 425-555-0102

    Macie 會將每一行視為清單中的單一不同項目。該文件還可以包含空行以提高可讀性。Macie 會在剖析檔案時跳過空白行。

  • 每個項目可包含 1-90 UTF 至 8 個字元。

  • 每個項目必須完全相符,才能忽略文字。Macie 不支援在項目中使用萬用字元或部分值。Macie 會將每個項目視為字串常值。相符的項目不區分大小寫。

  • 檔案可以包含 1 至 10 萬個項目。

  • 檔案的總儲存空間大小不得超過 35 MB。

儲存需求

在 Amazon S3 中新增和管理允許清單時,請注意下列儲存需求和建議:

  • 區域支援 — 允許清單必須儲存在與您的 Macie 帳戶相 AWS 區域 同的儲存貯體中。如果 Macie 儲存在不同地區,則無法存取允許清單。

  • 值區擁有權 — 允許清單必須儲存在您的 AWS 帳戶. 如果您希望其他帳戶使用相同的允許清單,請考慮建立 Amazon S3 複寫規則,將清單複寫到這些帳戶擁有的儲存貯體。如需複寫 S3 物件的相關資訊,請參閱 Amazon 簡單儲存服務使用者指南中的複寫物件

    此外,您的 AWS Identity and Access Management (IAM) 身分必須具有儲存清單的值區和物件的讀取權限。否則,您將無法建立或更新清單的設定,或使用 Macie 檢查清單狀態。

  • 儲存類型和類別 — 允許清單必須儲存在一般用途值區中,而非目錄值區中。此外,必須使用下列其中一種儲存類別來存放:低冗餘 (RRS)、S3 Glacier 即時擷取、S3 智慧型分層、S3 單區域 — IA、S3 標準或 S3 標準 — IA。

  • 儲存貯體政策 — 如果您將允許清單儲存在具有限制值區政策的值區中,請確定該政策允許 Macie 擷取清單。若要這麼做,您可以將 Macie 服務連結角色的條件新增至值區政策。如需詳細資訊,請參閱 允許 Macie 存取 S3 儲存貯體和物件

    此外,還要確保該政策允許您的 IAM 身分對存儲桶具有讀取權限。否則,您將無法建立或更新清單的設定,或使用 Macie 檢查清單狀態。

  • 物件路徑 — 如果您在 Amazon S3 中存放多個允許清單,則每個清單的物件路徑必須是唯一的。換句話說,每個允許清單必須單獨存放為其自己的 S3 物件。

  • 版本控制 — 當您將允許清單新增至值區時,我們建議您同時啟用值區的版本控制。然後,您可以使用日期和時間值,將清單的版本與使用清單的敏感資料探索工作和自動化敏感資料探索週期的結果建立關聯。這可以幫助您進行數據隱私和保護審核或調查。

  • 物件鎖定 — 若要防止允許清單在一段時間內或無限期遭到刪除或覆寫,您可以針對儲存清單的值區啟用物件鎖定。啟用此設定並不會阻止 Macie 存取清單。如需此設定的相關資訊,請參閱 Amazon 簡單儲存服務使用者指南中的使用 S3 物件鎖定。

加密/解密要求

如果您在 Amazon S3 中加密允許清單,Macie 服務連結角色的許可政策通常會授予 Macie 解密清單所需的許可。但是,這取決於所使用的加密類型:

  • 如果使用具有 Amazon S3 受管金鑰 (SSE-S3) 的伺服器端加密清單加密,Macie 可以解密清單。您的 Macie 帳戶的服務連結角色會授予 Macie 所需的權限。

  • 如果使用伺服器端加密與 AWS 受管理 AWS KMS key (DSSE-KMS 或 SSE-KMS) 加密清單,Macie 可以解密清單。您的 Macie 帳戶的服務連結角色會授予 Macie 所需的權限。

  • 如果使用伺服器端加密與客戶管理 AWS KMS key (DSSE-KMS 或 SSE-KMS) 加密清單,則只有當您允許 Macie 使用金鑰時,Macie 才能解密清單。若要了解如何操作,請參閱 允許 Macie 使用客戶管理 AWS KMS key

    注意

    您可以使用外部金鑰存放區 AWS KMS key 中管理的客戶來加密清單。但是,與完全在其中管理的密鑰相比,密鑰可能會慢且不太可靠 AWS KMS。如果延遲或可用性問題導致 Macie 無法解密清單,Macie 在分析 S3 物件時不會使用該清單。這可能會產生非預期的結果,例如針對您在清單中指定的文字找到敏感資料。若要降低此風險,請考慮將清單存放在設定為使用金鑰做為 S3 儲存貯體金鑰的 S3 儲存貯體中。

    如需在外部金鑰存放區使用 KMS 金鑰的詳細資訊,請參閱AWS Key Management Service 開發人員指南中的外部金鑰存放區。如需使用 S3 儲存貯體金鑰的相關資訊,請參閱 Amazon 簡單儲存服務使用者指南中的使用 Amazon S3 儲存貯體金鑰降低 SSE-KMS 的成本。

  • 如果使用伺服器端加密使用客戶提供的金鑰 (SSE-C) 或用戶端加密來加密清單,Macie 就無法解密清單。請考慮改用 SSE-S3、DSSE-公司或 SSE-KMS 加密。

如果使用 AWS 受管 KMS 金鑰或客戶受管 KMS 金鑰加密清單,您的 AWS Identity and Access Management (IAM) 身分也必須允許使用金鑰。否則,您將無法建立或更新清單的設定,或使用 Macie 檢查清單狀態。若要瞭解如何檢查或變更 KMS 金鑰的權限,請參閱AWS Key Management Service 開發人員指南 AWS KMS中的金鑰政策

如需 Amazon S3 資料加密選項的詳細資訊,請參閱 Amazon 簡單儲存服務使用者指南中的使用加密保護資料

設計考量和建議

一般而言,Macie 會將允許清單中的每個項目視為字串常值。也就是說,Macie 會忽略與允許列表中完全匹配完全匹配的文本的每個出現。相符的項目不區分大小寫。

但是,Macie 使用這些條目作為更大的數據提取和分析框架的一部分。該框架包括機器學習和模式匹配功能,這些功能會因素維度,例如語法和語法變化,在許多情況下還包括關鍵字鄰近性。此架構也會考量 S3 物件的檔案類型或儲存格式。因此,在新增和管理允許清單中的項目時,請記住下列考量和建議。

準備不同的檔案類型和儲存格式

對於非結構化資料 (例如 Adobe 可攜式文件格式 (.pdf) 檔案中的文字,Macie 會忽略完全符合允許清單中完整項目的文字,包括跨越多行或多頁的文字。

對於結構化資料 (例如 CSV 檔案中的單欄資料或 JSON 檔案中以記錄為基礎的資料),如果所有文字都儲存在單一欄位、儲存格或陣列中,Macie 會忽略完全符合允許清單中完全符合完整項目的文字。此要求不適用於儲存在其他非結構化檔案中的結構化資料,例如 .pdf 檔案中的資料表。

例如,請考慮 CSV 檔案中的下列內容:

Name,Account ID Akua Mansa,111111111111 John Doe,222222222222

如果Akua MansaJohn Doe是允許清單中的項目,Macie 會忽略 CSV 檔案中的這些名稱。每個清單項目的完整文字儲存在單一Name欄位中。

相反地,請考慮包含下列欄和欄位的 CSV 檔案:

First Name,Last Name,Account ID Akua,Mansa,111111111111 John,Doe,222222222222

如果Akua MansaJohn Doe是允許清單中的項目,Macie 不會忽略 CSV 檔案中的這些名稱。CSV 檔案中的欄位都不包含允許清單中項目的完整文字。

包括常見的變化

新增數值資料、適當名詞、字詞和英數字元序列的常見變化項目。例如,如果您加入的名稱或片語在單字之間只包含一個空格,也會加入在字詞之間包含兩個空格的變體。同樣地,新增包含和不包含特殊字元的字詞和片語,並考慮包含常見的語法和語意變化。

例如,對於美國電話號碼 425-555-0100,您可以將下列項目新增至允許清單:

425-555-0100 425.555.0100 (425) 555-0100 +1-425-555-0100

對於日期 2022 年 2 月 1 日在跨國情境中,您可以新增包含英文和法文常用語法變化的項目,包括含有和不包含特殊字元的變體:

February 1, 2022 1 février 2022 1 fevrier 2022 Feb 01, 2022 1 fév 2022 1 fev 2022 02/01/2022 01/02/2022

對於人員的姓名,請包含您不認為敏感的各種形式的名稱項目。例如,包括:名字後面接著姓氏;姓氏後跟名字,名字和姓氏以一個空格分隔;名字和姓氏以兩個空格分隔;以及暱稱。

例如,對於瑪莎·里維拉的名稱,您可以添加:

Martha Rivera Martha Rivera Rivera, Martha Rivera, Martha Rivera Martha Rivera Martha

如果您想要忽略包含許多零件之特定名稱的變體,請建立使用規則運算式的允許清單。例如,對於名稱博士. 瑪莎·利達里維拉, 博士, 你可以使用下面的正則表達式:. ^(Dr. )?Martha\s(Lyda|L\.)?\s?Rivera,?( PhD)?$

允許清單中規則運算式的選項和需求

對於這種類型的允許清單,您可以指定定義要忽略的文字模式的規則運算式 (regex),例如組織的公用電話號碼、組織網域的電子郵件地址,或組織用於測試的樣本資料。正則表達式為您不認為敏感的特定類型數據定義了一種常見模式。如果您使用這種類型的允許清單,Amazon Macie 不會報告完全符合指定模式的文字出現次數。與指定要忽略的預先定義文字的允許清單不同,您可以在 Macie 中建立並儲存正則運算式和所有其他清單設定。

當您建立或更新此類型的允許清單時,您可以在儲存清單之前,使用範例資料測試清單的 regex。我們建議您使用多組範例資料來執行此操作。如果您創建了一個過於通用的正則表達式,Macie 可能會忽略您認為敏感的文本的出現情況。如果正則表達式太具體,Macie 可能不會忽略您不認為敏感的文本的出現次數。為了防止格式錯誤或長時間執行的運算式,Macie 也會根據範例文字集合自動編譯和測試 regex,並通知您需要解決的問題。

對於進一步的測試,我們建議您也使用一組適用於您帳戶或組織的代表性資料來測試清單的正則表達式。若要這麼做,您可以建立一次性工作,並將工作設定為使用清單,以及通常用於分析資料的受管理資料識別碼和自訂資料識別碼。然後,您可以檢視工作的結果,包括敏感資料發現項目、敏感資料探索結果,或兩者兼而有之。如果工作的結果與您所期望的不同,則可以更改並測試正則表達式,直到結果達到您所期望的結果。

設定並測試允許清單之後,您可以建立並設定其他工作以使用該清單,或將其新增至帳戶的自動化敏感資料探索設定。當這些工作執行或 Macie 為您的帳戶執行自動探索時,Macie 會使用最新版本的清單正則運算式來分析資料。

語法支援與建議

允許清單可以指定包含多達 512 個字元的規則運算式 (regex)。Macie 支持 Perl 兼容正則表達式(PCRE)庫提供的正則表達式模式語法的子集。在 PCRE 程式庫所提供的結構中,Macie 不支援下列樣式元素:

  • 反向引用

  • 擷取群組

  • 條件式模式

  • 內嵌程式碼

  • 全域模式旗標/i,例如/m、和 /x

  • 遞歸模式

  • 正面和負向後視和前瞻零寬度斷言,例如,,和 ?= ?! ?<= ?<!

要為允許列表創建有效的正則表達式模式,還請注意以下提示和建議:

  • 錨點 — 只有當您希望模式出現在檔案的開頭^或結尾,而不是行的開頭或結尾時,才使用錨點 (或$)。

  • 有界重複-出於性能原因,Macie 限制了有界重複組的大小。例如,不\d{100,1000}會在 Macie 中編譯。若要近似此功能,您可以使用開放式重複,例如\d{100,}

  • 大小寫不區分大小寫 — 若要使部分模式不區分大小寫,您可以使用(?i)建構來代替旗標/i

  • 效能 — 無需手動最佳化前置字元或替代項目。例如,變更/hello|hi|hey/為不/h(?:ello|i|ey)/會改善效能。

  • 用字元 — 基於效能原因,Macie 會限制重複萬用字元的數目。例如,不a*b*a*會在 Macie 中編譯。

  • 交替 — 若要在單一允許清單中指定多個模式,您可以使用交替運算子 (|) 來連接模式。如果你這樣做,Macie 使用 OR 邏輯來組合模式並形成一個新的模式。例如,如果您指定(apple|orange),Macie 會將果和橘色識別為相符項目,並忽略兩個字詞的出現次數。如果串連模式,請務必將串連運算式的整體長度限制為 512 個或更少的字元。

最後,當您開發正則表達式時,請將其設計為適應不同的文件類型和存儲格式。Macie 使用正則表達式作為更大的數據提取和分析框架的一部分。架構會考量 S3 物件的檔案類型或儲存格式。對於結構化資料 (例如 CSV 檔案中的單欄資料或 JSON 檔案中以記錄為基礎的資料),只有當所有文字都儲存在單一欄位、儲存格或陣列中時,Macie 才會忽略完全符合模式的文字。此要求不適用於儲存在其他非結構化檔案中的結構化資料,例如 Adobe 可攜式文件格式 (.pdf) 檔案中的表格。對於非結構化資料 (例如 .pdf 檔案中的文字),Macie 會忽略完全符合模式的文字,包括跨越多行或多頁的文字。

範例

下列範例會示範一些常見案例的有效正則運算式模式。

電子郵件地址

如果您使用自訂資料識別碼來偵測電子郵件地址,則可以忽略您不認為機密的電子郵件地址,例如組織的電子郵件地址。

若要忽略特定第二層和頂層網域的電子郵件地址,您可以使用下列模式:

[a-zA-Z0-9_.+\\-]+@example\.com

其中示例是第二級域的名稱,而 com 是頂級域名。在這種情況下,馬西匹配並忽略地址,如 johndoe@example.comjohn.doe@example.com

若要忽略任何一般頂層網域 (gTLD) 中特定網域的電子郵件地址,例如 .com.gov,您可以使用下列模式:

[a-zA-Z0-9_.+\\-]+@example\.[a-zA-Z]{2,}

其中示例是域的名稱。在這種情況下,馬西匹配並忽略地址,例如 johndoe@example.comjohn.doe@example.gov。johndoe@example.edu

若要忽略任何一個國家/地區代碼頂級網域 (ccTLD) 中特定網域的電子郵件地址,例如加拿大的 .ca 或澳洲的 .au,您可以使用以下模式:

[a-zA-Z0-9_.+\\-]+@example\.(ca|au)

其中示例是域的名稱,caau 是要忽略的特定 ccTLDs 域名。在這種情況下,馬西匹配並忽略地址,如 johndoe@example.cajohn.doe@example.au

若要忽略特定網域和 gTLD 的電子郵件地址,並包含第三層和第四層網域,您可以使用以下模式:

[a-zA-Z0-9_.+\\-]+@([a-zA-Z0-9-]+\.)?[a-zA-Z0-9-]+\.example\.com

其中,例如域名,com 是 gTLD 名。在這種情況下,馬西匹配並忽略地址,如 johndoe@www.example.comjohn.doe@www.team.example.com

電話號碼

Macie 提供託管數據標識符,可以檢測多個國家和地區的電話號碼。若要忽略某些電話號碼,例如組織的免付費號碼或公用電話號碼,您可以使用下列模式。

若要忽略免付費電話,使用 800 區碼並格式化為 (800) ##-#### 的美國電話號碼:

^\(?800\)?[ -]?\d{3}[ -]?\d{4}$

若要忽略免付費電話,使用 888 區號並格式化為 (888) ##-##### 的美國電話號碼:

^\(?888\)?[ -]?\d{3}[ -]?\d{4}$

若要忽略 10 位數字,包含 33 個國家/地區代碼的法文電話號碼並格式化為 +33 ## ## ## ## ##

^\+33 \d( \d\d){4}$

若要忽略使用特定區域和交換代碼的美國和加拿大電話號碼,請不要包含國碼,並且格式為 (###) ##-####

^\(?123\)?[ -]?555[ -]?\d{4}$

其中 123 是區號,555 是交換代碼。

若要忽略使用特定區域和交換代碼的美國和加拿大電話號碼,請加入國碼,並格式化為 +1 (###) ##-#-###

^\+1\(?123\)?[ -]?555[ -]?\d{4}$

其中 123 是區號,555 是交換代碼。