槽混淆 - Amazon Lex V1

如果您使用的是 Amazon Lex V2,請改參閱 Amazon Lex V2 指南

 

如果您使用的是 Amazon Lex V1,建議您將機器人升級至 Amazon Lex V2。我們不再將新功能新增至 V1,強烈建議所有新機器人都使用 V2。

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

槽混淆

使用 Amazon Lex,您可以混淆或隱藏槽內容,以便看不見內容。若要保護捕獲為槽值的敏感資料,您可以啟用槽混淆以遮罩對話日誌中的這些值。

當您選擇混淆槽值時,Amazon Lex 會將槽值取代為對話日誌中的槽名稱。對於稱為 full_name 的槽,槽值將被混淆,如下所示:

Before obfuscation: My name is John Stiles After obfuscation: My name is {full_name}

如果表達用語包含括號字元 ({}),則 Amazon Lex 會使用兩條反斜線 (\\\) 逸出括號字元。例如,文字 {John Stiles} 會被混淆,如下所示:

Before obfuscation: My name is {John Stiles} After obfuscation: My name is \\{{full_name}\\}

對話日誌中的槽值會被混淆。插槽值仍然可用於來自PostContentPostText操作,而且槽值可供您的驗證和履行 Lambda 函數使用。如果您是在提示或回應中使用槽值,則這些槽值不會在對話日誌中混淆。

在對話的第一回合中,Amazon Lex 果辨識出表達用語中的槽和槽值,則它會混淆槽值。如果未辨識出任何槽值,Amazon Lex 不會混淆表達用語。

在第二回合和後續回合中,Amazon Lex 知道要引出的槽,以及槽值是否應該混淆。如果 Amazon Lex 辨識出槽值,則會混淆該值。如果 Amazon Lex 無法辨識出一個值,則會混淆整個表達用語。遺漏表達用語中的任何槽值都不會被混淆。

也 Amazon Lex 會混淆您存放在請求或工作階段屬性中的槽值。如果您是儲存應該當作屬性混淆的槽值,則必須加密或以其他方式混淆該值。

Amazon Lex 不會混淆音訊中的槽值。它的確會混淆音訊記錄中的槽值。

您不需要混淆機器人中的所有槽。您可以使用主控台或使用 Amazon Lex API 來選擇要混淆哪些槽。在主控台中,於槽設定中選擇 Slot obfuscation (槽混淆)。如果您是使用 API,則在呼叫 PutIntent 操作時,將槽的 obfuscationSetting 欄位設定為 DEFAULT_OBFUSCATION