Module LakeFormation.PrincipalPermissions

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lakeformation-principalpermissions.html

type lf_tag_key_resource = {
  1. tag_key : string;
  2. catalog_id : string;
  3. tag_values : string list;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lakeformation-principalpermissions-lftagkeyresource.html

and table_resource = {
  1. database_name : string;
  2. catalog_id : string;
  3. table_wildcard : Yojson.Safe.t option;
  4. name : string option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lakeformation-principalpermissions-tableresource.html

and column_wildcard = {
  1. excluded_column_names : string list option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lakeformation-principalpermissions-columnwildcard.html

and data_location_resource = {
  1. resource_arn : string;
  2. catalog_id : string;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lakeformation-principalpermissions-datalocationresource.html

and lf_tag = {
  1. tag_key : string option;
  2. tag_values : string list option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lakeformation-principalpermissions-lftag.html

and database_resource = {
  1. catalog_id : string;
  2. name : string;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lakeformation-principalpermissions-databaseresource.html

and data_cells_filter_resource = {
  1. table_name : string;
  2. database_name : string;
  3. table_catalog_id : string;
  4. name : string;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lakeformation-principalpermissions-datacellsfilterresource.html

and data_lake_principal = {
  1. data_lake_principal_identifier : string option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lakeformation-principalpermissions-datalakeprincipal.html

and table_with_columns_resource = {
  1. column_names : string list option;
  2. database_name : string;
  3. catalog_id : string;
  4. name : string;
  5. column_wildcard : column_wildcard option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lakeformation-principalpermissions-tablewithcolumnsresource.html

and lf_tag_policy_resource = {
  1. expression : lf_tag list;
  2. resource_type : string;
  3. catalog_id : string;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lakeformation-principalpermissions-lftagpolicyresource.html

and resource = {
  1. lf_tag : lf_tag_key_resource option;
  2. table : table_resource option;
  3. data_cells_filter : data_cells_filter_resource option;
  4. table_with_columns : table_with_columns_resource option;
  5. lf_tag_policy : lf_tag_policy_resource option;
  6. database : database_resource option;
  7. data_location : data_location_resource option;
  8. catalog : Yojson.Safe.t option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lakeformation-principalpermissions-resource.html

type properties = {
  1. resource : resource;
  2. permissions : string list;
  3. catalog : string option;
  4. principal : data_lake_principal;
  5. permissions_with_grant_option : string list;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lakeformation-principalpermissions.html;

val make_properties : resource:resource -> permissions:string list -> ?catalog:string -> principal:data_lake_principal -> permissions_with_grant_option:string list -> unit -> properties
val make_lf_tag_key_resource : tag_key:string -> catalog_id:string -> tag_values:string list -> unit -> lf_tag_key_resource
val make_table_resource : database_name:string -> catalog_id:string -> ?table_wildcard:Yojson.Safe.t -> ?name:string -> unit -> table_resource
val make_column_wildcard : ?excluded_column_names:string list -> unit -> column_wildcard
val make_data_location_resource : resource_arn:string -> catalog_id:string -> unit -> data_location_resource
val make_lf_tag : ?tag_key:string -> ?tag_values:string list -> unit -> lf_tag
val make_database_resource : catalog_id:string -> name:string -> unit -> database_resource
val make_data_cells_filter_resource : table_name:string -> database_name:string -> table_catalog_id:string -> name:string -> unit -> data_cells_filter_resource
val make_data_lake_principal : ?data_lake_principal_identifier:string -> unit -> data_lake_principal
val make_table_with_columns_resource : ?column_names:string list -> database_name:string -> catalog_id:string -> name:string -> ?column_wildcard:column_wildcard -> unit -> table_with_columns_resource
val make_lf_tag_policy_resource : expression:lf_tag list -> resource_type:string -> catalog_id:string -> unit -> lf_tag_policy_resource
val make_resource : ?lf_tag:lf_tag_key_resource -> ?table:table_resource -> ?data_cells_filter:data_cells_filter_resource -> ?table_with_columns:table_with_columns_resource -> ?lf_tag_policy:lf_tag_policy_resource -> ?database:database_resource -> ?data_location:data_location_resource -> ?catalog:Yojson.Safe.t -> unit -> resource
val yojson_of_lf_tag_key_resource : lf_tag_key_resource -> Yojson.Safe.t
val yojson_of_table_resource : table_resource -> Yojson.Safe.t
val yojson_of_column_wildcard : column_wildcard -> Yojson.Safe.t
val yojson_of_data_location_resource : data_location_resource -> Yojson.Safe.t
val yojson_of_lf_tag : lf_tag -> Yojson.Safe.t
val yojson_of_database_resource : database_resource -> Yojson.Safe.t
val yojson_of_data_cells_filter_resource : data_cells_filter_resource -> Yojson.Safe.t
val yojson_of_data_lake_principal : data_lake_principal -> [> `Assoc of (string * Yojson.Safe.t) list ]
val yojson_of_table_with_columns_resource : table_with_columns_resource -> Yojson.Safe.t
val yojson_of_lf_tag_policy_resource : lf_tag_policy_resource -> Yojson.Safe.t
val yojson_of_resource : resource -> [> `Assoc of (string * Yojson.Safe.t) list ]
val yojson_of_properties : properties -> [> `Assoc of (string * Yojson.Safe.t) list ]
type attributes = {
  1. ref_ : string;
  2. resource_identifier : string;
  3. principal_identifier : string;
}
val create_attributes : string -> attributes
val cloudformation_type : string