Policy types for @turbot/servicenow-azure-keyvault

Azure > Key Vault > Key > ServiceNow

URI
tmod:@turbot/servicenow-azure-keyvault#/policy/types/keyServiceNow
Targets

Azure > Key Vault > Key > ServiceNow > Configuration Item

Synchronize the data for the Azure > Key Vault > Key based on the policies Azure > Key Vault > Key > ServiceNow > Configuration Item > *

The Configuration Item control is responsible for automatically synchronizing records in a designated ServiceNow table, maintaining an up-to-date reflection of the Azure > Key Vault > Key information within the ServiceNow CMDB.

URI
tmod:@turbot/servicenow-azure-keyvault#/policy/types/keyServiceNowConfigurationItem
Valid Value
[
"Skip",
"Check: Archived",
"Check: Deleted",
"Check: Sync",
"Enforce: Archived",
"Enforce: Deleted",
"Enforce: Sync",
"Enforce: Sync, archive on delete"
]
Schema
{
"type": "string",
"enum": [
"Skip",
"Check: Archived",
"Check: Deleted",
"Check: Sync",
"Enforce: Archived",
"Enforce: Deleted",
"Enforce: Sync",
"Enforce: Sync, archive on delete"
],
"example": [
"Skip"
],
"default": "Skip"
}

Azure > Key Vault > Key > ServiceNow > Configuration Item > Record

The policy facilitates the accurate representation of cloud resource within the ServiceNow environment, ensuring that critical data is effectively mapped and managed. Attribute of an Azure > Key Vault > Key is systematically mapped to a specific column in a ServiceNow table.

The policy allows enabling organizations to select and map only those attributes that are most relevant to their operational needs. It significantly reduces the manual effort involved in data transfer and minimizes the risk of errors, thereby enhancing the overall efficiency of data management.

URI
tmod:@turbot/servicenow-azure-keyvault#/policy/types/keyServiceNowConfigurationItemRecord
Default Template Input
"{\n resource: key{\n data\n metadata\n turbot {\n akas\n id\n tags\n title\n }\n }\n}\n"
Default Template
"created_at: {{ $.resource.data.created | dump | safe }}\nenabled: {{ $.resource.data.enabled | dump | safe }}\nid: {{ $.resource.data.id | dump | safe }}\nkey_name: {{ $.resource.data.name | dump | safe }}\nkey_ops: {{ $.resource.data.keyOperations | dump | safe }}\nkey_type: {{ $.resource.data.keyType | dump | safe }}\nkey_uri: {{ $.resource.data.kid | dump | safe }}\nrecovery_level: {{ $.resource.data.recoveryLevel | dump | safe }}\nregion: {{ $.resource.metadata.azure.regionName | dump | safe }}\nresource_group: {{ $.resource.metadata.azure.resourceGroupName | dump | safe }}\nsubscription_id: {{ $.resource.metadata.azure.subscriptionId | dump | safe }}\ntags: {{ $.resource.turbot.tags | dump | safe }}\nupdated_at: {{ $.resource.data.updated | dump | safe }}\n"
Schema
{
"type": "object"
}

Azure > Key Vault > Key > ServiceNow > Configuration Item > Table Definition

This policy specifically allows users to define two key aspects: the name of the ServiceNow table where the Azure > Key Vault > Key data will be stored, and the details of the columns used for archiving purposes.

URI
tmod:@turbot/servicenow-azure-keyvault#/policy/types/keyServiceNowConfigurationItemTableDefinition
Default Template Input
[
"{\n serviceNowInstance: resources(filter: \"resourceTypeId:tmod:@turbot/servicenow#/resource/types/instance level:self limit:1\") {\n items {\n turbot {\n id\n }\n }\n }\n}\n",
"{\n tableDefinition: policyValues(filter: \"policyTypeId:tmod:@turbot/servicenow-azure-keyvault#/policy/types/keyServiceNowTableDefinition resourceId:{{$.serviceNowInstance.items[0].turbot.id}} level:self\") {\n items {\n value\n }\n }\n applicationScope: policyValues(filter: \"policyTypeId:tmod:@turbot/servicenow#/policy/types/serviceNowApplicationScope resourceId:{{$.serviceNowInstance.items[0].turbot.id}} level:self\") {\n items {\n value\n }\n }\n}\n"
]
Default Template
"tableName: "{%- if $.applicationScope.items | length == 0 or $.tableDefinition.items | length == 0 %} {%- else %}{{$.applicationScope.items[0].value}}_{{$.tableDefinition.items[0].value.table.name | lower}}{% endif %}"\n"
Schema
{
"type": "object",
"additionalProperties": false,
"required": [
"tableName"
],
"properties": {
"tableName": {
"type": "string"
},
"archiveColumns": {
"type": "object"
}
}
}

Azure > Key Vault > Key > ServiceNow > Table

Configure a Table for Azure > Key Vault > Key resource type in ServiceNow via the Azure > Key Vault > Key > ServiceNow > Table > * policies.

URI
tmod:@turbot/servicenow-azure-keyvault#/policy/types/keyServiceNowTable
Valid Value
[
"Skip",
"Check: Configured",
"Enforce: Configured"
]
Schema
{
"type": "string",
"enum": [
"Skip",
"Check: Configured",
"Enforce: Configured"
],
"example": [
"Skip"
],
"default": "Skip"
}

Azure > Key Vault > Key > ServiceNow > Table > Definition

The policy enables the definition of ServiceNow table properties, including its name and the base table from which it extends, and details the specific columns required for representing Azure > Key Vault > Key data.

URI
tmod:@turbot/servicenow-azure-keyvault#/policy/types/keyServiceNowTableDefinition
Schema
{
"type": "object",
"additionalProperties": false,
"required": [
"table",
"columns"
],
"properties": {
"table": {
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"pattern": "^([0-9a-z_])+$"
},
"label": {
"type": "string"
},
"extendsTable": {
"type": "string",
"pattern": "^([0-9a-z_])+$"
}
}
},
"columns": {
"type": "array",
"description": "An array of columns with their mappings to the CMDB.",
"default": [],
"items": {
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"description": "The name of the column in the table.",
"pattern": "^([0-9a-z_])+$"
},
"label": {
"type": "string",
"description": "The label for the column."
},
"type": {
"description": "The data type of the column.",
"type": "string"
},
"size": {
"type": "integer",
"description": "The length for data type."
}
}
}
}
},
"default": {
"table": {
"name": "guardrails_azure_keyvault_key",
"label": "Azure > Key Vault > Key",
"extendsTable": "cmdb_ci"
},
"columns": [
{
"name": "created_at",
"label": "Created At"
},
{
"name": "enabled",
"label": "Enabled",
"type": "boolean"
},
{
"name": "id",
"label": "ID"
},
{
"name": "key_name",
"label": "Key Name"
},
{
"name": "key_ops",
"label": "Key Operations",
"type": "string",
"size": 1000
},
{
"name": "key_type",
"label": "Key Type"
},
{
"name": "key_uri",
"label": "Key URI"
},
{
"name": "recovery_level",
"label": "Recovery Level"
},
{
"name": "region",
"label": "Region"
},
{
"name": "resource_group",
"label": "Resource Group",
"type": "string",
"size": 200
},
{
"name": "subscription_id",
"label": "Subscription ID"
},
{
"name": "tags",
"label": "Tags",
"type": "string",
"size": 1000
},
{
"name": "updated_at",
"label": "Updated At"
}
]
}
}

Azure > Key Vault > Secret > ServiceNow

URI
tmod:@turbot/servicenow-azure-keyvault#/policy/types/secretServiceNow
Targets

Azure > Key Vault > Secret > ServiceNow > Configuration Item

Synchronize the data for the Azure > Key Vault > Secret based on the policies Azure > Key Vault > Secret > ServiceNow > Configuration Item > *

The Configuration Item control is responsible for automatically synchronizing records in a designated ServiceNow table, maintaining an up-to-date reflection of the Azure > Key Vault > Secret information within the ServiceNow CMDB.

URI
tmod:@turbot/servicenow-azure-keyvault#/policy/types/secretServiceNowConfigurationItem
Valid Value
[
"Skip",
"Check: Archived",
"Check: Deleted",
"Check: Sync",
"Enforce: Archived",
"Enforce: Deleted",
"Enforce: Sync",
"Enforce: Sync, archive on delete"
]
Schema
{
"type": "string",
"enum": [
"Skip",
"Check: Archived",
"Check: Deleted",
"Check: Sync",
"Enforce: Archived",
"Enforce: Deleted",
"Enforce: Sync",
"Enforce: Sync, archive on delete"
],
"example": [
"Skip"
],
"default": "Skip"
}

Azure > Key Vault > Secret > ServiceNow > Configuration Item > Record

The policy facilitates the accurate representation of cloud resource within the ServiceNow environment, ensuring that critical data is effectively mapped and managed. Attribute of an Azure > Key Vault > Secret is systematically mapped to a specific column in a ServiceNow table.

The policy allows enabling organizations to select and map only those attributes that are most relevant to their operational needs. It significantly reduces the manual effort involved in data transfer and minimizes the risk of errors, thereby enhancing the overall efficiency of data management.

URI
tmod:@turbot/servicenow-azure-keyvault#/policy/types/secretServiceNowConfigurationItemRecord
Default Template Input
"{\n resource {\n data\n metadata\n turbot {\n akas\n id\n tags\n title\n }\n }\n}\n"
Default Template
"enabled: {{ $.resource.data.enabled | dump | safe }}\nexpires_at: {{ $.resource.data.expires | dump | safe }}\nid: {{ $.resource.data.id | dump | safe }}\nnot_before: {{ $.resource.data.notBefore | dump | safe }}\nrecovery_level: {{ $.resource.data.recoveryLevel | dump | safe }}\nregion: {{ $.resource.metadata.azure.regionName | dump | safe }}\nresource_group: {{ $.resource.metadata.azure.resourceGroupName | dump | safe }}\nsecret_name: {{ $.resource.data.name | dump | safe }}\nsubscription_id: {{ $.resource.metadata.azure.subscriptionId | dump | safe }}\ntags: {{ $.resource.turbot.tags | dump | safe }}\nvault_name: {{ $.resource.metadata.vaultName | dump | safe }}\n"
Schema
{
"type": "object"
}

Azure > Key Vault > Secret > ServiceNow > Configuration Item > Table Definition

This policy specifically allows users to define two key aspects: the name of the ServiceNow table where the Azure > Key Vault > Secret data will be stored, and the details of the columns used for archiving purposes.

URI
tmod:@turbot/servicenow-azure-keyvault#/policy/types/secretServiceNowConfigurationItemTableDefinition
Default Template Input
[
"{\n serviceNowInstance: resources(filter: \"resourceTypeId:tmod:@turbot/servicenow#/resource/types/instance level:self limit:1\") {\n items {\n turbot {\n id\n }\n }\n }\n}\n",
"{\n tableDefinition: policyValues(filter: \"policyTypeId:tmod:@turbot/servicenow-azure-keyvault#/policy/types/secretServiceNowTableDefinition resourceId:{{$.serviceNowInstance.items[0].turbot.id}} level:self\") {\n items {\n value\n }\n }\n applicationScope: policyValues(filter: \"policyTypeId:tmod:@turbot/servicenow#/policy/types/serviceNowApplicationScope resourceId:{{$.serviceNowInstance.items[0].turbot.id}} level:self\") {\n items {\n value\n }\n }\n}\n"
]
Default Template
"tableName: "{%- if $.applicationScope.items | length == 0 or $.tableDefinition.items | length == 0 %} {%- else %}{{$.applicationScope.items[0].value}}_{{$.tableDefinition.items[0].value.table.name | lower}}{% endif %}"\n"
Schema
{
"type": "object",
"additionalProperties": false,
"required": [
"tableName"
],
"properties": {
"tableName": {
"type": "string"
},
"archiveColumns": {
"type": "object"
}
}
}

Azure > Key Vault > Secret > ServiceNow > Table

Configure a Table for Azure > Key Vault > Secret resource type in ServiceNow via the Azure > Key Vault > Secret > ServiceNow > Table > * policies.

URI
tmod:@turbot/servicenow-azure-keyvault#/policy/types/secretServiceNowTable
Valid Value
[
"Skip",
"Check: Configured",
"Enforce: Configured"
]
Schema
{
"type": "string",
"enum": [
"Skip",
"Check: Configured",
"Enforce: Configured"
],
"example": [
"Skip"
],
"default": "Skip"
}

Azure > Key Vault > Secret > ServiceNow > Table > Definition

The policy enables the definition of ServiceNow table properties, including its name and the base table from which it extends, and details the specific columns required for representing Azure > Key Vault > Secret data.

URI
tmod:@turbot/servicenow-azure-keyvault#/policy/types/secretServiceNowTableDefinition
Schema
{
"type": "object",
"additionalProperties": false,
"required": [
"table",
"columns"
],
"properties": {
"table": {
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"pattern": "^([0-9a-z_])+$"
},
"label": {
"type": "string"
},
"extendsTable": {
"type": "string",
"pattern": "^([0-9a-z_])+$"
}
}
},
"columns": {
"type": "array",
"description": "An array of columns with their mappings to the CMDB.",
"default": [],
"items": {
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"description": "The name of the column in the table.",
"pattern": "^([0-9a-z_])+$"
},
"label": {
"type": "string",
"description": "The label for the column."
},
"type": {
"description": "The data type of the column.",
"type": "string"
},
"size": {
"type": "integer",
"description": "The length for data type."
}
}
}
}
},
"default": {
"table": {
"name": "guardrails_azure_keyvault_secret",
"label": "Azure > Key Vault > Secret",
"extendsTable": "cmdb_ci"
},
"columns": [
{
"name": "enabled",
"label": "Enabled",
"type": "boolean"
},
{
"name": "expires_at",
"label": "Expires At"
},
{
"name": "id",
"label": "ID"
},
{
"name": "not_before",
"label": "Not Before"
},
{
"name": "recovery_level",
"label": "Recovery Level"
},
{
"name": "region",
"label": "Region"
},
{
"name": "resource_group",
"label": "Resource Group",
"type": "string",
"size": 200
},
{
"name": "secret_name",
"label": "Secret Name"
},
{
"name": "subscription_id",
"label": "Subscription ID"
},
{
"name": "tags",
"label": "Tags",
"type": "string",
"size": 1000
},
{
"name": "vault_name",
"label": "Vault Name"
}
]
}
}

Azure > Key Vault > Vault > ServiceNow

URI
tmod:@turbot/servicenow-azure-keyvault#/policy/types/vaultServiceNow
Targets

Azure > Key Vault > Vault > ServiceNow > Configuration Item

Synchronize the data for the Azure > Key Vault > Vault based on the policies Azure > Key Vault > Vault > ServiceNow > Configuration Item > *

The Configuration Item control is responsible for automatically synchronizing records in a designated ServiceNow table, maintaining an up-to-date reflection of the Azure > Key Vault > Vault information within the ServiceNow CMDB.

URI
tmod:@turbot/servicenow-azure-keyvault#/policy/types/vaultServiceNowConfigurationItem
Valid Value
[
"Skip",
"Check: Archived",
"Check: Deleted",
"Check: Sync",
"Enforce: Archived",
"Enforce: Deleted",
"Enforce: Sync",
"Enforce: Sync, archive on delete"
]
Schema
{
"type": "string",
"enum": [
"Skip",
"Check: Archived",
"Check: Deleted",
"Check: Sync",
"Enforce: Archived",
"Enforce: Deleted",
"Enforce: Sync",
"Enforce: Sync, archive on delete"
],
"example": [
"Skip"
],
"default": "Skip"
}

Azure > Key Vault > Vault > ServiceNow > Configuration Item > Record

The policy facilitates the accurate representation of cloud resource within the ServiceNow environment, ensuring that critical data is effectively mapped and managed. Attribute of an Azure > Key Vault > Vault is systematically mapped to a specific column in a ServiceNow table.

The policy allows enabling organizations to select and map only those attributes that are most relevant to their operational needs. It significantly reduces the manual effort involved in data transfer and minimizes the risk of errors, thereby enhancing the overall efficiency of data management.

URI
tmod:@turbot/servicenow-azure-keyvault#/policy/types/vaultServiceNowConfigurationItemRecord
Default Template Input
"{\n resource: vault{\n data\n metadata\n turbot {\n akas\n id\n tags\n title\n }\n }\n}\n"
Default Template
"access_policies: {{ $.resource.data.properties.accessPolicies | dump | safe }}\ndiagnostic_settings: {{ $.resource.data.diagnosticSettings | dump | safe }}\nenable_rbac_authorization: {{ $.resource.data.properties.enableRbacAuthorization | dump | safe }}\nenabled_for_deployment: {{ $.resource.data.properties.enabledForDeployment | dump | safe }}\nenabled_for_disk_encryption: {{ $.resource.data.properties.enabledForDiskEncryption | dump | safe }}\nenabled_for_template_deployment: {{ $.resource.data.properties.enabledForTemplateDeployment | dump | safe }}\nid: {{ $.resource.data.id | dump | safe }}\nregion: {{ $.resource.data.location | dump | safe }}\nresource_group: {{ $.resource.metadata.azure.resourceGroupName | dump | safe }}\nsku_family: {{ $.resource.data.properties.sku.family | dump | safe }}\nsku_name: {{ $.resource.data.properties.sku.name | dump | safe }}\nsoft_delete_enabled: {{ $.resource.data.properties.enableSoftDelete | dump | safe }}\nsoft_delete_retention_in_days: {{ $.resource.data.properties.softDeleteRetentionInDays | dump | safe }}\nsubscription_id: {{ $.resource.metadata.azure.subscriptionId | dump | safe }}\ntags: {{ $.resource.turbot.tags | dump | safe }}\ntenant_id: {{ $.resource.data.properties.tenantId | dump | safe }}\ntype: {{ $.resource.data.type | dump | safe }}\nvault_name: {{ $.resource.data.name | dump | safe }}\nvault_uri: {{ $.resource.data.properties.vaultUri | dump | safe }}\n"
Schema
{
"type": "object"
}

Azure > Key Vault > Vault > ServiceNow > Configuration Item > Table Definition

This policy specifically allows users to define two key aspects: the name of the ServiceNow table where the Azure > Key Vault > Vault data will be stored, and the details of the columns used for archiving purposes.

URI
tmod:@turbot/servicenow-azure-keyvault#/policy/types/vaultServiceNowConfigurationItemTableDefinition
Default Template Input
[
"{\n serviceNowInstance: resources(filter: \"resourceTypeId:tmod:@turbot/servicenow#/resource/types/instance level:self limit:1\") {\n items {\n turbot {\n id\n }\n }\n }\n}\n",
"{\n tableDefinition: policyValues(filter: \"policyTypeId:tmod:@turbot/servicenow-azure-keyvault#/policy/types/vaultServiceNowTableDefinition resourceId:{{$.serviceNowInstance.items[0].turbot.id}} level:self\") {\n items {\n value\n }\n }\n applicationScope: policyValues(filter: \"policyTypeId:tmod:@turbot/servicenow#/policy/types/serviceNowApplicationScope resourceId:{{$.serviceNowInstance.items[0].turbot.id}} level:self\") {\n items {\n value\n }\n }\n}\n"
]
Default Template
"tableName: "{%- if $.applicationScope.items | length == 0 or $.tableDefinition.items | length == 0 %} {%- else %}{{$.applicationScope.items[0].value}}_{{$.tableDefinition.items[0].value.table.name | lower}}{% endif %}"\n"
Schema
{
"type": "object",
"additionalProperties": false,
"required": [
"tableName"
],
"properties": {
"tableName": {
"type": "string"
},
"archiveColumns": {
"type": "object"
}
}
}

Azure > Key Vault > Vault > ServiceNow > Table

Configure a Table for Azure > Key Vault > Vault resource type in ServiceNow via the Azure > Key Vault > Vault > ServiceNow > Table > * policies.

URI
tmod:@turbot/servicenow-azure-keyvault#/policy/types/vaultServiceNowTable
Valid Value
[
"Skip",
"Check: Configured",
"Enforce: Configured"
]
Schema
{
"type": "string",
"enum": [
"Skip",
"Check: Configured",
"Enforce: Configured"
],
"example": [
"Skip"
],
"default": "Skip"
}

Azure > Key Vault > Vault > ServiceNow > Table > Definition

The policy enables the definition of ServiceNow table properties, including its name and the base table from which it extends, and details the specific columns required for representing Azure > Key Vault > Vault data.

URI
tmod:@turbot/servicenow-azure-keyvault#/policy/types/vaultServiceNowTableDefinition
Schema
{
"type": "object",
"additionalProperties": false,
"required": [
"table",
"columns"
],
"properties": {
"table": {
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"pattern": "^([0-9a-z_])+$"
},
"label": {
"type": "string"
},
"extendsTable": {
"type": "string",
"pattern": "^([0-9a-z_])+$"
}
}
},
"columns": {
"type": "array",
"description": "An array of columns with their mappings to the CMDB.",
"default": [],
"items": {
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"description": "The name of the column in the table.",
"pattern": "^([0-9a-z_])+$"
},
"label": {
"type": "string",
"description": "The label for the column."
},
"type": {
"description": "The data type of the column.",
"type": "string"
},
"size": {
"type": "integer",
"description": "The length for data type."
}
}
}
}
},
"default": {
"table": {
"name": "guardrails_azure_keyvault_vault",
"label": "Azure > Key Vault > Vault",
"extendsTable": "cmdb_ci"
},
"columns": [
{
"name": "access_policies",
"label": "Access Policies",
"type": "string",
"size": 1000
},
{
"name": "diagnostic_settings",
"label": "Diagnostic Settings",
"type": "string",
"size": 1000
},
{
"name": "enable_rbac_authorization",
"label": "Enable RBAC Authorization",
"type": "boolean"
},
{
"name": "enabled_for_deployment",
"label": "Enabled For Deployment",
"type": "boolean"
},
{
"name": "enabled_for_disk_encryption",
"label": "Enabled For Disk Encryption",
"type": "boolean"
},
{
"name": "enabled_for_template_deployment",
"label": "Enabled For Template Deployment",
"type": "boolean"
},
{
"name": "id",
"label": "ID"
},
{
"name": "region",
"label": "Region"
},
{
"name": "resource_group",
"label": "Resource Group",
"type": "string",
"size": 200
},
{
"name": "sku_family",
"label": "SKU Family"
},
{
"name": "sku_name",
"label": "SKU Name"
},
{
"name": "soft_delete_enabled",
"label": "Soft Delete Enabled",
"type": "boolean"
},
{
"name": "soft_delete_retention_in_days",
"label": "Soft Delete Retention In Days",
"type": "integer"
},
{
"name": "subscription_id",
"label": "Subscription ID"
},
{
"name": "tags",
"label": "Tags",
"type": "string",
"size": 1000
},
{
"name": "tenant_id",
"label": "Tenant ID"
},
{
"name": "type",
"label": "Type"
},
{
"name": "vault_name",
"label": "Vault Name"
},
{
"name": "vault_uri",
"label": "Vault URI"
}
]
}
}