{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://raw.githubusercontent.com/api-evangelist/amazon-iam-access-analyzer/refs/heads/main/json-schema/iam-access-analyzer-configuration-schema.json",
  "title": "Configuration",
  "description": "Access control configuration structures for your resource. You specify the configuration as a type-value pair. You can specify only one type of access control configuration.",
  "type": "object",
  "properties": {
    "ebsSnapshot": {
      "allOf": [
        {
          "$ref": "#/components/schemas/EbsSnapshotConfiguration"
        },
        {
          "description": "The access control configuration is for an Amazon EBS volume snapshot."
        }
      ]
    },
    "ecrRepository": {
      "allOf": [
        {
          "$ref": "#/components/schemas/EcrRepositoryConfiguration"
        },
        {
          "description": "The access control configuration is for an Amazon ECR repository."
        }
      ]
    },
    "iamRole": {
      "allOf": [
        {
          "$ref": "#/components/schemas/IamRoleConfiguration"
        },
        {
          "description": "The access control configuration is for an IAM role. "
        }
      ]
    },
    "efsFileSystem": {
      "allOf": [
        {
          "$ref": "#/components/schemas/EfsFileSystemConfiguration"
        },
        {
          "description": "The access control configuration is for an Amazon EFS file system."
        }
      ]
    },
    "kmsKey": {
      "allOf": [
        {
          "$ref": "#/components/schemas/KmsKeyConfiguration"
        },
        {
          "description": "The access control configuration is for a KMS key. "
        }
      ]
    },
    "rdsDbClusterSnapshot": {
      "allOf": [
        {
          "$ref": "#/components/schemas/RdsDbClusterSnapshotConfiguration"
        },
        {
          "description": "The access control configuration is for an Amazon RDS DB cluster snapshot."
        }
      ]
    },
    "rdsDbSnapshot": {
      "allOf": [
        {
          "$ref": "#/components/schemas/RdsDbSnapshotConfiguration"
        },
        {
          "description": "The access control configuration is for an Amazon RDS DB snapshot."
        }
      ]
    },
    "secretsManagerSecret": {
      "allOf": [
        {
          "$ref": "#/components/schemas/SecretsManagerSecretConfiguration"
        },
        {
          "description": "The access control configuration is for a Secrets Manager secret."
        }
      ]
    },
    "s3Bucket": {
      "allOf": [
        {
          "$ref": "#/components/schemas/S3BucketConfiguration"
        },
        {
          "description": "The access control configuration is for an Amazon S3 Bucket. "
        }
      ]
    },
    "snsTopic": {
      "allOf": [
        {
          "$ref": "#/components/schemas/SnsTopicConfiguration"
        },
        {
          "description": "The access control configuration is for an Amazon SNS topic"
        }
      ]
    },
    "sqsQueue": {
      "allOf": [
        {
          "$ref": "#/components/schemas/SqsQueueConfiguration"
        },
        {
          "description": "The access control configuration is for an Amazon SQS queue. "
        }
      ]
    }
  }
}