data "aws_iam_policy_document" "akamaiRedirectorRole-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type        = "Service"
      identifiers = ["lambda.amazonaws.com"]
    }
  }
}

data "aws_iam_policy_document" "AnsibleAWSServiceAccess-MSRV-P-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type = "AWS"

      identifiers = [
        "arn:aws:iam::476717493283:role/ccshr-cip-reports01",
        "arn:aws:iam::476717493283:role/clshrd-p-clshrd-tower01",
        "arn:aws:iam::476717493283:role/ccshr-cip-portal01",
        "arn:aws:iam::943540511943:role/AnsibleDevCrossAccountAccess",
      ]
    }
  }
}

data "aws_iam_policy_document" "archivep-mcon-s3-role-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type        = "Service"
      identifiers = ["ec2.amazonaws.com"]
    }
  }

  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type        = "AWS"
      identifiers = ["arn:aws:iam::476717493283:role/clshrd-p-clshrd-vault01"]
    }
  }
}

data "aws_iam_policy_document" "AWSBackupDefaultServiceRole-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type        = "Service"
      identifiers = ["backup.amazonaws.com"]
    }
  }
}

data "aws_iam_policy_document" "AWSServiceRoleForAmazonEKS-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type        = "Service"
      identifiers = ["eks.amazonaws.com"]
    }
  }
}

data "aws_iam_policy_document" "AWSServiceRoleForAmazonGuardDuty-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type        = "Service"
      identifiers = ["guardduty.amazonaws.com"]
    }
  }
}

data "aws_iam_policy_document" "AWSServiceRoleForAmazonInspector-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type        = "Service"
      identifiers = ["inspector.amazonaws.com"]
    }
  }
}

data "aws_iam_policy_document" "AWSServiceRoleForAmazonInspector2-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type        = "Service"
      identifiers = ["inspector2.amazonaws.com"]
    }
  }
}

data "aws_iam_policy_document" "AWSServiceRoleForAmazonSSM-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type        = "Service"
      identifiers = ["ssm.amazonaws.com"]
    }
  }
}

data "aws_iam_policy_document" "AWSServiceRoleForAutoScaling-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type        = "Service"
      identifiers = ["autoscaling.amazonaws.com"]
    }
  }
}

data "aws_iam_policy_document" "AWSServiceRoleForCloudFormationStackSetsOrgMember-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type        = "Service"
      identifiers = ["member.org.stacksets.cloudformation.amazonaws.com"]
    }
  }
}

data "aws_iam_policy_document" "AWSServiceRoleForCloudTrail-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type        = "Service"
      identifiers = ["cloudtrail.amazonaws.com"]
    }
  }
}

data "aws_iam_policy_document" "AWSServiceRoleForElastiCache-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type        = "Service"
      identifiers = ["elasticache.amazonaws.com"]
    }
  }
}

data "aws_iam_policy_document" "AWSServiceRoleForElasticLoadBalancing-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type        = "Service"
      identifiers = ["elasticloadbalancing.amazonaws.com"]
    }
  }
}

data "aws_iam_policy_document" "AWSServiceRoleForEMRCleanup-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type        = "Service"
      identifiers = ["elasticmapreduce.amazonaws.com"]
    }
  }
}

data "aws_iam_policy_document" "AWSServiceRoleForFMS-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type        = "Service"
      identifiers = ["fms.amazonaws.com"]
    }
  }
}

data "aws_iam_policy_document" "AWSServiceRoleForMarketplaceLicenseManagement-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type        = "Service"
      identifiers = ["license-management.marketplace.amazonaws.com"]
    }
  }
}

data "aws_iam_policy_document" "AWSServiceRoleForNetworkFirewall-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type        = "Service"
      identifiers = ["network-firewall.amazonaws.com"]
    }
  }
}

data "aws_iam_policy_document" "AWSServiceRoleForOrganizations-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type        = "Service"
      identifiers = ["organizations.amazonaws.com"]
    }
  }
}

data "aws_iam_policy_document" "AWSServiceRoleForRDS-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type        = "Service"
      identifiers = ["rds.amazonaws.com"]
    }
  }
}

data "aws_iam_policy_document" "AWSServiceRoleForRedshift-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type        = "Service"
      identifiers = ["redshift.amazonaws.com"]
    }
  }
}

data "aws_iam_policy_document" "AWSServiceRoleForRoute53Resolver-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type        = "Service"
      identifiers = ["route53resolver.amazonaws.com"]
    }
  }
}

data "aws_iam_policy_document" "AWSServiceRoleForSSO-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type        = "Service"
      identifiers = ["sso.amazonaws.com"]
    }
  }
}

data "aws_iam_policy_document" "AWSServiceRoleForSupport-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type        = "Service"
      identifiers = ["support.amazonaws.com"]
    }
  }
}

data "aws_iam_policy_document" "AWSServiceRoleForTrustedAdvisor-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type        = "Service"
      identifiers = ["trustedadvisor.amazonaws.com"]
    }
  }
}

data "aws_iam_policy_document" "AWSServiceRoleForVPCTransitGateway-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type        = "Service"
      identifiers = ["transitgateway.amazonaws.com"]
    }
  }
}

data "aws_iam_policy_document" "AWS_InspectorEvents_Invoke_Assessment_Template-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type        = "Service"
      identifiers = ["events.amazonaws.com"]
    }
  }
}

data "aws_iam_policy_document" "CloudabilityRole-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    condition {
      test     = "StringEquals"
      variable = "sts:ExternalId"
      values   = ["5e8c3d09-8bf4-4338-af8b-5cd58bd3f851"]
    }

    principals {
      type        = "AWS"
      identifiers = ["arn:aws:iam::165736516723:user/cloudability"]
    }
  }
}

data "aws_iam_policy_document" "CloudOpsRO-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type = "AWS"

      identifiers = [
        "arn:aws:sts::358364484590:assumed-role/AWS_SSO/selv001",
        "arn:aws:sts::358364484590:assumed-role/AWS_SSO/tayl054",
        "arn:aws:sts::358364484590:assumed-role/AWS_SSO/dewi002",
        "arn:aws:sts::358364484590:assumed-role/AWS_SSO/shan",
      ]
    }
  }
}

data "aws_iam_policy_document" "CloudTrail_CloudWatchLogs_Role-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type        = "Service"
      identifiers = ["cloudtrail.amazonaws.com"]
    }
  }
}

data "aws_iam_policy_document" "cloudwarerole-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    condition {
      test     = "StringEquals"
      variable = "sts:ExternalId"
      values   = ["6e194b01-9ace-47eb-8d83-5bf409257419"]
    }

    principals {
      type        = "AWS"
      identifiers = ["arn:aws:iam::814021343637:user/ca-collector"]
    }
  }
}

data "aws_iam_policy_document" "DatadogAWSIntegrationRole-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    condition {
      test     = "StringEquals"
      variable = "sts:ExternalId"
      values   = ["af22d3aea01743d5a55b9dd27715fa3a"]
    }

    principals {
      type        = "AWS"
      identifiers = ["arn:aws:iam::464622532012:root"]
    }
  }
}

data "aws_iam_policy_document" "DataPipelineDefaultResourceRole-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type        = "Service"
      identifiers = ["ec2.amazonaws.com"]
    }
  }
}

data "aws_iam_policy_document" "DataPipelineDefaultRole-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type = "Service"

      identifiers = [
        "datapipeline.amazonaws.com",
        "elasticmapreduce.amazonaws.com",
      ]
    }
  }
}

data "aws_iam_policy_document" "DeepSecurity-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    condition {
      test     = "StringEquals"
      variable = "sts:ExternalId"
      values   = ["6e149aa9-3d32-4c92-aeac-f3ce0e2f91fe"]
    }

    principals {
      type        = "AWS"
      identifiers = ["arn:aws:iam::147995105371:root"]
    }
  }
}

data "aws_iam_policy_document" "DeepSecuritySetup-aba2f5dbd-LambdaExecutionRole-1NQGRFS3AWQZB-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type        = "Service"
      identifiers = ["lambda.amazonaws.com"]
    }
  }
}

data "aws_iam_policy_document" "DevAdmin-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type = "AWS"

      identifiers = [
        "arn:aws:sts::358364484590:assumed-role/AWS_SSO/pala017",
        "arn:aws:sts::358364484590:assumed-role/AWS_SSO/peja001",
        "arn:aws:sts::358364484590:assumed-role/AWS_SSO/kari020",
        "arn:aws:sts::358364484590:assumed-role/AWS_SSO/mpadsal",
        "arn:aws:sts::358364484590:assumed-role/AWS_SSO/gvamsik",
        "arn:aws:sts::358364484590:assumed-role/AWS_SSO/aray001",
        "arn:aws:sts::358364484590:assumed-role/AWS_SSO/spag001",
        "arn:aws:sts::358364484590:assumed-role/AWS_SSO/aghosh1",
        "arn:aws:sts::358364484590:assumed-role/AWS_SSO/vank001",
        "arn:aws:sts::358364484590:assumed-role/AWS_SSO/vsubram",
        "arn:aws:sts::358364484590:assumed-role/AWS_SSO/chou030",
        "arn:aws:sts::358364484590:assumed-role/AWS_SSO/prag008",
        "arn:aws:sts::358364484590:assumed-role/AWS_SSO/dewi002",
        "arn:aws:sts::358364484590:assumed-role/AWS_SSO/nova005",
      ]
    }
  }
}

data "aws_iam_policy_document" "dms-vpc-role-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type        = "Service"
      identifiers = ["dms.amazonaws.com"]
    }
  }
}

data "aws_iam_policy_document" "ec2_s3_access-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type        = "Service"
      identifiers = ["lambda.amazonaws.com"]
    }
  }

  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type        = "AWS"
      identifiers = ["arn:aws:iam::023180329437:root"]
    }
  }
}

data "aws_iam_policy_document" "ecs-access-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type = "AWS"

      identifiers = [
        "arn:aws:sts::358364484590:assumed-role/AWS_SSO/mpadsal",
        "arn:aws:sts::358364484590:assumed-role/AWS_SSO/dewi002",
        "arn:aws:sts::358364484590:assumed-role/AWS_SSO/gvamsik",
      ]
    }
  }
}

data "aws_iam_policy_document" "flowlogsRole-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type        = "Service"
      identifiers = ["vpc-flow-logs.amazonaws.com"]
    }
  }
}

data "aws_iam_policy_document" "GSIRT_AWS_Monitoring_Role-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type        = "AWS"
      identifiers = ["arn:aws:iam::797906716436:role/splunk_ec2_api_server_role"]
    }
  }
}

data "aws_iam_policy_document" "lambda-rds-log-backup-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type        = "Service"
      identifiers = ["lambda.amazonaws.com"]
    }
  }
}

data "aws_iam_policy_document" "lambda_python_execution-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type        = "Service"
      identifiers = ["lambda.amazonaws.com"]
    }
  }
}

data "aws_iam_policy_document" "logs_check-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type        = "Service"
      identifiers = ["lambda.amazonaws.com"]
    }
  }
}

data "aws_iam_policy_document" "mcprodRO-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type = "AWS"

      identifiers = [
        "arn:aws:sts::358364484590:assumed-role/AWS_SSO/gule001",
        "arn:aws:sts::358364484590:assumed-role/AWS_SSO/aray001",
        "arn:aws:sts::358364484590:assumed-role/AWS_SSO/kamt001",
        "arn:aws:sts::358364484590:assumed-role/AWS_SSO/sama030",
        "arn:aws:sts::358364484590:assumed-role/AWS_SSO/ashetga",
        "arn:aws:sts::358364484590:assumed-role/AWS_SSO/mpadsal",
      ]
    }
  }
}

data "aws_iam_policy_document" "MediaService-RDS_snapshot_lambda-role-trust-policy" {
  statement {
    sid     = "VisualEditor0"
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type        = "Service"
      identifiers = ["lambda.amazonaws.com"]
    }
  }

  statement {
    sid     = "VisualEditor1"
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type        = "Service"
      identifiers = ["rds-export.aws.internal"]
    }
  }

  statement {
    sid     = "VisualEditor2"
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type        = "Service"
      identifiers = ["export.rds.amazonaws.com"]
    }
  }
}

data "aws_iam_policy_document" "MediaService-S3-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type        = "AWS"
      identifiers = ["arn:aws:sts::358364484590:assumed-role/AWS_SSO/kari020"]
    }
  }
}

data "aws_iam_policy_document" "mlibp-mcon-s3-role-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type        = "Service"
      identifiers = ["ec2.amazonaws.com"]
    }
  }

  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type        = "AWS"
      identifiers = ["arn:aws:iam::476717493283:role/clshrd-p-clshrd-vault01"]
    }
  }
}

data "aws_iam_policy_document" "msrvp-amazonEKSIngresscontrollerrole-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRoleWithWebIdentity"]

    condition {
      test     = "StringEquals"
      variable = "oidc.eks.us-east-1.amazonaws.com/id/15E8FB15209135AF2D02A95161547EE3:sub"
      values   = ["system:serviceaccount:kube-system:aws-load-balancer-controller"]
    }

    principals {
      type        = "Federated"
      identifiers = ["arn:aws:iam::${var.account_id}:oidc-provider/oidc.eks.us-east-1.amazonaws.com/id/15E8FB15209135AF2D02A95161547EE3"]
    }
  }
}

data "aws_iam_policy_document" "msrvp-aws-config-role-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type        = "Service"
      identifiers = ["config.amazonaws.com"]
    }
  }
}

data "aws_iam_policy_document" "msrvp-EKS-Service-Role-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type        = "Service"
      identifiers = ["eks.amazonaws.com"]
    }
  }
}

data "aws_iam_policy_document" "msrvp-eks-varnish-role-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRoleWithWebIdentity"]

    condition {
      test     = "StringEquals"
      variable = "oidc.eks.us-east-1.amazonaws.com/id/15E8FB15209135AF2D02A95161547EE3:sub"
      values   = ["system:serviceaccount:msrvp-prod:varnish-cache"]
    }

    principals {
      type        = "Federated"
      identifiers = ["arn:aws:iam::${var.account_id}:oidc-provider/oidc.eks.us-east-1.amazonaws.com/id/15E8FB15209135AF2D02A95161547EE3"]
    }
  }
}

data "aws_iam_policy_document" "msrvp-EKS-worker-node-Role-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type        = "Service"
      identifiers = ["ec2.amazonaws.com"]
    }
  }
}

data "aws_iam_policy_document" "msrvp-infosec-cwro-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type = "AWS"

      identifiers = [
        "arn:aws:sts::358364484590:assumed-role/AWS_SSO/jais003",
        "arn:aws:sts::358364484590:assumed-role/AWS_SSO/npatel1",
        "arn:aws:sts::358364484590:assumed-role/AWS_SSO/hegd001",
        "arn:aws:sts::358364484590:assumed-role/AWS_SSO/reed001",
      ]
    }
  }
}

data "aws_iam_policy_document" "msrvp-msrvp-origin1b02-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type        = "Service"
      identifiers = ["ec2.amazonaws.com"]
    }
  }
}

data "aws_iam_policy_document" "msrvp-msrvp2--mpubpgbouncer01-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type        = "Service"
      identifiers = ["ec2.amazonaws.com"]
    }
  }
}

data "aws_iam_policy_document" "msrvp-msrvp2-adminapp1b01-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type        = "Service"
      identifiers = ["ec2.amazonaws.com"]
    }
  }

  statement {
    sid    = ""
    effect = "Allow"
    actions = [
      "sts:AssumeRoleWithWebIdentity"
    ]

    principals {
      type        = "Federated"
      identifiers = ["arn:aws:iam::${var.account_id}:oidc-provider/oidc.eks.us-east-1.amazonaws.com/id/15E8FB15209135AF2D02A95161547EE3"]
    }

    condition {
      test     = "StringEquals"
      variable = "oidc.eks.us-east-1.amazonaws.com/id/15E8FB15209135AF2D02A95161547EE3:aud"
      values   = ["sts.amazonaws.com"]
    }

    condition {
      test     = "StringEquals"
      variable = "oidc.eks.us-east-1.amazonaws.com/id/15E8FB15209135AF2D02A95161547EE3:sub"
      values   = ["system:serviceaccount:msrvp-prod:media-service-admin"]
    }
  }
}

data "aws_iam_policy_document" "msrvp-msrvp2-cache1a01-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type        = "Service"
      identifiers = ["ec2.amazonaws.com"]
    }
  }
}

data "aws_iam_policy_document" "msrvp-msrvp2-cache1b01-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type        = "Service"
      identifiers = ["ec2.amazonaws.com"]
    }
  }
}

data "aws_iam_policy_document" "msrvp-msrvp2-ejbapp1b01-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type        = "Service"
      identifiers = ["ec2.amazonaws.com"]
    }
  }

  statement {
    sid    = ""
    effect = "Allow"
    actions = [
      "sts:AssumeRoleWithWebIdentity"
    ]

    principals {
      type        = "Federated"
      identifiers = ["arn:aws:iam::${var.account_id}:oidc-provider/oidc.eks.us-east-1.amazonaws.com/id/15E8FB15209135AF2D02A95161547EE3"]
    }

    condition {
      test     = "StringEquals"
      variable = "oidc.eks.us-east-1.amazonaws.com/id/15E8FB15209135AF2D02A95161547EE3:aud"
      values   = ["sts.amazonaws.com"]
    }

    condition {
      test     = "StringEquals"
      variable = "oidc.eks.us-east-1.amazonaws.com/id/15E8FB15209135AF2D02A95161547EE3:sub"
      values   = ["system:serviceaccount:msrvp-prod:media-service-ejb"]
    }
  }
}

data "aws_iam_policy_document" "msrvp-msrvp2-mpubapp1a01-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type        = "Service"
      identifiers = ["ec2.amazonaws.com"]
    }
  }
}

data "aws_iam_policy_document" "msrvp-msrvp2-prerel1a01-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type        = "Service"
      identifiers = ["ec2.amazonaws.com"]
    }
  }
}

data "aws_iam_policy_document" "msrvp-msrvp2-roapp1a01-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type        = "Service"
      identifiers = ["ec2.amazonaws.com"]
    }
  }
}

data "aws_iam_policy_document" "msrvp-msrvp2-roapp1b01-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type        = "Service"
      identifiers = ["ec2.amazonaws.com"]
    }
  }

  statement {
    sid    = ""
    effect = "Allow"
    actions = [
      "sts:AssumeRoleWithWebIdentity"
    ]

    principals {
      type        = "Federated"
      identifiers = ["arn:aws:iam::${var.account_id}:oidc-provider/oidc.eks.us-east-1.amazonaws.com/id/15E8FB15209135AF2D02A95161547EE3"]
    }

    condition {
      test     = "StringEquals"
      variable = "oidc.eks.us-east-1.amazonaws.com/id/15E8FB15209135AF2D02A95161547EE3:aud"
      values   = ["sts.amazonaws.com"]
    }

    condition {
      test     = "StringEquals"
      variable = "oidc.eks.us-east-1.amazonaws.com/id/15E8FB15209135AF2D02A95161547EE3:sub"
      values   = ["system:serviceaccount:msrvp-prod:media-service-ro"]
    }
  }
}

data "aws_iam_policy_document" "msrvp-portal-role-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type = "AWS"

      identifiers = [
        "arn:aws:iam::476717493283:role/clshrd-p-clshrd-portal01",
        "arn:aws:iam::476717493283:role/clshrd-p-clshrd-reports01",
        "arn:aws:iam::476717493283:role/ccshr-cip-reports01",
        "arn:aws:iam::476717493283:role/ccshr-cip-portal01",
      ]
    }
  }
}

data "aws_iam_policy_document" "msrvp-prometheus-role-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type        = "AWS"
      identifiers = ["arn:aws:iam::476717493283:role/clshrd-p-clshrd-prometheus"]
    }
  }
}

data "aws_iam_policy_document" "PostgreSQL-Credentials-Rotation-Role-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type        = "Service"
      identifiers = ["lambda.amazonaws.com"]
    }
  }
}

data "aws_iam_policy_document" "rds-monitoring-role-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type        = "Service"
      identifiers = ["monitoring.rds.amazonaws.com"]
    }
  }

  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type = "AWS"

      identifiers = [
        "arn:aws:sts::358364484590:assumed-role/AWS_SSO/gvamsik",
        "arn:aws:iam::358364484590:root",
        "arn:aws:sts::358364484590:assumed-role/AWS_SSO/dwenger",
        "arn:aws:sts::358364484590:assumed-role/AWS_SSO/sira001",
      ]
    }
  }
}

data "aws_iam_policy_document" "RDSAdmin-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type = "AWS"

      identifiers = [
        "arn:aws:sts::358364484590:assumed-role/AWS_SSO/vank001",
        "arn:aws:sts::358364484590:assumed-role/AWS_SSO/gvamsik",
        "arn:aws:sts::358364484590:assumed-role/AWS_SSO/mish008",
        "arn:aws:sts::358364484590:assumed-role/AWS_SSO/pvenkat",
        "arn:aws:sts::358364484590:assumed-role/AWS_SSO/dwenger",
        "arn:aws:sts::358364484590:assumed-role/AWS_SSO/sira001",
      ]
    }
  }
}

data "aws_iam_policy_document" "RDSProxyIAMRole-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type        = "Service"
      identifiers = ["rds.amazonaws.com"]
    }
  }
}

data "aws_iam_policy_document" "RDSReadOnly-Role-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type = "AWS"

      identifiers = [
        "arn:aws:sts::358364484590:assumed-role/AWS_SSO/mish008",
        "arn:aws:sts::358364484590:assumed-role/AWS_SSO/vank001",
      ]
    }
  }
}

data "aws_iam_policy_document" "ReadOnlyExtern-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type = "AWS"

      identifiers = [
        "arn:aws:sts::358364484590:assumed-role/AWS_SSO/mpadsal",
        "arn:aws:sts::358364484590:assumed-role/AWS_SSO/eswa003",
        "arn:aws:sts::358364484590:assumed-role/AWS_SSO/imti001",
        "arn:aws:sts::358364484590:assumed-role/AWS_SSO/shar051",
        "arn:aws:sts::358364484590:assumed-role/AWS_SSO/peja001",
        "arn:aws:sts::358364484590:assumed-role/AWS_SSO/kari020",
        "arn:aws:sts::358364484590:assumed-role/AWS_SSO/dewi002",
        "arn:aws:sts::358364484590:assumed-role/AWS_SSO/liou001",
        "arn:aws:sts::358364484590:assumed-role/AWS_SSO/nova005",
        "arn:aws:sts::358364484590:assumed-role/AWS_SSO/npatel1",
        "arn:aws:iam::943540511943:role/ReadOnlyInfoSec",
        "arn:aws:sts::358364484590:assumed-role/AWS_SSO/sasi001",
        "arn:aws:sts::358364484590:assumed-role/AWS_SSO/chou030",
        "arn:aws:sts::358364484590:assumed-role/AWS_SSO/thom027",
        "arn:aws:sts::358364484590:assumed-role/AWS_SSO/tang002",
        "arn:aws:sts::358364484590:assumed-role/AWS_SSO/hont002",
        "arn:aws:sts::358364484590:assumed-role/AWS_SSO/giri004",
        "arn:aws:sts::358364484590:assumed-role/AWS_SSO/veru005",
        "arn:aws:sts::358364484590:assumed-role/AWS_SSO/call014",
      ]
    }
  }
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type        = "AWS"
      identifiers = ["arn:aws:iam::476717493283:role/ccshr-ec2-eksmngr"]
    }
  }
}

data "aws_iam_policy_document" "sftsp-mcon-s3-role-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type        = "Service"
      identifiers = ["ec2.amazonaws.com"]
    }
  }

  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type        = "AWS"
      identifiers = ["arn:aws:iam::476717493283:role/clshrd-p-clshrd-vault01"]
    }
  }
}

data "aws_iam_policy_document" "sme-media-services-prod-gen-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type        = "Service"
      identifiers = ["ec2.amazonaws.com"]
    }
  }
}

data "aws_iam_policy_document" "sme-media-services-prod-waf-logging-role-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    condition {
      test     = "StringEquals"
      variable = "sts:ExternalId"
      values   = ["${var.account_id}"]
    }

    principals {
      type        = "Service"
      identifiers = ["firehose.amazonaws.com"]
    }
  }
}

data "aws_iam_policy_document" "stacksets-exec-681219392bfdde9951179cb20ffea4ef-trust-policy" {
  statement {
    sid     = "1"
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type        = "AWS"
      identifiers = ["arn:aws:iam::970903126758:role/aws-service-role/stacksets.cloudformation.amazonaws.com/AWSServiceRoleForCloudFormationStackSetsOrgAdmin"]
    }
  }
}

data "aws_iam_policy_document" "StatesExecutionRole-eu-central-1-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type        = "Service"
      identifiers = ["states.eu-central-1.amazonaws.com"]
    }
  }
}

data "aws_iam_policy_document" "msrvp-mcon-prod-mlib-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type        = "Service"
      identifiers = ["ec2.amazonaws.com"]
    }
  }
}

data "aws_iam_policy_document" "KubeCostFederatedRole-msrvp-prod-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRoleWithWebIdentity"]

    condition {
      test     = "StringEquals"
      variable = "oidc.eks.us-east-1.amazonaws.com/id/15E8FB15209135AF2D02A95161547EE3:sub"
      values   = ["system:serviceaccount:kubecost:kubecost-s3-access-sa"]
    }

    principals {
      type        = "Federated"
      identifiers = ["arn:aws:iam::${var.account_id}:oidc-provider/oidc.eks.us-east-1.amazonaws.com/id/15E8FB15209135AF2D02A95161547EE3"]
    }
  }
}

data "aws_iam_policy_document" "msrvp-prod-ns-mpub-prod-sa-mediapublisher-prod-service-role-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRoleWithWebIdentity"]

    condition {
      test     = "StringEquals"
      variable = "oidc.eks.us-east-1.amazonaws.com/id/15E8FB15209135AF2D02A95161547EE3:sub"
      values   = ["system:serviceaccount:mpub-prod:mediapublisher-prod-service"]
    }

    condition {
      test     = "StringEquals"
      variable = "oidc.eks.us-east-1.amazonaws.com/id/15E8FB15209135AF2D02A95161547EE3:aud"
      values   = ["sts.amazonaws.com"]
    }

    principals {
      type        = "Federated"
      identifiers = ["arn:aws:iam::${var.account_id}:oidc-provider/oidc.eks.us-east-1.amazonaws.com/id/15E8FB15209135AF2D02A95161547EE3"]
    }
  }
}

data "aws_iam_policy_document" "msrvp-prod-aoma-da-contactsheet-role-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type        = "Service"
      identifiers = ["ec2.amazonaws.com"]
    }
  }

  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type        = "AWS"
      identifiers = ["arn:aws:iam::476717493283:role/vault-prod-iam-role"]
    }
  }
}

data "aws_iam_policy_document" "msrvp-mcon-prod-mlib-role-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type        = "Service"
      identifiers = ["ec2.amazonaws.com"]
    }
  }

  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type        = "AWS"
      identifiers = ["arn:aws:iam::476717493283:role/vault-prod-iam-role"]
    }
  }
}

data "aws_iam_policy_document" "mconp-arvato-sftsorigin-role-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type        = "Service"
      identifiers = ["ec2.amazonaws.com"]
    }
  }

  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type        = "AWS"
      identifiers = ["arn:aws:iam::476717493283:role/vault-prod-iam-role"]
    }
  }
}

data "aws_iam_policy_document" "mconp-arvato-dxorigin-role-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type        = "Service"
      identifiers = ["ec2.amazonaws.com"]
    }
  }

  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type = "AWS"
      identifiers = [
        "arn:aws:iam::476717493283:role/vault-prod-iam-role",
        "arn:aws:iam::729038418454:role/sme-dx3-prod-arvato",
        "arn:aws:iam::638682502729:role/ecsInstanceRole",
        "arn:aws:iam::361463692799:role/mconp-arvato-dxorigin"
      ]
    }
  }
}


data "aws_iam_policy_document" "mconp-arvato-archive-role-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type        = "Service"
      identifiers = ["ec2.amazonaws.com"]
    }
  }

  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type        = "AWS"
      identifiers = ["arn:aws:iam::476717493283:role/vault-prod-iam-role"]
    }
  }
}

data "aws_iam_policy_document" "EKSFargatePodExecutionRole-trust-policy" {
  statement {
    sid    = ""
    effect = "Allow"
    actions = [
      "sts:AssumeRole",
    ]

    principals {
      type        = "Service"
      identifiers = ["eks-fargate-pods.amazonaws.com"]
    }
  }
}

data "aws_iam_policy_document" "KarpenterControllerRole-msrvp-prod-trust-policy" {
  statement {
    sid    = ""
    effect = "Allow"
    actions = [
      "sts:TagSession",
      "sts:AssumeRole",
    ]

    principals {
      type        = "Service"
      identifiers = ["pods.eks.amazonaws.com"]
    }
  }

  statement {
    sid    = ""
    effect = "Allow"
    actions = [
      "sts:AssumeRoleWithWebIdentity"
    ]

    principals {
      type        = "Federated"
      identifiers = ["arn:aws:iam::${var.account_id}:oidc-provider/oidc.eks.us-east-1.amazonaws.com/id/15E8FB15209135AF2D02A95161547EE3"]
    }

    condition {
      test     = "StringEquals"
      variable = "oidc.eks.us-east-1.amazonaws.com/id/15E8FB15209135AF2D02A95161547EE3:aud"
      values   = ["sts.amazonaws.com"]
    }

    condition {
      test     = "StringEquals"
      variable = "oidc.eks.us-east-1.amazonaws.com/id/15E8FB15209135AF2D02A95161547EE3:sub"
      values   = ["system:serviceaccount:kube-system:karpenter"]
    }
  }
}


data "aws_iam_policy_document" "msrv-github-actions-role-trust-policy" {
  statement {
    sid    = ""
    effect = "Allow"

    actions = [
      "sts:AssumeRole",
      "sts:TagSession",
    ]

    principals {
      type        = "AWS"
      identifiers = ["arn:aws:iam::${var.account_id}:root"]
    }
  }

  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type        = "Service"
      identifiers = ["ec2.amazonaws.com"]
    }
  }

  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRoleWithWebIdentity"]

    condition {
      test     = "StringEquals"
      variable = "token.actions.githubusercontent.com:aud"
      values   = ["sts.amazonaws.com"]
    }

    condition {
      test     = "StringLike"
      variable = "token.actions.githubusercontent.com:sub"
      values   = ["repo:SME-Media-Services/*", "repo:SME-Delivery-Services/*", "repo:SME-databases/*"]
    }

    principals {
      type        = "Federated"
      identifiers = ["arn:aws:iam::${var.account_id}:oidc-provider/token.actions.githubusercontent.com"]
    }
  }
}

data "aws_iam_policy_document" "msrvp-eks-developer-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type        = "AWS"
      identifiers = ["arn:aws:iam::476717493283:role/ccshr-ec2-eksmngr"]
    }
  }
}