如何在Terraform中使用托管数据标识符进行AWS Macie设置

58次阅读
没有评论

问题描述

想要通过Terraform启用AWS Macie,以运行定期作业来扫描S3存储桶中的敏感数据。他已经成功创建了一个帐户并执行了对存储桶的初始扫描,但他还希望能够指定一些托管数据标识符(例如地址、生日、驾驶执照、电话号码等)。他在HashiCorp的文档中查看了关于aws_macie2_classification_job资源的信息,但只找到了关于自定义数据标识符的内容。他在AWS的REST API文档中发现了一种使用CreateClassificationJobRequest中的managedDataIdentifierIds属性的方法,但他在Terraform中的应用存在困难。他考虑到自定义数据标识符可能是一个解决方法,但希望尽可能避免这条路。

解决方案

注意:下面的操作可能会涉及到版本差异和具体实施细节,务必在操作前备份数据以避免意外情况。
目前看起来官方尚未提供直接支持托管数据标识符的功能。根据你提供的问题和回答数据,以下是可能的解决方案:

解决方案1:等待官方支持

根据你提供的信息,AWS Macie的托管数据标识符功能是在2021年9月23日发布的新功能。如果Terraform目前不支持这个新功能,你可以选择等待官方的更新,以便在将来的版本中能够通过Terraform来配置托管数据标识符。

解决方案2:使用自定义数据标识符

虽然你希望避免使用自定义数据标识符,但目前可能需要使用这个方法作为暂时的解决方案,直到Terraform支持托管数据标识符为止。下面是如何在Terraform中使用自定义数据标识符的示例:

  1. 在Terraform配置中,定义自定义数据标识符。你可以使用aws_macie2_custom_data_identifier资源来定义这些标识符,例如:
resource "aws_macie2_custom_data_identifier" "example" {
  name = "example-identifier"
  regex = "your-regex-pattern"
}
  1. 在你的aws_macie2_classification_job资源中,使用custom_data_identifier_ids参数来引用你定义的自定义数据标识符。例如:
resource "aws_macie2_classification_job" "test_scan" {
  # 其他参数...
  custom_data_identifier_ids = [aws_macie2_custom_data_identifier.example.id]
}

这将使你的扫描作业使用你定义的自定义数据标识符来进行扫描。

解决方案3:参与社区支持

如果你对Terraform的使用非常熟悉,你还可以参与到Terraform社区中,提出对托管数据标识符的支持建议,或者参与到相关的开发中。这样可以帮助推动Terraform对托管数据标识符的支持更快地得以实现。

无论选择哪种解决方案,都需要仔细考虑你的需求和现有环境,以做出最适合你情况的决策。

请注意,由于AWS Macie和Terraform可能会不断更新和演变,以上解决方案中的具体细节可能会随着时间的推移而有所变化。建议你随时关注AWS、HashiCorp以及社区的更新和公告。

希望以上解决方案能够帮助你在目前的情况下实现对AWS Macie的设置。如果有任何进一步的问题或困惑,请随时提问或寻求相关支持资源。

正文完