github.com/pulumi/pulumi-aws/sdk/v6@v6.32.0/go/aws/lakeformation/getDataLakeSettings.go (about) 1 // Code generated by the Pulumi Terraform Bridge (tfgen) Tool DO NOT EDIT. 2 // *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** 3 4 package lakeformation 5 6 import ( 7 "context" 8 "reflect" 9 10 "github.com/pulumi/pulumi-aws/sdk/v6/go/aws/internal" 11 "github.com/pulumi/pulumi/sdk/v3/go/pulumi" 12 ) 13 14 // Get Lake Formation principals designated as data lake administrators and lists of principal permission entries for default create database and default create table permissions. 15 // 16 // ## Example Usage 17 // 18 // <!--Start PulumiCodeChooser --> 19 // ```go 20 // package main 21 // 22 // import ( 23 // 24 // "github.com/pulumi/pulumi-aws/sdk/v6/go/aws/lakeformation" 25 // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" 26 // 27 // ) 28 // 29 // func main() { 30 // pulumi.Run(func(ctx *pulumi.Context) error { 31 // _, err := lakeformation.LookupDataLakeSettings(ctx, &lakeformation.LookupDataLakeSettingsArgs{ 32 // CatalogId: pulumi.StringRef("14916253649"), 33 // }, nil) 34 // if err != nil { 35 // return err 36 // } 37 // return nil 38 // }) 39 // } 40 // 41 // ``` 42 // <!--End PulumiCodeChooser --> 43 func LookupDataLakeSettings(ctx *pulumi.Context, args *LookupDataLakeSettingsArgs, opts ...pulumi.InvokeOption) (*LookupDataLakeSettingsResult, error) { 44 opts = internal.PkgInvokeDefaultOpts(opts) 45 var rv LookupDataLakeSettingsResult 46 err := ctx.Invoke("aws:lakeformation/getDataLakeSettings:getDataLakeSettings", args, &rv, opts...) 47 if err != nil { 48 return nil, err 49 } 50 return &rv, nil 51 } 52 53 // A collection of arguments for invoking getDataLakeSettings. 54 type LookupDataLakeSettingsArgs struct { 55 // Identifier for the Data Catalog. By default, the account ID. 56 CatalogId *string `pulumi:"catalogId"` 57 } 58 59 // A collection of values returned by getDataLakeSettings. 60 type LookupDataLakeSettingsResult struct { 61 // List of ARNs of AWS Lake Formation principals (IAM users or roles). 62 Admins []string `pulumi:"admins"` 63 // Whether to allow Amazon EMR clusters to access data managed by Lake Formation. 64 AllowExternalDataFiltering bool `pulumi:"allowExternalDataFiltering"` 65 // Lake Formation relies on a privileged process secured by Amazon EMR or the third party integrator to tag the user's role while assuming it. 66 AuthorizedSessionTagValueLists []string `pulumi:"authorizedSessionTagValueLists"` 67 CatalogId *string `pulumi:"catalogId"` 68 // Up to three configuration blocks of principal permissions for default create database permissions. Detailed below. 69 CreateDatabaseDefaultPermissions []GetDataLakeSettingsCreateDatabaseDefaultPermission `pulumi:"createDatabaseDefaultPermissions"` 70 // Up to three configuration blocks of principal permissions for default create table permissions. Detailed below. 71 CreateTableDefaultPermissions []GetDataLakeSettingsCreateTableDefaultPermission `pulumi:"createTableDefaultPermissions"` 72 // A list of the account IDs of Amazon Web Services accounts with Amazon EMR clusters that are to perform data filtering. 73 ExternalDataFilteringAllowLists []string `pulumi:"externalDataFilteringAllowLists"` 74 // The provider-assigned unique ID for this managed resource. 75 Id string `pulumi:"id"` 76 // List of ARNs of AWS Lake Formation principals (IAM users or roles) with only view access to the resources. 77 ReadOnlyAdmins []string `pulumi:"readOnlyAdmins"` 78 // List of the resource-owning account IDs that the caller's account can use to share their user access details (user ARNs). 79 TrustedResourceOwners []string `pulumi:"trustedResourceOwners"` 80 } 81 82 func LookupDataLakeSettingsOutput(ctx *pulumi.Context, args LookupDataLakeSettingsOutputArgs, opts ...pulumi.InvokeOption) LookupDataLakeSettingsResultOutput { 83 return pulumi.ToOutputWithContext(context.Background(), args). 84 ApplyT(func(v interface{}) (LookupDataLakeSettingsResult, error) { 85 args := v.(LookupDataLakeSettingsArgs) 86 r, err := LookupDataLakeSettings(ctx, &args, opts...) 87 var s LookupDataLakeSettingsResult 88 if r != nil { 89 s = *r 90 } 91 return s, err 92 }).(LookupDataLakeSettingsResultOutput) 93 } 94 95 // A collection of arguments for invoking getDataLakeSettings. 96 type LookupDataLakeSettingsOutputArgs struct { 97 // Identifier for the Data Catalog. By default, the account ID. 98 CatalogId pulumi.StringPtrInput `pulumi:"catalogId"` 99 } 100 101 func (LookupDataLakeSettingsOutputArgs) ElementType() reflect.Type { 102 return reflect.TypeOf((*LookupDataLakeSettingsArgs)(nil)).Elem() 103 } 104 105 // A collection of values returned by getDataLakeSettings. 106 type LookupDataLakeSettingsResultOutput struct{ *pulumi.OutputState } 107 108 func (LookupDataLakeSettingsResultOutput) ElementType() reflect.Type { 109 return reflect.TypeOf((*LookupDataLakeSettingsResult)(nil)).Elem() 110 } 111 112 func (o LookupDataLakeSettingsResultOutput) ToLookupDataLakeSettingsResultOutput() LookupDataLakeSettingsResultOutput { 113 return o 114 } 115 116 func (o LookupDataLakeSettingsResultOutput) ToLookupDataLakeSettingsResultOutputWithContext(ctx context.Context) LookupDataLakeSettingsResultOutput { 117 return o 118 } 119 120 // List of ARNs of AWS Lake Formation principals (IAM users or roles). 121 func (o LookupDataLakeSettingsResultOutput) Admins() pulumi.StringArrayOutput { 122 return o.ApplyT(func(v LookupDataLakeSettingsResult) []string { return v.Admins }).(pulumi.StringArrayOutput) 123 } 124 125 // Whether to allow Amazon EMR clusters to access data managed by Lake Formation. 126 func (o LookupDataLakeSettingsResultOutput) AllowExternalDataFiltering() pulumi.BoolOutput { 127 return o.ApplyT(func(v LookupDataLakeSettingsResult) bool { return v.AllowExternalDataFiltering }).(pulumi.BoolOutput) 128 } 129 130 // Lake Formation relies on a privileged process secured by Amazon EMR or the third party integrator to tag the user's role while assuming it. 131 func (o LookupDataLakeSettingsResultOutput) AuthorizedSessionTagValueLists() pulumi.StringArrayOutput { 132 return o.ApplyT(func(v LookupDataLakeSettingsResult) []string { return v.AuthorizedSessionTagValueLists }).(pulumi.StringArrayOutput) 133 } 134 135 func (o LookupDataLakeSettingsResultOutput) CatalogId() pulumi.StringPtrOutput { 136 return o.ApplyT(func(v LookupDataLakeSettingsResult) *string { return v.CatalogId }).(pulumi.StringPtrOutput) 137 } 138 139 // Up to three configuration blocks of principal permissions for default create database permissions. Detailed below. 140 func (o LookupDataLakeSettingsResultOutput) CreateDatabaseDefaultPermissions() GetDataLakeSettingsCreateDatabaseDefaultPermissionArrayOutput { 141 return o.ApplyT(func(v LookupDataLakeSettingsResult) []GetDataLakeSettingsCreateDatabaseDefaultPermission { 142 return v.CreateDatabaseDefaultPermissions 143 }).(GetDataLakeSettingsCreateDatabaseDefaultPermissionArrayOutput) 144 } 145 146 // Up to three configuration blocks of principal permissions for default create table permissions. Detailed below. 147 func (o LookupDataLakeSettingsResultOutput) CreateTableDefaultPermissions() GetDataLakeSettingsCreateTableDefaultPermissionArrayOutput { 148 return o.ApplyT(func(v LookupDataLakeSettingsResult) []GetDataLakeSettingsCreateTableDefaultPermission { 149 return v.CreateTableDefaultPermissions 150 }).(GetDataLakeSettingsCreateTableDefaultPermissionArrayOutput) 151 } 152 153 // A list of the account IDs of Amazon Web Services accounts with Amazon EMR clusters that are to perform data filtering. 154 func (o LookupDataLakeSettingsResultOutput) ExternalDataFilteringAllowLists() pulumi.StringArrayOutput { 155 return o.ApplyT(func(v LookupDataLakeSettingsResult) []string { return v.ExternalDataFilteringAllowLists }).(pulumi.StringArrayOutput) 156 } 157 158 // The provider-assigned unique ID for this managed resource. 159 func (o LookupDataLakeSettingsResultOutput) Id() pulumi.StringOutput { 160 return o.ApplyT(func(v LookupDataLakeSettingsResult) string { return v.Id }).(pulumi.StringOutput) 161 } 162 163 // List of ARNs of AWS Lake Formation principals (IAM users or roles) with only view access to the resources. 164 func (o LookupDataLakeSettingsResultOutput) ReadOnlyAdmins() pulumi.StringArrayOutput { 165 return o.ApplyT(func(v LookupDataLakeSettingsResult) []string { return v.ReadOnlyAdmins }).(pulumi.StringArrayOutput) 166 } 167 168 // List of the resource-owning account IDs that the caller's account can use to share their user access details (user ARNs). 169 func (o LookupDataLakeSettingsResultOutput) TrustedResourceOwners() pulumi.StringArrayOutput { 170 return o.ApplyT(func(v LookupDataLakeSettingsResult) []string { return v.TrustedResourceOwners }).(pulumi.StringArrayOutput) 171 } 172 173 func init() { 174 pulumi.RegisterOutputType(LookupDataLakeSettingsResultOutput{}) 175 }