我设置了一个SNS通知,每当有关于IAM策略的更改时,就发送给我一封电子邮件。当发生更改时,CloudTrail向CloudWatch发送日志,该日志将触发附加到SNS主题的警报。在这个中有更多的细节。
下面是我通过邮件得到的一个例子:
Alarm Details:
- Name: PolicyAlarm
- Description: This alarm is to monitor IAM Changes
- State Change: INSUFFICIENT_DATA -> ALA
我正在尝试将CloudWatch日志添加到我的API Gateway中,并遵循创建了以下terraform:
resource "aws_iam_role" "iam_for_api_gateway" {
name = "${var.name}-api-gateway-role"
description = "custom IAM Limited Role created with \"APIGateway\" as the trusted entity"
path = "/"
a
我已经为给定作业名称的列表为log_group创建了资源 resource "aws_cloudwatch_log_group" "logGroups" {
count = length(var.jobnames)
name = format("/aws/lambda/%s", format(local.function_name_format, var.jobnames[count.index]))
retention_in_days = 7
}
and now for the
对于小型CloudFormation和CodePipeline模板,我们可以“尝试-测试”以获得针对所需角色的最小特权IAM策略。
这通常涉及:
从最低限度的政策开始
创建堆栈
它失败了-堆栈不具有某些服务的权限:某些操作
将服务操作添加到策略中
更新堆栈,然后重试
对于较大的CloudFormation模板来说,这种方法太费时了。
您如何开发最小特权IAM策略?
想法:
允许"*“然后为事件抓取cloudtrail,并为列出的事件构建映射到它们的等效角色,然后将角色缩减为只列出在cloudtrail日志中的角色。
- If you can is
我使用下面的IAM角色使用lambda函数将cloudwatch日志推送到ES。由于Lambda函数的调用错误,日志不会推送到ES。我似乎找不出明显的原因。
# IAM Role for Lambda function to be able to write to ES
resource "aws_iam_role" "iam_for_lambda" {
name = "iam_for_lambda_test"
assume_role_policy = <<EOF
{
"Version"
我正在尝试创建cloudwatch计划的事件,以拍摄我的ebs快照。我对cloudformation并不熟悉,这就是为什么在实现这一点时具有复杂性的原因。我正在附加我的当前模板,它生成了我的ec2实例,并覆盖了从10 to到20 to的默认卷。我希望在完全相同的已创建卷上创建一个cloudwatch事件,以获取从此模板创建的该卷的快照。如果有人能帮助我使用cloudformation语法设置带有目标的事件,我将非常高兴。
Parameters:
KeyName:
Description: The EC2 Key Pair to allow SSH access to the ins
我们已经部署了一个DMS复制任务来将整个Postgres数据库复制到Redshift。这些表是用正确的模式创建的,但是数据并没有传递到Redshift,而是在DMS作为中间步骤使用的S3存储桶中被搁置。这些都是通过Terraform部署的。
我们已经将中描述的IAM角色配置为创建了dms-access-for-endpoint、dms-cloudwatch-logs-role和dms-vpc-role三种角色。IAM角色通过不同的堆栈部署到部署DMS的地方,因为另一个成功部署的DMS实例使用这些角色来运行不同的任务。
data "aws_iam_policy_document"
当为Terraform资源扫描运行checkov时,此操作失败
Check: CKV_AWS_111: "Ensure IAM policies does not allow write access without constraints"
FAILED for resource: aws_iam_policy_document.foo
File: /data.tf:7-18
data "aws_iam_policy_document" "foo" {
statement {
effect