json.schema.security.credentials.gcpCredentials.json Maven / Gradle / Ivy
{
"$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