本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
設定 Lambda 執行角色許可
除了存取自我管理的 Kafka 叢集之外,Lambda 函數還需要執行各種 API 動作的許可。您可以將這些許可新增到函數的執行角色。如果您的使用者需要存取任何 API 動作,請將必要的許可新增至 AWS Identity and Access Management (IAM) 使用者或角色的身分政策。
必要的 Lambda 函數許可
若要在 Amazon CloudWatch Logs 中建立日誌並存放在日誌群組中,您的 Lambda 函數在其執行角色中必須具有下列許可:
選用 Lambda 函數許可
您的 Lambda 函數可能需要許可,才能:
-
描述您 Secrets Manager 機密。
-
存取您的 AWS Key Management Service (AWS KMS) 客戶受管金鑰。
-
存取 Amazon VPC。
-
將失敗調用的記錄傳送到目的地。
Secrets Manager 和 AWS KMS 許可
根據您為 Kafka 代理程式設定的存取控制類型,您的 Lambda 函數可能需要存取 Secrets Manager 秘密或解密 AWS KMS 客戶受管金鑰的許可。若要連線至這些資源,函數的執行角色必須具有下列許可:
VPC 許可
如果只有某個 VPC 內的使用者可以存取自我管理 Apache Kafka 叢集,則您的 Lambda 函數必須具有存取 Amazon VPC 資源的許可。這些資源包括您的 VPC、子網路、安全群組和網路界面。若要連線至這些資源,函數的執行角色必須具有下列許可:
將許可新增至您的執行角色
若要存取自我管理 Apache Kafka 叢集使用的其他 AWS 服務,Lambda 會使用您在 Lambda 函數執行角色中定義的許可政策。
根據預設,Lambda 不允許針對自我管理 Apache Kafka 叢集執行必要或選用的動作。您必須在 IAM 信任政策中為您的執行角色建立並定義這些動作。此範例會示範如何建立允許 Lambda 存取 Amazon VPC 資源的政策。
使用 IAM 政策授予使用者存取權
根據預設,使用者和角色沒有執行事件來源 API 操作的許可。若要將存取權授予組織或帳戶中的使用者,您可能需要建立或更新身分型政策。如需詳細資訊,請參閱《IAM 使用者指南》中的使用政策控制對 AWS 資源的存取。
如需疑難排解身分驗證和授權錯誤,請參閱 故障診斷 Kafka 事件來源映射錯誤。