resource "aws_iam_policy" "cloudops-instance-policy" {
  description = "Contains CloudWatchAgentAdminPolicy, AmazonSSMManagedInstanceCore, AmazonEC2ReadOnlyAccess, AmazonVPCReadOnlyAccess, AmazonS3ReadOnlyAccess, AWSCloudTrailReadOnlyAccess, AmazonRDSReadOnlyAccess, CloudWatchReadOnlyAccess"
  name        = "cloudops-instance-policy"
  path        = var.path
  policy      = data.aws_iam_policy_document.cloudops-instance-policy.json
}

resource "aws_iam_policy" "GSIRT_AWS_S3AccessLog_Collection" {
  description = "Policy to allow GSIRT to collect Access Logs"
  name        = "GSIRT_AWS_S3AccessLog_Collection"
  path        = var.path
  policy      = data.aws_iam_policy_document.GSIRT_AWS_S3AccessLog_Collection.json
}

resource "aws_iam_policy" "waf" {
  description = "waf"
  name        = "waf"
  path        = var.path
  policy      = data.aws_iam_policy_document.waf.json
}

resource "aws_iam_policy" "AmazonEKS_EFS_CSI_Driver_Policy" {
  name   = "AmazonEKS_EFS_CSI_Driver_Policy"
  path   = var.path
  policy = data.aws_iam_policy_document.AmazonEKS_EFS_CSI_Driver_Policy.json
}

resource "aws_iam_policy" "RDS-Copy-Snapshot-Deny" {
  name   = "RDS-Copy-Snapshot-Deny"
  path   = var.path
  policy = data.aws_iam_policy_document.RDS-Copy-Snapshot-Deny.json
}
resource "aws_iam_policy" "grpsd_dudi001_secretsmanager_read" {
  name        = "grpsd-dudi001-secretsmanager-read"
  description = "Allows grpsd-dudi001 to read rdx/usm-client-secret-dev from Secrets Manager"
  policy      = data.aws_iam_policy_document.grpsd_dudi001_secretsmanager_read.json
}

resource "aws_iam_policy" "lblschd-aws-config-policy" {
  name   = "lblschd-aws-config-policy"
  path   = var.path
  policy = data.aws_iam_policy_document.lblschd-aws-config-policy.json
}

resource "aws_iam_policy" "AssumeRoleWithWebIdentity" {
  name   = "AssumeRoleWithWebIdentity"
  path   = var.path
  policy = data.aws_iam_policy_document.AssumeRoleWithWebIdentity.json
  tags = {
    eiso-exception = "aws.04.10"
  }
}

resource "aws_iam_policy" "lblschd-lcs-dev-grps-localenv-S3-policy" {
  name   = "lblschd-lcs-dev-grps-localenv-S3-policy"
  path   = var.path
  policy = data.aws_iam_policy_document.lblschd-lcs-dev-grps-localenv-S3-policy.json
}

resource "aws_iam_policy" "AWS_Events_Invoke_Inspector_Assessment_Template" {
  name   = "AWS_Events_Invoke_Inspector_Assessment_Template"
  path   = "/service-role/"
  policy = data.aws_iam_policy_document.AWS_Events_Invoke_Inspector_Assessment_Template.json
}

resource "aws_iam_policy" "sme-eros-rdx-eks-role-assume-role-access" {
  description = "sme-eros-rdx-eks-role-assume-role-access"
  name        = "sme-eros-rdx-eks-role-assume-role-access"
  path        = var.path
  policy      = data.aws_iam_policy_document.sme-eros-rdx-eks-role-assume-role-access.json
}

resource "aws_iam_policy" "CloudOpsDenyIAM" {
  name   = "CloudOpsDenyIAM"
  path   = var.path
  policy = data.aws_iam_policy_document.CloudOpsDenyIAM.json
}

resource "aws_iam_policy" "secretsmanagerreadonly" {
  name   = "secretsmanagerreadonly"
  path   = var.path
  policy = data.aws_iam_policy_document.secretsmanagerreadonly.json
}

resource "aws_iam_policy" "ddex-cross-account-policy" {
  description = "ddex-cross-account-policy"
  name        = "ddex-cross-account-policy"
  path        = var.path
  policy      = data.aws_iam_policy_document.ddex-cross-account-policy.json
}

resource "aws_iam_policy" "cost-explore-ro" {
  description = "Read cost explorer service"
  name        = "cost-explore-ro"
  path        = var.path
  policy      = data.aws_iam_policy_document.cost-explore-ro.json
}

resource "aws_iam_policy" "SecretsManagerRDSPostgreSQLRotationSingleUserRolePolicy1" {
  name   = "SecretsManagerRDSPostgreSQLRotationSingleUserRolePolicy1"
  path   = var.path
  policy = data.aws_iam_policy_document.SecretsManagerRDSPostgreSQLRotationSingleUserRolePolicy1.json
}

resource "aws_iam_policy" "Dev-Grps-1-kms" {
  name   = "Dev-Grps-1-kms"
  path   = var.path
  policy = data.aws_iam_policy_document.Dev-Grps-1-kms.json
}

resource "aws_iam_policy" "globaldsd-lcsd-eks-euc1-stage-assume-role-access-policy" {
  description = "globaldsd-lcsd-eks-euc1-stage-assume-role-access-policy"
  name        = "globaldsd-lcsd-eks-euc1-stage-assume-role-access-policy"
  path        = var.path
  policy      = data.aws_iam_policy_document.globaldsd-lcsd-eks-euc1-stage-assume-role-access-policy.json
  tags = {
    "JIRA" = "CLOUDOPS-10193"
  }
}

resource "aws_iam_policy" "globaldsd-lcsd-eks-euc1-dev-assume-role-access-policy" {
  description = "globaldsd-lcsd-eks-euc1-dev-assume-role-access-policy"
  name        = "globaldsd-lcsd-eks-euc1-dev-assume-role-access-policy"
  path        = var.path
  policy      = data.aws_iam_policy_document.globaldsd-lcsd-eks-euc1-dev-assume-role-access-policy.json
  tags = {
    "JIRA" = "CLOUDOPS-11746"
  }
}

resource "aws_iam_policy" "sme-globaldsd-ddex-qa-assume-role-access" {
  description = "sme-globaldsd-ddex-qa-assume-role-access"
  name        = "sme-globaldsd-ddex-qa-assume-role-access"
  path        = var.path
  policy      = data.aws_iam_policy_document.sme-globaldsd-ddex-qa-assume-role-access.json
}

resource "aws_iam_policy" "AWSIngressControllerIAMPolicy" {
  name   = "AWSIngressControllerIAMPolicy"
  path   = var.path
  policy = data.aws_iam_policy_document.AWSIngressControllerIAMPolicy.json
}


resource "aws_iam_policy" "SecretsManagerRDSPostgreSQLRotationMultiUserRolePolicy3" {
  name   = "SecretsManagerRDSPostgreSQLRotationMultiUserRolePolicy3"
  path   = var.path
  policy = data.aws_iam_policy_document.SecretsManagerRDSPostgreSQLRotationMultiUserRolePolicy3.json
}

resource "aws_iam_policy" "DeepSecurity-d8739381f" {
  name   = "DeepSecurity-d8739381f"
  path   = var.path
  policy = data.aws_iam_policy_document.DeepSecurity-d8739381f.json
}

resource "aws_iam_policy" "alb-ingress-controller-policy" {
  description = "alb-ingress-controller-policy"
  name        = "alb-ingress-controller-policy"
  path        = var.path
  policy      = data.aws_iam_policy_document.alb-ingress-controller-policy.json
  tags = {
    "Name" = "alb-ingress-controller-policy"
  }
  tags_all = {
    "Name" = "alb-ingress-controller-policy"
  }
}

resource "aws_iam_policy" "AWSLoadBalancerControllerIAMPolicy" {
  name   = "AWSLoadBalancerControllerIAMPolicy"
  path   = var.path
  policy = data.aws_iam_policy_document.AWSLoadBalancerControllerIAMPolicy.json
}

resource "aws_iam_policy" "grpsd-localenv-access-policy" {
  description = "grpsd-localenv-access-policy"
  name        = "grpsd-localenv-access-policy"
  path        = var.path
  policy      = data.aws_iam_policy_document.grpsd-localenv-access-policy.json
}

resource "aws_iam_policy" "root" {
  name   = "root"
  path   = var.path
  policy = data.aws_iam_policy_document.root.json
}

resource "aws_iam_policy" "lblschd-portal-policy" {
  description = "Cloudops portal policy"
  name        = "lblschd-portal-policy"
  path        = var.path
  policy      = data.aws_iam_policy_document.lblschd-portal-policy.json
}

resource "aws_iam_policy" "DatadogAWSIntegrationPolicy" {
  description = "DatadogAWSIntegrationPolicy"
  name        = "DatadogAWSIntegrationPolicy"
  path        = var.path
  policy      = data.aws_iam_policy_document.DatadogAWSIntegrationPolicy.json
}

resource "aws_iam_policy" "GSIRT_AWS_Monitoring_Role-DescribePolicy" {
  name   = "GSIRT_AWS_Monitoring_Role-DescribePolicy"
  path   = var.path
  policy = data.aws_iam_policy_document.GSIRT_AWS_Monitoring_Role-DescribePolicy.json
}

resource "aws_iam_policy" "efsfullaccess" {
  name   = "efsfullaccess"
  path   = var.path
  policy = data.aws_iam_policy_document.efsfullaccess.json
}

resource "aws_iam_policy" "lblschd-lcs-dev-grps-localenv-S3-ReadOnly-policy" {
  name   = "lblschd-lcs-dev-grps-localenv-S3-ReadOnly-policy"
  path   = var.path
  policy = data.aws_iam_policy_document.lblschd-lcs-dev-grps-localenv-S3-ReadOnly-policy.json
}

resource "aws_iam_policy" "SecretsManagerRDSPostgreSQLRotationMultiUserRolePolicy2" {
  name   = "SecretsManagerRDSPostgreSQLRotationMultiUserRolePolicy2"
  path   = var.path
  policy = data.aws_iam_policy_document.SecretsManagerRDSPostgreSQLRotationMultiUserRolePolicy2.json
}

resource "aws_iam_policy" "WorkspaceFullAccess" {
  name   = "WorkspaceFullAccess"
  path   = var.path
  policy = data.aws_iam_policy_document.WorkspaceFullAccess.json
}

resource "aws_iam_policy" "SecretsManagerRDSPostgreSQLRotationSingleUserRolePolicy0" {
  name   = "SecretsManagerRDSPostgreSQLRotationSingleUserRolePolicy0"
  path   = var.path
  policy = data.aws_iam_policy_document.SecretsManagerRDSPostgreSQLRotationSingleUserRolePolicy0.json
}

resource "aws_iam_policy" "grpsd-rdx-eks-secret-manager-access-policy" {
  description = "grpsd-rdx-eks-secret-manager-access-policy"
  name        = "grpsd-rdx-eks-secret-manager-access-policy"
  path        = var.path
  policy      = data.aws_iam_policy_document.grpsd-rdx-eks-secret-manager-access-policy.json
}

resource "aws_iam_policy" "oneClick_flowlogsRole_1590571670767" {
  name   = "oneClick_flowlogsRole_1590571670767"
  path   = var.path
  policy = data.aws_iam_policy_document.oneClick_flowlogsRole_1590571670767.json
}

resource "aws_iam_policy" "lblschd-trendmicro_esdomain_policy" {
  description = "Policy for accessing centralized tmds es domain"
  name        = "lblschd-trendmicro_esdomain_policy"
  path        = var.path
  policy      = data.aws_iam_policy_document.lblschd-trendmicro_esdomain_policy.json
}



resource "aws_iam_policy" "SecretsManagerRDSPostgreSQLRotationMultiUserRolePolicy1" {
  name   = "SecretsManagerRDSPostgreSQLRotationMultiUserRolePolicy1"
  path   = var.path
  policy = data.aws_iam_policy_document.SecretsManagerRDSPostgreSQLRotationMultiUserRolePolicy1.json
}

resource "aws_iam_policy" "rds-db-connect-1" {
  description = "For CLOUDOPS-5678"
  name        = "rds-db-connect-1"
  path        = var.path
  policy      = data.aws_iam_policy_document.rds-db-connect-1.json
}

resource "aws_iam_policy" "oneClick_Cognito_grps_kibana_usersAuth_Role_1618238175887" {
  name   = "oneClick_Cognito_grps_kibana_usersAuth_Role_1618238175887"
  path   = var.path
  policy = data.aws_iam_policy_document.oneClick_Cognito_grps_kibana_usersAuth_Role_1618238175887.json
}

resource "aws_iam_policy" "grps-dev-policy" {
  name   = "grps-dev-policy"
  path   = var.path
  policy = data.aws_iam_policy_document.grps-dev-policy.json
}

resource "aws_iam_policy" "Elasticsearch-policy" {
  description = "Elasticsearch-policy"
  name        = "Elasticsearch-policy"
  path        = var.path
  policy      = data.aws_iam_policy_document.Elasticsearch-policy.json
  tags = {
    "Name" = "Elasticsearch-policy"
  }
}

resource "aws_iam_policy" "CWLogs-Put" {
  name   = "CWLogs-Put"
  path   = var.path
  policy = data.aws_iam_policy_document.CWLogs-Put.json
}

resource "aws_iam_policy" "grps-dba-dev" {
  name   = "grps-dba-dev"
  path   = var.path
  policy = data.aws_iam_policy_document.grps-dba-dev.json
}

resource "aws_iam_policy" "lblcpy-ses-access-policy" {
  description = "lblcpy-ses-access-policy"
  name        = "lblcpy-ses-access-policy"
  path        = var.path
  policy      = data.aws_iam_policy_document.lblcpy-ses-access-policy.json
}

resource "aws_iam_policy" "lcsd-ddex-role-sts" {
  name   = "lcsd-ddex-role-sts"
  path   = var.path
  policy = data.aws_iam_policy_document.lcsd-ddex-role-sts.json
}

resource "aws_iam_policy" "kafka" {
  name   = "kafka"
  path   = var.path
  policy = data.aws_iam_policy_document.kafka.json
}

resource "aws_iam_policy" "LambdaS3Cloudwatch" {
  name   = "LambdaS3Cloudwatch"
  path   = var.path
  policy = data.aws_iam_policy_document.LambdaS3Cloudwatch.json
}


resource "aws_iam_policy" "sme-eros-rdx-localenv-s3-read-access" {
  description = "sme-eros-rdx-localenv-s3-read-access"
  name        = "sme-eros-rdx-localenv-s3-read-access"
  path        = var.path
  policy      = data.aws_iam_policy_document.sme-eros-rdx-localenv-s3-read-access.json
}



resource "aws_iam_policy" "labcpyd-eks-lcsd-euc1-cluster-01-sa-grps-postgres-localdb-policy" {
  name   = "labcpyd-eks-lcsd-euc1-cluster-01-sa-grps-postgres-localdb-policy"
  path   = var.path
  policy = data.aws_iam_policy_document.labcpyd-eks-lcsd-euc1-cluster-01-sa-grps-postgres-localdb-policy.json
}

resource "aws_iam_policy" "labcpyd-trustedAdvisor-ReadOnly" {
  name   = "labcpyd-trustedAdvisor-ReadOnly"
  path   = var.path
  policy = data.aws_iam_policy_document.labcpyd-trustedAdvisor-ReadOnly.json
}

resource "aws_iam_policy" "labcpyd-serets_manager_database_policy" {
  name   = "labcpyd-serets_manager_database_policy"
  path   = var.path
  policy = data.aws_iam_policy_document.labcpyd-serets_manager_database_policy.json
}

resource "aws_iam_policy" "labcpyd-secrets_manager_non-database_policy" {
  name   = "labcpyd-secrets_manager_non-database_policy"
  path   = var.path
  policy = data.aws_iam_policy_document.labcpyd-secrets_manager_non-database_policy.json
}

resource "aws_iam_policy" "cloudops-secrets-manager-database-deny" {
  name   = "cloudops-secrets-manager-database-deny"
  path   = var.path
  policy = data.aws_iam_policy_document.cloudops-secrets-manager-database-deny.json
}

resource "aws_iam_policy" "grps-test-deploy-stage-sme-eks-dev-euc1-policy" {
  name   = "grps-test-deploy-stage-sme-eks-dev-euc1-policy"
  path   = var.path
  policy = data.aws_iam_policy_document.grps-test-deploy-stage-sme-eks-dev-euc1-policy.json
}

resource "aws_iam_policy" "lcsd-github-actions-policy" {
  name   = "lcsd-github-actions-policy"
  path   = var.path
  policy = data.aws_iam_policy_document.lcsd-github-actions-policy.json
}

resource "aws_iam_policy" "lbcpyd-pganalyze-policy" {
  name   = "lbcpyd-pganalyze-policy"
  path   = var.path
  policy = data.aws_iam_policy_document.lbcpyd-pganalyze-policy.json
}

resource "aws_iam_policy" "lbcpyd-rrmobile-wo-policy" {
  name   = "lbcpyd-rrmobile-wo-policy"
  path   = var.path
  policy = data.aws_iam_policy_document.lbcpyd-rrmobile-wo-policy.json
}

resource "aws_iam_policy" "KubeCostFederatedRoleIAMPolicy" {
  description = "Access s3 bucket in core cloud shared account"
  name        = "KubeCostFederatedRoleIAMPolicy"
  path        = var.path
  policy      = data.aws_iam_policy_document.KubeCostFederatedRoleIAMPolicy.json
}

resource "aws_iam_policy" "lcsd-eks-euc1-pganalyze-deployment-policy" {
  name   = "lcsd-eks-euc1-pganalyze-deployment-policy"
  path   = var.path
  policy = data.aws_iam_policy_document.lcsd-eks-euc1-pganalyze-deployment-policy.json
}

resource "aws_iam_policy" "lcsd-eks-euc1-pganalyze-collector-prod-policy" {
  name   = "lcsd-eks-euc1-pganalyze-collector-prod-policy"
  path   = var.path
  policy = data.aws_iam_policy_document.lcsd-eks-euc1-pganalyze-collector-prod-policy.json
}

resource "aws_iam_policy" "jodconverter-ecr-euc1-policy" {
  name        = "jodconverter-ecr-euc1-policy"
  description = "Policy for accessing ECR and deploying to DEV cluster"
  policy      = data.aws_iam_policy_document.jodconverter-ecr-euc1-policy.json
}

resource "aws_iam_policy" "jodconverter-ecr-use1-policy" {
  name        = "jodconverter-ecr-use1-policy"
  description = "Policy for accessing ECR and deploying to DEV cluster"
  policy      = data.aws_iam_policy_document.jodconverter-ecr-use1-policy.json
}

# resource "aws_iam_policy" "KarpenterControllerPolicy-label-copy-dev-use1" {
#   name   = "KarpenterControllerPolicy-label-copy-dev-use1"
#   description = "Karpenter controller IAM policy"
#   path   = var.path
#   policy = data.aws_iam_policy_document.KarpenterControllerPolicy-label-copy-dev-use1.json
# }

# resource "aws_iam_policy" "KarpenterControllerPolicy-label-copy-dev-euc1" {
#   name   = "KarpenterControllerPolicy-label-copy-dev-euc1"
#   description = "Karpenter controller IAM policy"
#   path   = var.path
#   policy = data.aws_iam_policy_document.KarpenterControllerPolicy-label-copy-dev-euc1.json
# }

resource "aws_iam_policy" "grps-testpod-sme-eks-use1-dev-policy" {
  name   = "grps-testpod-sme-eks-use1-dev-policy"
  path   = var.path
  policy = data.aws_iam_policy_document.grps-testpod-sme-eks-use1-dev-policy.json
}

resource "aws_iam_policy" "grpsd-arvato-policy" {
  name   = "grpsd-arvato-policy"
  path   = var.path
  policy = data.aws_iam_policy_document.grpsd-arvato-policy-document.json
}

resource "aws_iam_policy" "lambda-monitor-rds-subnet-ips-policy" {
  name        = "lambda-monitor-rds-subnet-ips-policy"
  description = "Policy for Lambda function to monitor RDS subnet IPs"
  path        = var.path
  policy      = data.aws_iam_policy_document.lambda-monitor-rds-subnet-ips-policy.json
}

resource "aws_iam_policy" "eks-use1-dev-ghrunner-policy" {
  name   = "eks-use1-dev-ghrunner-policy"
  path   = var.path
  policy = data.aws_iam_policy_document.eks-use1-dev-ghrunner-policy-document.json
}

resource "aws_iam_policy" "lcsd-eks-use1-dev-akhq-access-policy" {
  name   = "lcsd-eks-use1-dev-akhq-access-policy"
  path   = var.path
  policy = data.aws_iam_policy_document.lcsd-eks-use1-dev-akhq-access-policy.json
}

resource "aws_iam_policy" "lcsd-eks-use1-dev-akhq-secrets-manager-policy" {
  name   = "lcsd-eks-use1-dev-akhq-secrets-manager-policy"
  path   = var.path
  policy = data.aws_iam_policy_document.lcsd-eks-use1-dev-akhq-secrets-manager-policy.json
}

resource "aws_iam_policy" "lcsd-eks-use1-dev-akhq-S3-ReadOnly-policy" {
  name   = "lcsd-eks-use1-dev-akhq-S3-ReadOnly-policy"
  path   = var.path
  policy = data.aws_iam_policy_document.lcsd-eks-use1-dev-akhq-S3-ReadOnly-policy.json
}

resource "aws_iam_policy" "lbcpyd-test-user-s3-access" {
  name   = "lbcpyd-test-user-s3-access"
  path   = var.path
  policy = data.aws_iam_policy_document.lbcpyd-test-user-s3-access.json
}

resource "aws_iam_policy" "lcsd-eks-euc1-prometheus-secretmanager-ro-policy" {
  name   = "lcsd-eks-euc1-prometheus-secretmanager-ro-policy"
  path   = var.path
  policy = data.aws_iam_policy_document.lcsd-eks-euc1-prometheus-secretmanager-ro.json
}

resource "aws_iam_policy" "lcsd-eks-use1-prometheus-secretmanager-ro-policy" {
  name   = "lcsd-eks-use1-prometheus-secretmanager-ro-policy"
  path   = var.path
  policy = data.aws_iam_policy_document.lcsd-eks-use1-prometheus-secretmanager-ro.json
}

resource "aws_iam_policy" "bcm-pricing-calculator" {
  name   = "bcm-pricing-calculator"
  path   = var.path
  policy = data.aws_iam_policy_document.bcm-pricing-calculator.json
}

resource "aws_iam_policy" "lcsd-file-repo-euc1-replication-policy" {
  name   = "lcsd-file-repo-euc1-replication-policy"
  path   = var.path
  policy = data.aws_iam_policy_document.lcsd-file-repo-euc1-replication.json
}

resource "aws_iam_policy" "grps-dev-lambda-fullaccess-policy" {
  name   = "grps-dev-lambda-fullaccess-policy"
  path   = var.path
  policy = data.aws_iam_policy_document.grps-dev-lambda-fullaccess-policy.json
}

resource "aws_iam_policy" "grps-dev-cloudwatch-fullaccess-policy" {
  name   = "grps-dev-cloudwatch-fullaccess-policy"
  path   = var.path
  policy = data.aws_iam_policy_document.grps-dev-cloudwatch-fullaccess-policy.json
}

resource "aws_iam_policy" "grps-dev-cloudwatch-logs-fullaccess-policy" {
  name   = "grps-dev-cloudwatch-logs-fullaccess-policy"
  path   = var.path
  policy = data.aws_iam_policy_document.grps-dev-cloudwatch-logs-fullaccess-policy.json
}

resource "aws_iam_policy" "grps-dev-sns-fullaccess-policy" {
  name   = "grps-dev-sns-fullaccess-policy"
  path   = var.path
  policy = data.aws_iam_policy_document.grps-dev-sns-fullaccess-policy.json
}

resource "aws_iam_policy" "openobserve-s3-policy" {
  name        = "openobserve-s3-policy"
  description = "Policy for OpenObserve to access S3 bucket"
  policy      = data.aws_iam_policy_document.openobserve-s3-access.json
}

resource "aws_iam_policy" "grps_dev_ses_email_policy" {
  name        = "grps-dev-ses-email-policy"
  description = "SES send email policy for GRPS"
  policy      = data.aws_iam_policy_document.ses_email_policy_document.json
}
