All Downloads are FREE. Search and download functionalities are using the official Maven repository.

json.schema.security.credentials.gcpCredentials.json Maven / Gradle / Ivy

There is a newer version: 1.6.0-rc1
Show newest version
{
  "$id": "https://open-metadata.org/schema/security/credentials/gcpCredentials.json",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "title": "GCPCredentials",
  "description": "GCP credentials configs.",
  "type": "object",
  "javaType": "org.openmetadata.schema.security.credentials.GCPCredentials",
  "definitions": {
    "gcpCredentialsPath": {
      "title": "GCP Credentials Path",
      "description": "Pass the path of file containing the GCP credentials info",
      "type": "object",
      "properties": {
        "type": {
          "title": "Credentials Type",
          "description": "Google Cloud Platform account type.",
          "type": "string",
          "default": "gcp_credential_path",
          "const": "gcp_credential_path"
        },
        "path": {
          "title": "Path",
          "description": "Path of the file containing the GCP credentials info",
          "type": "string"
        },
        "projectId": {
          "title": "Project ID",
          "description": "GCP Project ID to parse metadata from",
          "type": "string",
          "default": null
        }
      }
    },
    "GCPImpersonateServiceAccountValues": {
      "title": "GCP impersonate service account values",
      "description": "Pass the values to impersonate a service account of Google Cloud",
      "type": "object",
      "properties": {
        "impersonateServiceAccount": {
          "title": "Target Service Account Email",
          "description": "The impersonated service account email",
          "type": "string"
        },
        "lifetime": {
          "title": "Lifetime",
          "description": "Number of seconds the delegated credential should be valid",
          "type": "integer",
          "default": 3600
        }
      }
    }
  },
  "properties": {
    "gcpConfig": {
      "title": "GCP Credentials Configuration",
      "description": "We support two ways of authenticating to GCP i.e via GCP Credentials Values or GCP Credentials Path",
      "oneOf": [
        {
          "$ref": "gcpValues.json"
        },
        {
          "$ref": "#/definitions/gcpCredentialsPath"
        },
        {
          "$ref": "gcpExternalAccount.json"
        }
      ]
    },
    "gcpImpersonateServiceAccount": {
      "title": "GCP Impersonate Service Account Configuration",
      "description": "we enable the authenticated service account to impersonate another service account",
      "$ref": "#/definitions/GCPImpersonateServiceAccountValues"
    }
  },
  "additionalProperties": false,
  "required": [
    "gcpConfig"
  ]
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy