Policy types for @turbot/servicenow-azure-synapseanalytics

Azure > Synapse Analytics > SQL Pool > ServiceNow

URI
tmod:@turbot/servicenow-azure-synapseanalytics#/policy/types/sqlPoolServiceNow
Targets

Azure > Synapse Analytics > SQL Pool > ServiceNow > Configuration Item

Synchronize the data for the Azure > Synapse Analytics > SQL Pool based on the policies Azure > Synapse Analytics > SQL Pool > 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 > Synapse Analytics > SQL Pool information within the ServiceNow CMDB.

URI
tmod:@turbot/servicenow-azure-synapseanalytics#/policy/types/sqlPoolServiceNowConfigurationItem
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 > Synapse Analytics > SQL Pool > 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 > Synapse Analytics > SQL Pool 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-synapseanalytics#/policy/types/sqlPoolServiceNowConfigurationItemRecord
Default Template Input
"{\n resource: sqlPool{\n data\n metadata\n turbot {\n akas\n id\n tags\n title\n }\n }\n}\n"
Default Template
"collation: {{ $.resource.data.collation | dump | safe }}\nid: {{ $.resource.data.id | dump | safe }}\nmax_size_bytes: {{ $.resource.data.maxSizeBytes | dump | safe }}\nprovisioning_state: {{ $.resource.data.provisioningState | dump | safe }}\nregion: {{ $.resource.data.location | dump | safe }}\nresource_group: {{ $.resource.metadata.azure.resourceGroupName | dump | safe }}\nsku_capacity: {{ $.resource.data.sku.capacity | dump | safe }}\nsku_name: {{ $.resource.data.sku.name | dump | safe }}\nsql_pool_name: {{ $.resource.data.name | dump | safe }}\nstatus: {{ $.resource.data.sku.capacity | dump | safe }}\nsubscription_id: {{ $.resource.metadata.azure.subscriptionId | dump | safe }}\ntags: {{ $.resource.turbot.tags | dump | safe }}\ntype: {{ $.resource.data.type | dump | safe }}\n"
Schema
{
"type": "object"
}

Azure > Synapse Analytics > SQL Pool > ServiceNow > Configuration Item > Table Definition

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

URI
tmod:@turbot/servicenow-azure-synapseanalytics#/policy/types/sqlPoolServiceNowConfigurationItemTableDefinition
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-synapseanalytics#/policy/types/sqlPoolServiceNowTableDefinition 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 > Synapse Analytics > SQL Pool > ServiceNow > Table

Configure a Table for Azure > Synapse Analytics > SQL Pool resource type in ServiceNow via the Azure > Synapse Analytics > SQL Pool > ServiceNow > Table > * policies.

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

Azure > Synapse Analytics > SQL Pool > 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 > Synapse Analytics > SQL Pool data.

URI
tmod:@turbot/servicenow-azure-synapseanalytics#/policy/types/sqlPoolServiceNowTableDefinition
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_synapseanalytics_sqlpool",
"label": "Azure > Synapse Analytics > SQL Pool",
"extendsTable": "cmdb_ci"
},
"columns": [
{
"name": "collation",
"label": "Collation",
"type": "string",
"size": 1000
},
{
"name": "id",
"label": "ID"
},
{
"name": "max_size_bytes",
"label": "Max Size Bytes",
"type": "string",
"size": 1000
},
{
"name": "provisioning_state",
"label": "Provisioning State",
"type": "string",
"size": 1000
},
{
"name": "region",
"label": "Region"
},
{
"name": "resource_group",
"label": "Resource Group"
},
{
"name": "sku_capacity",
"label": "SKU Capacity",
"type": "string",
"size": 1000
},
{
"name": "sku_name",
"label": "SKU Name",
"type": "string",
"size": 1000
},
{
"name": "sql_pool_name",
"label": "Name"
},
{
"name": "status",
"label": "Status",
"type": "string",
"size": 1000
},
{
"name": "subscription_id",
"label": "Subscription ID"
},
{
"name": "tags",
"label": "Tags",
"type": "string",
"size": 1000
},
{
"name": "type",
"label": "Type"
}
]
}
}

Azure > Synapse Analytics > Workspace > ServiceNow

URI
tmod:@turbot/servicenow-azure-synapseanalytics#/policy/types/synapseWorkspaceServiceNow
Targets

Azure > Synapse Analytics > Workspace > ServiceNow > Configuration Item

Synchronize the data for the Azure > Synapse Analytics > Workspace based on the policies Azure > Synapse Analytics > Workspace > 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 > Synapse Analytics > Workspace information within the ServiceNow CMDB.

URI
tmod:@turbot/servicenow-azure-synapseanalytics#/policy/types/synapseWorkspaceServiceNowConfigurationItem
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 > Synapse Analytics > Workspace > 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 > Synapse Analytics > Workspace 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-synapseanalytics#/policy/types/synapseWorkspaceServiceNowConfigurationItemRecord
Default Template Input
"{\n resource: synapseWorkspace{\n data\n metadata\n turbot {\n akas\n id\n tags\n title\n }\n }\n}\n"
Default Template
"adla_resource_id: {{ $.resource.data.adlaResourceId | dump | safe }}\nconnectivity_endpoints: {{ $.resource.data.connectivityEndpoints | dump | safe }}\ndefault_data_lake_storage: {{ $.resource.data.defaultDataLakeStorage | dump | safe }}\nencryption: {{ $.resource.data.encryption | dump | safe }}\nextra_properties: {{ $.resource.data.extraProperties | dump | safe }}\nid: {{ $.resource.data.id | dump | safe }}\nidentity: {{ $.resource.data.identity | dump | safe }}\nmanaged_resource_group_name: {{ $.resource.data.managedResourceGroupName | dump | safe }}\nmanaged_virtual_network: {{ $.resource.data.managedVirtualNetwork | dump | safe }}\nmanaged_virtual_network_settings: {{ $.resource.data.managedVirtualNetworkSettings | dump | safe }}\nprivate_endpoint_connections: {{ $.resource.data.privateEndpointConnections | dump | safe }}\nprovisioning_state: {{ $.resource.data.provisioningState | dump | safe }}\npublic_network_access: {{ $.resource.data.publicNetworkAccess | dump | safe }}\npurview_configuration: {{ $.resource.data.purviewConfiguration | dump | safe }}\nregion: {{ $.resource.data.location | dump | safe }}\nresource_group: {{ $.resource.metadata.azure.resourceGroupName | dump | safe }}\nsql_administrator_login: {{ $.resource.data.sqlAdministratorLogin | dump | safe }}\nsql_administrator_login_password: {{ $.resource.data.sqlAdministratorLoginPassword | dump | safe }}\nsubscription_id: {{ $.resource.metadata.azure.subscriptionId | dump | safe }}\nsynapse_workspace_name: {{ $.resource.data.name | dump | safe }}\ntags: {{ $.resource.turbot.tags | dump | safe }}\ntype: {{ $.resource.data.type | dump | safe }}\nvirtual_network_profile: {{ $.resource.data.virtualNetworkProfile | dump | safe }}\nworkspace_repository_configuration: {{ $.resource.data.workspaceRepositoryConfiguration | dump | safe }}\nworkspace_uid: {{ $.resource.data. workspaceUID | dump | safe }}\n"
Schema
{
"type": "object"
}

Azure > Synapse Analytics > Workspace > ServiceNow > Configuration Item > Table Definition

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

URI
tmod:@turbot/servicenow-azure-synapseanalytics#/policy/types/synapseWorkspaceServiceNowConfigurationItemTableDefinition
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-synapseanalytics#/policy/types/synapseWorkspaceServiceNowTableDefinition 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 > Synapse Analytics > Workspace > ServiceNow > Table

Configure a Table for Azure > Synapse Analytics > Workspace resource type in ServiceNow via the Azure > Synapse Analytics > Workspace > ServiceNow > Table > * policies.

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

Azure > Synapse Analytics > Workspace > 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 > Synapse Analytics > Workspace data.

URI
tmod:@turbot/servicenow-azure-synapseanalytics#/policy/types/synapseWorkspaceServiceNowTableDefinition
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_synapseanalytics_synapseworkspace",
"label": "Azure > Synapse Analytics > Workspace",
"extendsTable": "cmdb_ci"
},
"columns": [
{
"name": "adla_resource_id",
"label": "Adla Resource ID"
},
{
"name": "connectivity_endpoints",
"label": "Connectivity Endpoints",
"type": "string",
"size": 1000
},
{
"name": "default_data_lake_storage",
"label": "Default Data Lake Storage",
"type": "string",
"size": 1000
},
{
"name": "encryption",
"label": "Encryption",
"type": "string",
"size": 1000
},
{
"name": "extra_properties",
"label": "Extra Properties",
"type": "string",
"size": 1000
},
{
"name": "id",
"label": "ID"
},
{
"name": "identity",
"label": "Identity",
"type": "string",
"size": 1000
},
{
"name": "managed_resource_group_name",
"label": "Managed Resource Group Name"
},
{
"name": "managed_virtual_network",
"label": "Managed Virtual Network"
},
{
"name": "managed_virtual_network_settings",
"label": "Managed Virtual Network Settings",
"type": "string",
"size": 1000
},
{
"name": "private_endpoint_connections",
"label": "Private Endpoint Connections",
"type": "string",
"size": 1000
},
{
"name": "provisioning_state",
"label": "Provisioning State"
},
{
"name": "public_network_access",
"label": "Public Network Access"
},
{
"name": "purview_configuration",
"label": "Purview Configuration",
"type": "string",
"size": 1000
},
{
"name": "region",
"label": "Region"
},
{
"name": "resource_group",
"label": "Resource Group"
},
{
"name": "sql_administrator_login",
"label": "SQL Administrator Login"
},
{
"name": "sql_administrator_login_password",
"label": "SQL Administrator Login Password"
},
{
"name": "subscription_id",
"label": "Subscription ID"
},
{
"name": "synapse_workspace_name",
"label": "Name"
},
{
"name": "tags",
"label": "Tags",
"type": "string",
"size": 1000
},
{
"name": "type",
"label": "Type"
},
{
"name": "virtual_network_profile",
"label": "Virtual Network Profile",
"type": "string",
"size": 1000
},
{
"name": "workspace_repository_configuration",
"label": "Workspace Repository Configuration",
"type": "string",
"size": 1000
},
{
"name": "workspace_uid",
"label": "Workspace UID",
"type": "string",
"size": 1000
}
]
}
}