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

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


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

    condition {
      test     = "StringEquals"
      variable = "oidc.eks.eu-central-1.amazonaws.com/id/939E61E4D02D65D92B808DF9961DD07E:aud"
      values   = ["sts.amazonaws.com"]
    }

    condition {
      test     = "StringEquals"
      variable = "oidc.eks.eu-central-1.amazonaws.com/id/939E61E4D02D65D92B808DF9961DD07E:sub"
      values   = ["system:serviceaccount:kube-system:aws-load-balancer-controller"]
    }

    principals {
      type        = "Federated"
      identifiers = ["arn:aws:iam::107577002119:oidc-provider/oidc.eks.eu-central-1.amazonaws.com/id/939E61E4D02D65D92B808DF9961DD07E"]
    }
  }
}



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

    principals {
      type = "AWS"

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

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" "AWSServiceRoleForAmazonOpenSearchService-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type        = "Service"
      identifiers = ["opensearchservice.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" "AWSServiceRoleForElasticLoadBalancing-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type        = "Service"
      identifiers = ["elasticloadbalancing.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" "AWSServiceRoleForKafka-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type        = "Service"
      identifiers = ["kafka.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" "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" "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" "CognitoAccessForAmazonOpenSearch-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

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

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

    condition {
      test     = "StringEquals"
      variable = "cognito-identity.amazonaws.com:aud"
      values   = ["eu-central-1:35bd39bd-51d9-4e16-a57f-d8d46fb7c9e8"]
    }

    condition {
      test     = "ForAnyValue:StringLike"
      variable = "cognito-identity.amazonaws.com:amr"
      values   = ["authenticated"]
    }

    principals {
      type        = "Federated"
      identifiers = ["cognito-identity.amazonaws.com"]
    }
  }
}



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

    condition {
      test     = "StringEquals"
      variable = "sts:ExternalId"
      values   = ["F409846A-5B8E-3609-1237-28D6556B4B4F"]
    }

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

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

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

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" "globaldsd-lcsd-eks-euc1-stage-corso-eros-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type = "AWS"

      identifiers = [
        "arn:aws:iam::230315258045:role/lcsd-eks-euc1-stage-corso-role"
      ]
    }
  }
}

data "aws_iam_policy_document" "globaldsd-lcsd-eks-euc1-stage-chd-publish-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type = "AWS"

      identifiers = [
        "arn:aws:iam::230315258045:role/lcsd-eks-euc1-stage-corso-role"
      ]
    }
  }
}

data "aws_iam_policy_document" "globaldsd-lcsd-eks-euc1-dev-corso-eros-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type = "AWS"

      identifiers = [
        "arn:aws:iam::230315258045:role/lcsd-eks-euc1-dev-corso-role"
      ]
    }
  }
}

data "aws_iam_policy_document" "globaldsd-lcsd-eks-euc1-dev-chd-publish-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type = "AWS"

      identifiers = [
        "arn:aws:iam::230315258045:role/lcsd-eks-euc1-dev-corso-role"
      ]
    }
  }
}

data "aws_iam_policy_document" "GDS-D-eks-global-ds-dev-ns-global-ds-sa-gateway-role-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRoleWithWebIdentity"]

    condition {
      test     = "StringEquals"
      variable = "oidc.eks.eu-central-1.amazonaws.com/id/939E61E4D02D65D92B808DF9961DD07E:sub"
      values   = ["system:serviceaccount:global-ds:gw"]
    }

    principals {
      type        = "Federated"
      identifiers = ["arn:aws:iam::${var.account_id}:oidc-provider/oidc.eks.eu-central-1.amazonaws.com/id/939E61E4D02D65D92B808DF9961DD07E"]
    }
  }

  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::107577002119:role/GDS-D-EKS-worker-node-Role"]
    }
  }

}

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

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

data "aws_iam_policy_document" "GDS-D-EKS-worker-node-Role-trust-policy" {
  statement {
    sid    = ""
    effect = "Allow"

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

    principals {
      type        = "Federated"
      identifiers = ["cognito-identity.amazonaws.com"]
    }
  }

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

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

data "aws_iam_policy_document" "GDS-D-globalsd-gitrun01-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

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



data "aws_iam_policy_document" "GDS-U-eks-global-ds-uat-ns-global-ds-sa-gateway-role-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRoleWithWebIdentity"]

    condition {
      test     = "StringEquals"
      variable = "oidc.eks.eu-central-1.amazonaws.com/id/62A30D809C40D96F9CDEB76269EDD527:sub"
      values   = ["system:serviceaccount:global-ds:gateway"]
    }

    principals {
      type        = "Federated"
      identifiers = ["arn:aws:iam::${var.account_id}:oidc-provider/oidc.eks.eu-central-1.amazonaws.com/id/62A30D809C40D96F9CDEB76269EDD527"]
    }
  }

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

    condition {
      test     = "StringEquals"
      variable = "oidc.eks.eu-central-1.amazonaws.com/id/939E61E4D02D65D92B808DF9961DD07E:sub"
      values   = ["system:serviceaccount:global-ds-uat:gw"]
    }

    principals {
      type        = "Federated"
      identifiers = ["arn:aws:iam::107577002119:oidc-provider/oidc.eks.eu-central-1.amazonaws.com/id/939E61E4D02D65D92B808DF9961DD07E"]
    }
  }

  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::107577002119:role/GDS-D-EKS-worker-node-Role",

      ]
    }
  }
}

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

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

data "aws_iam_policy_document" "GDS-U1-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" "global-ds-dev-logs-es-lambda-role-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

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

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

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

data "aws_iam_policy_document" "globaldsd-ameba-ddex-rel-mgr-role-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRoleWithWebIdentity"]

    condition {
      test     = "StringEquals"
      variable = "oidc.eks.eu-central-1.amazonaws.com/id/939E61E4D02D65D92B808DF9961DD07E:sub"
      values   = [
        "system:serviceaccount:global-ds:ddex-rims",
        "system:serviceaccount:global-ds:ddex-rims-scheduler",
        "system:serviceaccount:global-ds-uat:ddex-rims",
        "system:serviceaccount:global-ds-uat:ddex-rims-scheduler"
      ]
    }

    principals {
      type        = "Federated"
      identifiers = ["arn:aws:iam::${var.account_id}:oidc-provider/oidc.eks.eu-central-1.amazonaws.com/id/939E61E4D02D65D92B808DF9961DD07E"]
    }
  }

  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::${var.account_id}:role/GDS-D-EKS-worker-node-Role"]
    }
  }
}

data "aws_iam_policy_document" "globaldsd-ameba-ddex-rel-mgr-uat-role-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRoleWithWebIdentity"]

    condition {
      test     = "StringEquals"
      variable = "oidc.eks.eu-central-1.amazonaws.com/id/62A30D809C40D96F9CDEB76269EDD527:sub"
      values   = [
        "system:serviceaccount:global-ds:ddex-rims",
        "system:serviceaccount:global-ds-uat:ddex-rims",
        "system:serviceaccount:global-ds-uat:ddex-rims-scheduler"]
    }

    principals {
      type        = "Federated"
      identifiers = ["arn:aws:iam::${var.account_id}:oidc-provider/oidc.eks.eu-central-1.amazonaws.com/id/62A30D809C40D96F9CDEB76269EDD527"]
    }
  }

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

    principals {
      type = "AWS"
      identifiers = [
        "arn:aws:iam::${var.account_id}:role/GDS-U1-EKS-worker-node-Role",
        "arn:aws:iam::${var.account_id}:role/GDS-D-EKS-worker-node-Role",
      ]
    }
  }
}

data "aws_iam_policy_document" "gdsd-ameba-ks-role-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRoleWithWebIdentity"]

    condition {
      test     = "StringEquals"
      variable = "oidc.eks.eu-central-1.amazonaws.com/id/939E61E4D02D65D92B808DF9961DD07E:sub"
      values   = ["system:serviceaccount:global-ds:ks-ds"]
    }

    principals {
      type        = "Federated"
      identifiers = ["arn:aws:iam::${var.account_id}:oidc-provider/oidc.eks.eu-central-1.amazonaws.com/id/939E61E4D02D65D92B808DF9961DD07E"]
    }
  }

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

    condition {
      test     = "StringEquals"
      variable = "oidc.eks.eu-central-1.amazonaws.com/id/939E61E4D02D65D92B808DF9961DD07E:sub"
      values   = ["system:serviceaccount:global-ds-uat:ks-ds"]
    }

    principals {
      type        = "Federated"
      identifiers = ["arn:aws:iam::${var.account_id}:oidc-provider/oidc.eks.eu-central-1.amazonaws.com/id/939E61E4D02D65D92B808DF9961DD07E"]
    }
  }

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

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


}

data "aws_iam_policy_document" "gdsd-ameba-ec-role-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRoleWithWebIdentity"]

    condition {
      test     = "StringEquals"
      variable = "oidc.eks.eu-central-1.amazonaws.com/id/939E61E4D02D65D92B808DF9961DD07E:sub"
      values   = ["system:serviceaccount:global-ds:ec-backfill"]
    }

    principals {
      type        = "Federated"
      identifiers = ["arn:aws:iam::${var.account_id}:oidc-provider/oidc.eks.eu-central-1.amazonaws.com/id/939E61E4D02D65D92B808DF9961DD07E"]
    }
  }

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

    condition {
      test     = "StringEquals"
      variable = "oidc.eks.eu-central-1.amazonaws.com/id/939E61E4D02D65D92B808DF9961DD07E:sub"
      values   = ["system:serviceaccount:global-ds-uat:ec-backfill"]
    }

    principals {
      type        = "Federated"
      identifiers = ["arn:aws:iam::${var.account_id}:oidc-provider/oidc.eks.eu-central-1.amazonaws.com/id/939E61E4D02D65D92B808DF9961DD07E"]
    }
  }

  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::${var.account_id}:role/GDS-D-EKS-worker-node-Role"]
    }
  }
}

data "aws_iam_policy_document" "globaldsd-ameba-sr-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::${var.account_id}:role/GDS-D-EKS-worker-node-Role",
        "arn:aws:iam::${var.account_id}:role/GDS-U1-EKS-worker-node-Role",
        "arn:aws:iam::969009837416:user/aomad-ameba-admin",
      ]
    }
  }

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

    condition {
      test     = "StringEquals"
      variable = "oidc.eks.eu-central-1.amazonaws.com/id/939E61E4D02D65D92B808DF9961DD07E:sub"
      values   = [
        "system:serviceaccount:global-ds:sr",
        "system:serviceaccount:global-ds-uat:sr"
      ]
    }

    principals {
      type        = "Federated"
      identifiers = ["arn:aws:iam::${var.account_id}:oidc-provider/oidc.eks.eu-central-1.amazonaws.com/id/939E61E4D02D65D92B808DF9961DD07E"]
    }
  }
}

data "aws_iam_policy_document" "globaldsd-ameba-sr-uat-role-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type = "AWS"

      identifiers = [
        "arn:aws:iam::${var.account_id}:role/GDS-D-EKS-worker-node-Role",
        "arn:aws:iam::${var.account_id}:role/GDS-U1-EKS-worker-node-Role"
      ]
    }
  }

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

    condition {
      test     = "StringEquals"
      variable = "oidc.eks.eu-central-1.amazonaws.com/id/939E61E4D02D65D92B808DF9961DD07E:sub"
      values   = [
        "system:serviceaccount:global-ds-uat:sr"
      ]
    }

    principals {
      type        = "Federated"
      identifiers = ["arn:aws:iam::${var.account_id}:oidc-provider/oidc.eks.eu-central-1.amazonaws.com/id/939E61E4D02D65D92B808DF9961DD07E"]
    }
  }
}

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

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

data "aws_iam_policy_document" "globaldsd-ddex-qa-role-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 = "AWS"

      identifiers = [
        "arn:aws:iam::230315258045:role/lcsd-eks-sme-lcsdev-euc1-cluster-01-sa-ddex-watcher-stage",
        "arn:aws:iam::230315258045:role/lcsd-EKS-worker-node-Role"
      ]
    }
  }

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

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

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

    principals {
      type = "AWS"
      identifiers = [
        "arn:aws:iam::230315258045:role/lcsd-eks-sme-lcsdev-euc1-cluster-01-sa-ddex-watcher-stage",
        "arn:aws:iam::230315258045:role/lcsd-EKS-worker-node-Role"
      ]
    }
  }
}



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

    principals {
      type = "AWS"

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

data "aws_iam_policy_document" "globaldsd-switchboard-role-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRoleWithWebIdentity"]

    condition {
      test     = "StringEquals"
      variable = "oidc.eks.eu-central-1.amazonaws.com/id/939E61E4D02D65D92B808DF9961DD07E:sub"
      values   = ["system:serviceaccount:global-ds:ddex-rims"]
    }

    principals {
      type        = "Federated"
      identifiers = ["arn:aws:iam::${var.account_id}:oidc-provider/oidc.eks.eu-central-1.amazonaws.com/id/939E61E4D02D65D92B808DF9961DD07E"]
    }
  }

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

    principals {
      type = "AWS"

      identifiers = [
        "arn:aws:iam::662302927201:role/qa-switchboard-task-role",
        "arn:aws:iam::662302927201:role/orch-switchboard-dev-gen",
      ]
    }
  }
}

data "aws_iam_policy_document" "globaldsd-switchboard-uat-role-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRoleWithWebIdentity"]

    condition {
      test     = "StringEquals"
      variable = "oidc.eks.eu-central-1.amazonaws.com/id/62A30D809C40D96F9CDEB76269EDD527:sub"
      values   = ["system:serviceaccount:global-ds:ddex-rims"]
    }

    principals {
      type        = "Federated"
      identifiers = ["arn:aws:iam::${var.account_id}:oidc-provider/oidc.eks.eu-central-1.amazonaws.com/id/62A30D809C40D96F9CDEB76269EDD527"]
    }
  }

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

    principals {
      type = "AWS"

      identifiers = [
        "arn:aws:iam::662302927201:role/orch-switchboard-dev-gen",
        "arn:aws:iam::662302927201:role/qa-switchboard-task-role",
      ]
    }
  }
}


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" "lcsd-ddex-role-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type = "AWS"

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

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

    principals {
      type        = "AWS"
      identifiers = ["arn:aws:iam::230315258045:role/lcsd-ddex-eks-role"]
    }
  }
}

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" "OrganizationAccountAccessRole-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

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

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

    condition {
      test     = "StringEquals"
      variable = "sts:ExternalId"
      values   = ["70665276-4023-4011-b453-0bab83df6fe7"]
    }

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

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

    condition {
      test     = "StringEquals"
      variable = "sts:ExternalId"
      values   = ["4ddfd77e-34b5-4825-a2d9-c6c1f67450b7"]
    }

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

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"]
    }
  }
}

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/gvamsik",
        "arn:aws:sts::358364484590:assumed-role/AWS_SSO/sira001",
        "arn:aws:sts::358364484590:assumed-role/AWS_SSO/dwenger",
      ]
    }
  }
}

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

    principals {
      type = "AWS"

      identifiers = [
        "arn:aws:iam::261611053989:root",
        "arn:aws:sts::358364484590:assumed-role/AWS_SSO/veru005",
        "arn:aws:iam::943540511943:role/ReadOnlyInfoSec",
        "arn:aws:sts::358364484590:assumed-role/AWS_SSO/npatel1",
        "arn:aws:sts::358364484590:assumed-role/AWS_SSO/sasi001",
      ]
    }
  }
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

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

data "aws_iam_policy_document" "sme-gds-dev-ampsv-role-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type = "AWS"

      identifiers = [
        "arn:aws:iam::887829410671:role/ampd-ECS-Instance-Role",
        "arn:aws:iam::887829410671:role/ampd-eks-amp-dev-as-asset-service-sa-role",
      ]
    }
  }

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

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

data "aws_iam_policy_document" "sme-gds-uat-ampsv-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::887829410671:role/ampd-ECS-Instance-Role",
        "arn:aws:iam::887829410671:role/ampd-eks-amp-dev-as-asset-service-sa-role",
      ]
    }
  }
}



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" "GDS-D-globalsd-haproxy01-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

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

data "aws_iam_policy_document" "globaldsd-ddex-fuga-stage-role-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRoleWithWebIdentity"]

    condition {
      test     = "StringEquals"
      variable = "oidc-provider/oidc.eks.eu-central-1.amazonaws.com/id/16378F7CEED9D9B4BAC6ED56433C1599:sub"
      values   = ["system:serviceaccount:stage-ddex-watcher-fuga:ddex-watcher"]
    }

    principals {
      type        = "Federated"
      identifiers = ["arn:aws:iam::230315258045:oidc-provider/oidc.eks.eu-central-1.amazonaws.com/id/16378F7CEED9D9B4BAC6ED56433C1599"]
    }
  }

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

    principals {
      type = "AWS"

      identifiers = [
        "arn:aws:iam::230315258045:role/lcsd-EKS-worker-node-Role",
        "arn:aws:iam::230315258045:role/lcsd-eks-sme-lcsdev-euc1-cluster-01-sa-ddex-watcher-stage",
        "arn:aws:iam::230315258045:root",
      ]
    }
  }
}

data "aws_iam_policy_document" "gdsd-github-actions-role-trust-policy" {
  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-AOMA/*", "repo:SME-databases/*"]
    }

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

  statement {
    sid    = ""
    effect = "Allow"

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

    principals {
      type        = "AWS"
      identifiers = ["arn:aws:iam::107577002119:role/GDS-D-globalsd-gitrun01"]
    }
  }
}

data "aws_iam_policy_document" "gdsd-mi-dict-role-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type = "AWS"
      identifiers = [
        "arn:aws:iam::718729873097:role/digsysd3-eks-midict-dev-sa-role",
        "arn:aws:iam::718729873097:role/digsysd3-eks-midict-stage-sa-role"
      ]
    }
  }
}

data "aws_iam_policy_document" "gdsd-aoma-service-msk-role-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type = "AWS"
      identifiers = [
        "arn:aws:iam::969009837416:role/ameba-dev-ns-aoma2-dev-sa-amp-search-role",
      "arn:aws:iam::969009837416:role/aomad-eks-aoma2-kafka-sa-role"]
    }
  }
}

data "aws_iam_policy_document" "gdsd-ameba-labelcopy-role-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type = "AWS"
      identifiers = [
        "arn:aws:iam::969009837416:role/aomad-ameba-labelcopy-loader-dev-role",
        "arn:aws:iam::969009837416:role/aomad-ameba-labelcopy-loader-stage-role",
        "arn:aws:iam::969009837416:role/aomad-ameba-link-service-dev-role",
      "arn:aws:iam::969009837416:role/aomad-ameba-link-service-stage-role"]
    }
  }
}

data "aws_iam_policy_document" "gdsd-sme-gold-ext-role-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type        = "AWS"
      identifiers = ["arn:aws:iam::976206485948:role/gold-contracts-service-api-dev"]
    }
  }
}

data "aws_iam_policy_document" "gdsd-sme-sap-ext-role-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type        = "AWS"
      identifiers = ["arn:aws:iam::513981267147:role/sapd2-msk-role"]
    }
  }
}

data "aws_iam_policy_document" "gdsd-scuba-msk-ext-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type        = "AWS"
      identifiers = ["arn:aws:iam::969009837416:role/aomad-ameba-labelcopy-loader-dev-role"]
    }
  }
}

data "aws_iam_policy_document" "globaldsd-aoma-txmgr-uat-role-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type        = "AWS"
      identifiers = ["arn:aws:iam::969009837416:role/aomad-ecs-aomad2-txmgr-taskdef-task-role"]
    }
  }

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

    principals {
      type        = "AWS"
      identifiers = ["arn:aws:iam::969009837416:role/aomas-ecs-txmgr-taskdef-task-role"]
    }
  }
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type        = "AWS"
      identifiers = ["arn:aws:iam::969009837416:role/ameba-dev-int-worker-node-NodeInstanceRole-LYNM1PK7D6Y5"]
    }
  }

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

    principals {
      type        = "AWS"
      identifiers = ["arn:aws:iam::969009837416:role/aomad2-txmgr-kafka-consumer-service-role"]
    }
  }

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

    principals {
      type        = "AWS"
      identifiers = ["arn:aws:iam::969009837416:role/aomas-txmgr-kafka-consumer-service-role"]
    }
  }
}

data "aws_iam_policy_document" "globaldsd-aoma-txmgr-dev-role-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type        = "AWS"
      identifiers = ["arn:aws:iam::969009837416:role/aomad-ecs-aomad2-txmgr-taskdef-task-role"]
    }
  }

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

    principals {
      type        = "AWS"
      identifiers = ["arn:aws:iam::969009837416:role/aomas-ecs-txmgr-taskdef-task-role"]
    }
  }

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

    principals {
      type        = "AWS"
      identifiers = ["arn:aws:iam::969009837416:role/ameba-dev-int-worker-node-NodeInstanceRole-LYNM1PK7D6Y5"]
    }
  }

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

    principals {
      type        = "AWS"
      identifiers = ["arn:aws:iam::969009837416:role/aomad2-txmgr-kafka-consumer-service-role"]
    }
  }

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

    principals {
      type        = "AWS"
      identifiers = ["arn:aws:iam::969009837416:role/aomas-txmgr-kafka-consumer-service-role"]
    }
  }

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

    principals {
      type        = "AWS"
      identifiers = ["arn:aws:iam::969009837416:role/aomad-ameba-txmgr-worker-sa-role"]
    }
  }
}

data "aws_iam_policy_document" "globaldsd-sa-msk-delivery-dev-role-trust-policy" {

  statement {
    sid    = ""
    effect = "Allow"

    actions = [
      "sts:AssumeRole",
    ]

    principals {
      type = "AWS"
      identifiers = ["arn:aws:iam::058029036333:role/deld-dev-asset-requester",
        "arn:aws:iam::058029036333:role/deld-conversion-role",
        "arn:aws:iam::058029036333:role/deld-EKS-worker-node-Role",
        "arn:aws:iam::058029036333:role/deld-ddexws-taskrole",
        "arn:aws:iam::058029036333:role/deld-deld-wfdash01",
        "arn:aws:iam::058029036333:role/deld-service-discovery-instance-role"
      ]
    }
  }
}

data "aws_iam_policy_document" "globaldsd-sa-msk-delivery-uat-role-trust-policy" {

  statement {
    sid    = ""
    effect = "Allow"

    actions = [
      "sts:AssumeRole",
    ]

    principals {
      type = "AWS"
      identifiers = ["arn:aws:iam::058029036333:role/deld-dev-asset-requester",
        "arn:aws:iam::058029036333:role/deld-EKS-worker-node-Role",
        "arn:aws:iam::058029036333:role/deld-service-discovery-instance-role",
        "arn:aws:iam::058029036333:role/dels2-new-service-discovery-ECSInstanceRole",
        "arn:aws:iam::058029036333:role/deld-ddexws-taskrole",
        "arn:aws:iam::058029036333:role/dels2-conversion-role",
        "arn:aws:iam::058029036333:role/deld-dels2-wfdash01",
        "arn:aws:iam::058029036333:role/bulk-operations-consumer",
        "arn:aws:iam::058029036333:role/deld-stage-asset-requester",
        "arn:aws:iam::058029036333:role/deld-util",
        "arn:aws:iam::058029036333:role/dsrv-stage-eks-cluster-ns-delivery-stage-sa-ddex-exchange-role",
        "arn:aws:iam::058029036333:role/deld-watermarking-role",
        "arn:aws:iam::058029036333:role/delivery-package-archiver-stage"
      ]
    }
  }
}

data "aws_iam_policy_document" "globaldsd-sa-msk-ameba-gql-dev-role-trust-policy" {

  statement {
    sid    = ""
    effect = "Allow"

    actions = [
      "sts:AssumeRole",
    ]

    principals {
      type = "AWS"
      identifiers = ["arn:aws:iam::969009837416:role/aomad-eks-ameba-dev-ns-ameba-private-sa-agql-role",
        "arn:aws:iam::969009837416:role/aomad-ameba-evnt-hist-dev-role",
        "arn:aws:iam::969009837416:role/aomad-eks-ameba-dev-sa-ec-role",
        "arn:aws:iam::969009837416:role/aomad-eks-ameba-stage-ns-ameba-private-sa-ec-role",
      "arn:aws:iam::969009837416:role/aomad-eks-ameba-dev-ns-ameba-dev-sa-ameba-gql-role"]
    }
  }
}


data "aws_iam_policy_document" "globaldsd-sa-msk-ameba-gql-uat-role-trust-policy" {

  statement {
    sid    = ""
    effect = "Allow"

    actions = [
      "sts:AssumeRole",
    ]

    principals {
      type = "AWS"
      identifiers = ["arn:aws:iam::969009837416:role/aomad-eks-ameba-stage-ns-ameba-private-sa-agql-role",
      "arn:aws:iam::969009837416:role/aomad-ameba-evnt-hist-stage-role",
      "arn:aws:iam::969009837416:role/aomad-eks-ameba-dev-ns-ameba-stage-sa-ameba-gql-role",
      "arn:aws:iam::969009837416:role/aomad-eks-ameba-stage-ns-ameba-private-sa-ec-role"
      ]
    }
  }
}


data "aws_iam_policy_document" "gdsd-digsys-dra-msk-role-trust-policy" {

  statement {
    sid    = ""
    effect = "Allow"

    actions = [
      "sts:AssumeRole",
    ]

    principals {
      type = "AWS"
      identifiers = [
        "arn:aws:iam::718729873097:role/digsysd-digsysd-dsmsapp1a01",
        "arn:aws:iam::718729873097:role/digsysd-digsyss-dsmsapp01",
        "arn:aws:iam::718729873097:role/dsms-task-role"
      ]
    }
  }
}

data "aws_iam_policy_document" "gdsd-scuba-msk-role-trust-policy" {
  statement {
    sid    = ""
    effect = "Allow"

    actions = [
      "sts:AssumeRole",
    ]

    principals {
      type = "AWS"
      identifiers = [
        "arn:aws:iam::594705885108:role/service-role/cad-v-rdx-etl",
        "arn:aws:iam::594705885108:role/service-role/cau-v-rdx-etl",
        "arn:aws:iam::210466762672:role/cau-v-stars-rdx-etl-role",
        "arn:aws:iam::210466762672:role/cad-v-stars-rdx-etl-role"
      ]
    }
  }
}

data "aws_iam_policy_document" "gdsd-eom-eai-ext-role-trust-policy" {
  statement {
    sid    = ""
    effect = "Allow"

    actions = [
      "sts:AssumeRole",
    ]

    principals {
      type = "AWS"
      identifiers = [
        "arn:aws:iam::718729873097:role/digsysd-eks-dev-health-monitor-sa-role"
      ]
    }
  }
}

data "aws_iam_policy_document" "globaldsd-sa-msk-mcnv-dev-role-trust-policy" {

  statement {
    sid    = ""
    effect = "Allow"

    actions = [
      "sts:AssumeRole",
    ]

    principals {
      type = "AWS"
      identifiers = [
        "arn:aws:iam::104858398257:role/mcond-del-dev2-ns-mc-del-dev-sa-sme-mc-cs-role",
        "arn:aws:iam::104858398257:role/mcond-del-dev2-ns-mc-del-dev-sa-sme-mc-qms-role",
        "arn:aws:iam::104858398257:role/mcond-del-dev2-ns-mc-del-dev-sa-sme-mc-ws-role",
        "arn:aws:iam::104858398257:role/mcond-del-dev2-ns-mc-del-dev-sa-sme-mc-vw-role",
        "arn:aws:iam::104858398257:role/mcond-del-dev2-ns-mc-del-dev-sa-sme-mc-ccc-role",
        "arn:aws:iam::104858398257:role/mcond-del-dev2-ns-mc-del-dev-sa-sme-mc-dc-role",
        "arn:aws:iam::104858398257:role/mcond-del-dev2-ns-mc-dev-sa-sme-mc-ar-role",
        "arn:aws:iam::104858398257:role/ecsInstanceRole",
        "arn:aws:iam::104858398257:role/ecsTaskExecutionRole",
        "arn:aws:iam::104858398257:role/mcond-del-dev2-ns-mc-del-dev-sa-sme-mc-cms-role",
        "arn:aws:iam::104858398257:role/mcond-del-dev2-ns-mc-del-dev-sa-sme-mc-ccc-role"
      ]
    }
  }
}

data "aws_iam_policy_document" "globaldsd-sa-msk-mcnv-uat-role-trust-policy" {

  statement {
    sid    = ""
    effect = "Allow"

    actions = [
      "sts:AssumeRole",
    ]

    principals {
      type = "AWS"
      identifiers = [
        "arn:aws:iam::104858398257:role/mcond-del-dev2-ns-mc-del-stage-sa-sme-mc-cs-role",
        "arn:aws:iam::104858398257:role/mcond-del-dev2-ns-mc-del-stage-sa-sme-mc-qms-role",
        "arn:aws:iam::104858398257:role/mcond-del-dev2-ns-mc-del-stage-sa-sme-mc-ws-role",
        "arn:aws:iam::104858398257:role/mcond-del-dev2-ns-mc-del-stage-sa-sme-mc-vw-role",
        "arn:aws:iam::104858398257:role/mcond-del-dev2-ns-mc-del-stage-sa-sme-mc-ccc-role",
        "arn:aws:iam::104858398257:role/mcond-del-dev2-ns-mc-del-stage-sa-sme-mc-dc-role",
        "arn:aws:iam::104858398257:role/mcond-del-dev2-ns-mc-del-stage-sa-sme-mc-cms-role",
        "arn:aws:iam::104858398257:role/ecsInstanceRole",
        "arn:aws:iam::104858398257:role/ecsTaskExecutionRole",
        "arn:aws:iam::104858398257:role/mcond-del-dev2-ns-mc-stage-sa-sme-mc-ar-role",
        "arn:aws:iam::104858398257:role/mcond-del-dev2-ns-mc-del-stage-sa-sme-mc-ccc-role"
      ]
    }
  }
}

data "aws_iam_policy_document" "globaldsd-sa-msk-mcnv-promo-uat-role-trust-policy" {

  statement {
    sid    = ""
    effect = "Allow"

    actions = [
      "sts:AssumeRole",
    ]

    principals {
      type = "AWS"
      identifiers = [
        "arn:aws:iam::662765073744:role/mcond-promo-dev2-ns-mc-promo-stage-sa-sme-mc-cs-role",
        "arn:aws:iam::662765073744:role/mcond-promo-dev2-ns-mc-promo-stage-sa-sme-mc-dc-role",
        "arn:aws:iam::662765073744:role/mcond-promo-dev2-ns-mc-promo-stage-sa-sme-mc-qms-role",
        "arn:aws:iam::662765073744:role/promod-ECS-Instance-Role",
        "arn:aws:iam::662765073744:role/promod-ecs-task-role",
        "arn:aws:iam::662765073744:role/mcond-promo-dev2-ns-mc-promo-stage-sa-sme-mc-ws-role"
      ]
    }
  }
}

data "aws_iam_policy_document" "globaldsd-sa-msk-mcnv-promo-dev-role-trust-policy" {

  statement {
    sid    = ""
    effect = "Allow"

    actions = [
      "sts:AssumeRole",
    ]

    principals {
      type = "AWS"
      identifiers = [
        "arn:aws:iam::662765073744:role/mcond-promo-dev2-ns-mc-promo-dev-sa-sme-mc-cs-role",
        "arn:aws:iam::662765073744:role/mcond-promo-dev2-ns-mc-promo-dev-sa-sme-mc-dc-role",
        "arn:aws:iam::662765073744:role/mcond-promo-dev2-ns-mc-promo-dev-sa-sme-mc-qms-role",
        "arn:aws:iam::662765073744:role/promod-ECS-Instance-Role",
        "arn:aws:iam::662765073744:role/promod-ecs-task-role",
        "arn:aws:iam::662765073744:role/mcond-promo-dev2-ns-mc-promo-dev-sa-sme-mc-ws-role"
      ]
    }
  }
}

data "aws_iam_policy_document" "gdsd-sa-aoma-dev-role-trust-policy" {

  statement {
    sid    = ""
    effect = "Allow"

    actions = [
      "sts:AssumeRole",
    ]

    principals {
      type = "AWS"
      identifiers = [
        "arn:aws:iam::969009837416:role/ameba-dev-ns-aoma3-dev-sa-aoma-health-metrics-role",
        "arn:aws:iam::969009837416:role/aomad-eks-ameba-dev-ns-aoma3-dev-sa-aoma-export-service-role"
      ]
    }
  }
}

data "aws_iam_policy_document" "gdsd-sa-aoma-uat-role-trust-policy" {

  statement {
    sid    = ""
    effect = "Allow"

    actions = [
      "sts:AssumeRole",
    ]

    principals {
      type = "AWS"
      identifiers = [
        "arn:aws:iam::969009837416:role/ameba-dev-ns-aoma3-stage-sa-aoma-health-metrics-role",
        "arn:aws:iam::969009837416:role/ameba-dev-ns-aoma3-stage-sa-aoma-export-service-role"
      ]
    }
  }
}

data "aws_iam_policy_document" "KarpenterControllerRole-global-ds-dev-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.eu-central-1.amazonaws.com/id/939E61E4D02D65D92B808DF9961DD07E"]
    }

    condition {
      test     = "StringEquals"
      variable = "oidc.eks.eu-central-1.amazonaws.com/id/939E61E4D02D65D92B808DF9961DD07E:aud"
      values   = ["sts.amazonaws.com"]
    }

    condition {
      test     = "StringEquals"
      variable = "oidc.eks.eu-central-1.amazonaws.com/id/939E61E4D02D65D92B808DF9961DD07E:sub"
      values   = ["system:serviceaccount:kube-system:karpenter"]
    }
  }
}

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" "gdsd-lcsd-akhq-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRole"]

    principals {
      type = "AWS"

      identifiers = [
        "arn:aws:iam::230315258045:role/lcsd-eks-use1-dev-akhq-role",
      ]
    }
  }
}
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" "globaldsd-ddex-general-stage-role-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRoleWithWebIdentity"]

    condition {
      test     = "StringEquals"
      variable = "oidc-provider/oidc.eks.eu-central-1.amazonaws.com/id/16378F7CEED9D9B4BAC6ED56433C1599:sub"
      values   = ["system:serviceaccount:stage-ddex-watcher-general:ddex-watcher"]
    }

    principals {
      type        = "Federated"
      identifiers = ["arn:aws:iam::230315258045:oidc-provider/oidc.eks.eu-central-1.amazonaws.com/id/16378F7CEED9D9B4BAC6ED56433C1599"]
    }
  }

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

    principals {
      type = "AWS"

      identifiers = [
        "arn:aws:iam::230315258045:role/lcsd-EKS-worker-node-Role",
        "arn:aws:iam::230315258045:role/lcsd-eks-sme-lcsdev-euc1-cluster-01-sa-ddex-watcher-stage",
        "arn:aws:iam::230315258045:root",
      ]
    }
  }
}

data "aws_iam_policy_document" "globaldsd-ddex-bytedance-stage-role-trust-policy" {
  statement {
    sid     = ""
    effect  = "Allow"
    actions = ["sts:AssumeRoleWithWebIdentity"]

    condition {
      test     = "StringEquals"
      variable = "oidc-provider/oidc.eks.eu-central-1.amazonaws.com/id/16378F7CEED9D9B4BAC6ED56433C1599:sub"
      values   = ["system:serviceaccount:stage-ddex-watcher-bytedance:ddex-watcher"]
    }

    principals {
      type        = "Federated"
      identifiers = ["arn:aws:iam::230315258045:oidc-provider/oidc.eks.eu-central-1.amazonaws.com/id/16378F7CEED9D9B4BAC6ED56433C1599"]
    }
  }

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

    principals {
      type = "AWS"

      identifiers = [
        "arn:aws:iam::230315258045:role/lcsd-EKS-worker-node-Role",
        "arn:aws:iam::230315258045:role/lcsd-eks-sme-lcsdev-euc1-cluster-01-sa-ddex-watcher-stage",
        "arn:aws:iam::230315258045:root",
      ]
    }
  }
}

#data "aws_iam_policy_document" "RDS-role-for-lambda-trust-policy" {
#  statement {
#    sid     = ""
#    effect  = "Allow"
#    actions = ["sts:AssumeRole"]

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


data "aws_iam_policy_document" "globalds_RDS_snapshot_lambda-role-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        = "Service"
      identifiers = ["rds-export.aws.internal"]
    }
  }

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

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

data "aws_iam_policy_document" "gdsd-dev-eom2app-role-trust-policy" {
  statement {
    sid    = ""
    effect = "Allow"

    actions = [
      "sts:AssumeRole",
    ]

    principals {
      type = "AWS"
      identifiers = [
        "arn:aws:iam::718729873097:role/digsysd-digsysd-eai2app01"
      ]
    }
  }
}

data "aws_iam_policy_document" "gdsd-uat-eom2app-role-trust-policy" {
  statement {
    sid    = ""
    effect = "Allow"

    actions = [
      "sts:AssumeRole",
    ]

    principals {
      type = "AWS"
      identifiers = [
        "arn:aws:iam::718729873097:role/digsysd-digsysd-eai2app01"
      ]
    }
  }
}
