UNPKG

@pulumi/databricks

Version:

A Pulumi package for creating and managing databricks cloud resources.

233 lines (232 loc) 11 kB
import * as pulumi from "@pulumi/pulumi"; import * as inputs from "./types/input"; import * as outputs from "./types/output"; export declare function getPolicyInfo(args: GetPolicyInfoArgs, opts?: pulumi.InvokeOptions): Promise<GetPolicyInfoResult>; /** * A collection of arguments for invoking getPolicyInfo. */ export interface GetPolicyInfoArgs { /** * (ColumnMaskOptions) - Options for column mask policies. Valid only if `policyType` is `POLICY_TYPE_COLUMN_MASK`. * Required on create and optional on update. When specified on update, * the new options will replace the existing options as a whole */ columnMask?: inputs.GetPolicyInfoColumnMask; /** * (string) - Optional description of the policy */ comment?: string; /** * (list of string) - Optional list of user or group names that should be excluded from the policy */ exceptPrincipals?: string[]; /** * (string) - Type of securables that the policy should take effect on. * Only `TABLE` is supported at this moment. * Required on create and optional on update. Possible values are: `CATALOG`, `CLEAN_ROOM`, `CONNECTION`, `CREDENTIAL`, `EXTERNAL_LOCATION`, `EXTERNAL_METADATA`, `FUNCTION`, `METASTORE`, `PIPELINE`, `PROVIDER`, `RECIPIENT`, `SCHEMA`, `SHARE`, `STAGING_TABLE`, `STORAGE_CREDENTIAL`, `TABLE`, `VOLUME` */ forSecurableType: string; /** * (list of MatchColumn) - Optional list of condition expressions used to match table columns. * Only valid when `forSecurableType` is `TABLE`. * When specified, the policy only applies to tables whose columns satisfy all match conditions */ matchColumns?: inputs.GetPolicyInfoMatchColumn[]; /** * Name of the policy. Required on create and optional on update. * To rename the policy, set `name` to a different value on update */ name?: string; /** * Full name of the securable on which the policy is defined. * Required on create and ignored on update */ onSecurableFullname?: string; /** * Type of the securable on which the policy is defined. * Only `CATALOG`, `SCHEMA` and `TABLE` are supported at this moment. * Required on create and ignored on update. Possible values are: `CATALOG`, `CLEAN_ROOM`, `CONNECTION`, `CREDENTIAL`, `EXTERNAL_LOCATION`, `EXTERNAL_METADATA`, `FUNCTION`, `METASTORE`, `PIPELINE`, `PROVIDER`, `RECIPIENT`, `SCHEMA`, `SHARE`, `STAGING_TABLE`, `STORAGE_CREDENTIAL`, `TABLE`, `VOLUME` */ onSecurableType?: string; /** * (string) - Type of the policy. Required on create and ignored on update. Possible values are: `POLICY_TYPE_COLUMN_MASK`, `POLICY_TYPE_ROW_FILTER` */ policyType: string; /** * (RowFilterOptions) - Options for row filter policies. Valid only if `policyType` is `POLICY_TYPE_ROW_FILTER`. * Required on create and optional on update. When specified on update, * the new options will replace the existing options as a whole */ rowFilter?: inputs.GetPolicyInfoRowFilter; /** * (list of string) - List of user or group names that the policy applies to. * Required on create and optional on update */ toPrincipals: string[]; /** * (string) - Optional condition when the policy should take effect */ whenCondition?: string; /** * Workspace ID of the resource */ workspaceId?: string; } /** * A collection of values returned by getPolicyInfo. */ export interface GetPolicyInfoResult { /** * (ColumnMaskOptions) - Options for column mask policies. Valid only if `policyType` is `POLICY_TYPE_COLUMN_MASK`. * Required on create and optional on update. When specified on update, * the new options will replace the existing options as a whole */ readonly columnMask?: outputs.GetPolicyInfoColumnMask; /** * (string) - Optional description of the policy */ readonly comment?: string; /** * (integer) - Time at which the policy was created, in epoch milliseconds. Output only */ readonly createdAt: number; /** * (string) - Username of the user who created the policy. Output only */ readonly createdBy: string; /** * (list of string) - Optional list of user or group names that should be excluded from the policy */ readonly exceptPrincipals?: string[]; /** * (string) - Type of securables that the policy should take effect on. * Only `TABLE` is supported at this moment. * Required on create and optional on update. Possible values are: `CATALOG`, `CLEAN_ROOM`, `CONNECTION`, `CREDENTIAL`, `EXTERNAL_LOCATION`, `EXTERNAL_METADATA`, `FUNCTION`, `METASTORE`, `PIPELINE`, `PROVIDER`, `RECIPIENT`, `SCHEMA`, `SHARE`, `STAGING_TABLE`, `STORAGE_CREDENTIAL`, `TABLE`, `VOLUME` */ readonly forSecurableType: string; /** * (string) - Unique identifier of the policy. This field is output only and is generated by the system */ readonly id: string; /** * (list of MatchColumn) - Optional list of condition expressions used to match table columns. * Only valid when `forSecurableType` is `TABLE`. * When specified, the policy only applies to tables whose columns satisfy all match conditions */ readonly matchColumns?: outputs.GetPolicyInfoMatchColumn[]; /** * (string) - Name of the policy. Required on create and optional on update. * To rename the policy, set `name` to a different value on update */ readonly name?: string; /** * (string) - Full name of the securable on which the policy is defined. * Required on create and ignored on update */ readonly onSecurableFullname?: string; /** * (string) - Type of the securable on which the policy is defined. * Only `CATALOG`, `SCHEMA` and `TABLE` are supported at this moment. * Required on create and ignored on update. Possible values are: `CATALOG`, `CLEAN_ROOM`, `CONNECTION`, `CREDENTIAL`, `EXTERNAL_LOCATION`, `EXTERNAL_METADATA`, `FUNCTION`, `METASTORE`, `PIPELINE`, `PROVIDER`, `RECIPIENT`, `SCHEMA`, `SHARE`, `STAGING_TABLE`, `STORAGE_CREDENTIAL`, `TABLE`, `VOLUME` */ readonly onSecurableType?: string; /** * (string) - Type of the policy. Required on create and ignored on update. Possible values are: `POLICY_TYPE_COLUMN_MASK`, `POLICY_TYPE_ROW_FILTER` */ readonly policyType: string; /** * (RowFilterOptions) - Options for row filter policies. Valid only if `policyType` is `POLICY_TYPE_ROW_FILTER`. * Required on create and optional on update. When specified on update, * the new options will replace the existing options as a whole */ readonly rowFilter?: outputs.GetPolicyInfoRowFilter; /** * (list of string) - List of user or group names that the policy applies to. * Required on create and optional on update */ readonly toPrincipals: string[]; /** * (integer) - Time at which the policy was last modified, in epoch milliseconds. Output only */ readonly updatedAt: number; /** * (string) - Username of the user who last modified the policy. Output only */ readonly updatedBy: string; /** * (string) - Optional condition when the policy should take effect */ readonly whenCondition?: string; readonly workspaceId?: string; } export declare function getPolicyInfoOutput(args: GetPolicyInfoOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetPolicyInfoResult>; /** * A collection of arguments for invoking getPolicyInfo. */ export interface GetPolicyInfoOutputArgs { /** * (ColumnMaskOptions) - Options for column mask policies. Valid only if `policyType` is `POLICY_TYPE_COLUMN_MASK`. * Required on create and optional on update. When specified on update, * the new options will replace the existing options as a whole */ columnMask?: pulumi.Input<inputs.GetPolicyInfoColumnMaskArgs>; /** * (string) - Optional description of the policy */ comment?: pulumi.Input<string>; /** * (list of string) - Optional list of user or group names that should be excluded from the policy */ exceptPrincipals?: pulumi.Input<pulumi.Input<string>[]>; /** * (string) - Type of securables that the policy should take effect on. * Only `TABLE` is supported at this moment. * Required on create and optional on update. Possible values are: `CATALOG`, `CLEAN_ROOM`, `CONNECTION`, `CREDENTIAL`, `EXTERNAL_LOCATION`, `EXTERNAL_METADATA`, `FUNCTION`, `METASTORE`, `PIPELINE`, `PROVIDER`, `RECIPIENT`, `SCHEMA`, `SHARE`, `STAGING_TABLE`, `STORAGE_CREDENTIAL`, `TABLE`, `VOLUME` */ forSecurableType: pulumi.Input<string>; /** * (list of MatchColumn) - Optional list of condition expressions used to match table columns. * Only valid when `forSecurableType` is `TABLE`. * When specified, the policy only applies to tables whose columns satisfy all match conditions */ matchColumns?: pulumi.Input<pulumi.Input<inputs.GetPolicyInfoMatchColumnArgs>[]>; /** * Name of the policy. Required on create and optional on update. * To rename the policy, set `name` to a different value on update */ name?: pulumi.Input<string>; /** * Full name of the securable on which the policy is defined. * Required on create and ignored on update */ onSecurableFullname?: pulumi.Input<string>; /** * Type of the securable on which the policy is defined. * Only `CATALOG`, `SCHEMA` and `TABLE` are supported at this moment. * Required on create and ignored on update. Possible values are: `CATALOG`, `CLEAN_ROOM`, `CONNECTION`, `CREDENTIAL`, `EXTERNAL_LOCATION`, `EXTERNAL_METADATA`, `FUNCTION`, `METASTORE`, `PIPELINE`, `PROVIDER`, `RECIPIENT`, `SCHEMA`, `SHARE`, `STAGING_TABLE`, `STORAGE_CREDENTIAL`, `TABLE`, `VOLUME` */ onSecurableType?: pulumi.Input<string>; /** * (string) - Type of the policy. Required on create and ignored on update. Possible values are: `POLICY_TYPE_COLUMN_MASK`, `POLICY_TYPE_ROW_FILTER` */ policyType: pulumi.Input<string>; /** * (RowFilterOptions) - Options for row filter policies. Valid only if `policyType` is `POLICY_TYPE_ROW_FILTER`. * Required on create and optional on update. When specified on update, * the new options will replace the existing options as a whole */ rowFilter?: pulumi.Input<inputs.GetPolicyInfoRowFilterArgs>; /** * (list of string) - List of user or group names that the policy applies to. * Required on create and optional on update */ toPrincipals: pulumi.Input<pulumi.Input<string>[]>; /** * (string) - Optional condition when the policy should take effect */ whenCondition?: pulumi.Input<string>; /** * Workspace ID of the resource */ workspaceId?: pulumi.Input<string>; }