Class DataLakeSettings
- All Implemented Interfaces:
Serializable
,SdkPojo
,ToCopyableBuilder<DataLakeSettings.Builder,
DataLakeSettings>
A structure representing a list of Lake Formation principals designated as data lake administrators and lists of principal permission entries for default create database and default create table permissions.
- See Also:
-
Nested Class Summary
Nested Classes -
Method Summary
Modifier and TypeMethodDescriptionfinal Boolean
Whether to allow Amazon EMR clusters to access data managed by Lake Formation.final Boolean
Whether to allow a third-party query engine to get data access credentials without session tags when a caller has full data access permissions.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.static DataLakeSettings.Builder
builder()
final List
<PrincipalPermissions> Specifies whether access control on newly created database is managed by Lake Formation permissions or exclusively by IAM permissions.final List
<PrincipalPermissions> Specifies whether access control on newly created table is managed by Lake Formation permissions or exclusively by IAM permissions.final List
<DataLakePrincipal> A list of Lake Formation principals.final boolean
final boolean
equalsBySdkFields
(Object obj) Indicates whether some other object is "equal to" this one by SDK fields.final List
<DataLakePrincipal> A list of the account IDs of Amazon Web Services accounts with Amazon EMR clusters that are to perform data filtering.>final <T> Optional
<T> getValueForField
(String fieldName, Class<T> clazz) final boolean
For responses, this returns true if the service returned a value for the AuthorizedSessionTagValueList property.final boolean
For responses, this returns true if the service returned a value for the CreateDatabaseDefaultPermissions property.final boolean
For responses, this returns true if the service returned a value for the CreateTableDefaultPermissions property.final boolean
For responses, this returns true if the service returned a value for the DataLakeAdmins property.final boolean
For responses, this returns true if the service returned a value for the ExternalDataFilteringAllowList property.final int
hashCode()
final boolean
For responses, this returns true if the service returned a value for the Parameters property.final boolean
For responses, this returns true if the service returned a value for the ReadOnlyAdmins property.final boolean
For responses, this returns true if the service returned a value for the TrustedResourceOwners property.A key-value map that provides an additional configuration on your data lake.final List
<DataLakePrincipal> A list of Lake Formation principals with only view access to the resources, without the ability to make changes.static Class
<? extends DataLakeSettings.Builder> Take this object and create a builder that contains all of the current property values of this object.final String
toString()
Returns a string representation of this object.A list of the resource-owning account IDs that the caller's account can use to share their user access details (user ARNs).Methods inherited from interface software.amazon.awssdk.utils.builder.ToCopyableBuilder
copy
-
Method Details
-
hasDataLakeAdmins
public final boolean hasDataLakeAdmins()For responses, this returns true if the service returned a value for the DataLakeAdmins property. This DOES NOT check that the value is non-empty (for which, you should check theisEmpty()
method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified. -
dataLakeAdmins
A list of Lake Formation principals. Supported principals are IAM users or IAM roles.
Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.
This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the
hasDataLakeAdmins()
method.- Returns:
- A list of Lake Formation principals. Supported principals are IAM users or IAM roles.
-
hasReadOnlyAdmins
public final boolean hasReadOnlyAdmins()For responses, this returns true if the service returned a value for the ReadOnlyAdmins property. This DOES NOT check that the value is non-empty (for which, you should check theisEmpty()
method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified. -
readOnlyAdmins
A list of Lake Formation principals with only view access to the resources, without the ability to make changes. Supported principals are IAM users or IAM roles.
Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.
This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the
hasReadOnlyAdmins()
method.- Returns:
- A list of Lake Formation principals with only view access to the resources, without the ability to make changes. Supported principals are IAM users or IAM roles.
-
hasCreateDatabaseDefaultPermissions
public final boolean hasCreateDatabaseDefaultPermissions()For responses, this returns true if the service returned a value for the CreateDatabaseDefaultPermissions property. This DOES NOT check that the value is non-empty (for which, you should check theisEmpty()
method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified. -
createDatabaseDefaultPermissions
Specifies whether access control on newly created database is managed by Lake Formation permissions or exclusively by IAM permissions.
A null value indicates access control by Lake Formation permissions. A value that assigns ALL to IAM_ALLOWED_PRINCIPALS indicates access control by IAM permissions. This is referred to as the setting "Use only IAM access control," and is for backward compatibility with the Glue permission model implemented by IAM permissions.
The only permitted values are an empty array or an array that contains a single JSON object that grants ALL to IAM_ALLOWED_PRINCIPALS.
For more information, see Changing the Default Security Settings for Your Data Lake.
Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.
This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the
hasCreateDatabaseDefaultPermissions()
method.- Returns:
- Specifies whether access control on newly created database is managed by Lake Formation permissions or
exclusively by IAM permissions.
A null value indicates access control by Lake Formation permissions. A value that assigns ALL to IAM_ALLOWED_PRINCIPALS indicates access control by IAM permissions. This is referred to as the setting "Use only IAM access control," and is for backward compatibility with the Glue permission model implemented by IAM permissions.
The only permitted values are an empty array or an array that contains a single JSON object that grants ALL to IAM_ALLOWED_PRINCIPALS.
For more information, see Changing the Default Security Settings for Your Data Lake.
-
hasCreateTableDefaultPermissions
public final boolean hasCreateTableDefaultPermissions()For responses, this returns true if the service returned a value for the CreateTableDefaultPermissions property. This DOES NOT check that the value is non-empty (for which, you should check theisEmpty()
method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified. -
createTableDefaultPermissions
Specifies whether access control on newly created table is managed by Lake Formation permissions or exclusively by IAM permissions.
A null value indicates access control by Lake Formation permissions. A value that assigns ALL to IAM_ALLOWED_PRINCIPALS indicates access control by IAM permissions. This is referred to as the setting "Use only IAM access control," and is for backward compatibility with the Glue permission model implemented by IAM permissions.
The only permitted values are an empty array or an array that contains a single JSON object that grants ALL to IAM_ALLOWED_PRINCIPALS.
For more information, see Changing the Default Security Settings for Your Data Lake.
Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.
This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the
hasCreateTableDefaultPermissions()
method.- Returns:
- Specifies whether access control on newly created table is managed by Lake Formation permissions or
exclusively by IAM permissions.
A null value indicates access control by Lake Formation permissions. A value that assigns ALL to IAM_ALLOWED_PRINCIPALS indicates access control by IAM permissions. This is referred to as the setting "Use only IAM access control," and is for backward compatibility with the Glue permission model implemented by IAM permissions.
The only permitted values are an empty array or an array that contains a single JSON object that grants ALL to IAM_ALLOWED_PRINCIPALS.
For more information, see Changing the Default Security Settings for Your Data Lake.
-
hasParameters
public final boolean hasParameters()For responses, this returns true if the service returned a value for the Parameters property. This DOES NOT check that the value is non-empty (for which, you should check theisEmpty()
method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified. -
parameters
A key-value map that provides an additional configuration on your data lake. CROSS_ACCOUNT_VERSION is the key you can configure in the Parameters field. Accepted values for the CrossAccountVersion key are 1, 2, 3, and 4.
Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.
This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the
hasParameters()
method.- Returns:
- A key-value map that provides an additional configuration on your data lake. CROSS_ACCOUNT_VERSION is the key you can configure in the Parameters field. Accepted values for the CrossAccountVersion key are 1, 2, 3, and 4.
-
hasTrustedResourceOwners
public final boolean hasTrustedResourceOwners()For responses, this returns true if the service returned a value for the TrustedResourceOwners property. This DOES NOT check that the value is non-empty (for which, you should check theisEmpty()
method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified. -
trustedResourceOwners
A list of the resource-owning account IDs that the caller's account can use to share their user access details (user ARNs). The user ARNs can be logged in the resource owner's CloudTrail log.
You may want to specify this property when you are in a high-trust boundary, such as the same team or company.
Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.
This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the
hasTrustedResourceOwners()
method.- Returns:
- A list of the resource-owning account IDs that the caller's account can use to share their user access
details (user ARNs). The user ARNs can be logged in the resource owner's CloudTrail log.
You may want to specify this property when you are in a high-trust boundary, such as the same team or company.
-
allowExternalDataFiltering
Whether to allow Amazon EMR clusters to access data managed by Lake Formation.
If true, you allow Amazon EMR clusters to access data in Amazon S3 locations that are registered with Lake Formation.
If false or null, no Amazon EMR clusters will be able to access data in Amazon S3 locations that are registered with Lake Formation.
For more information, see (Optional) Allow external data filtering.
- Returns:
- Whether to allow Amazon EMR clusters to access data managed by Lake Formation.
If true, you allow Amazon EMR clusters to access data in Amazon S3 locations that are registered with Lake Formation.
If false or null, no Amazon EMR clusters will be able to access data in Amazon S3 locations that are registered with Lake Formation.
For more information, see (Optional) Allow external data filtering.
-
allowFullTableExternalDataAccess
Whether to allow a third-party query engine to get data access credentials without session tags when a caller has full data access permissions.
- Returns:
- Whether to allow a third-party query engine to get data access credentials without session tags when a caller has full data access permissions.
-
hasExternalDataFilteringAllowList
public final boolean hasExternalDataFilteringAllowList()For responses, this returns true if the service returned a value for the ExternalDataFilteringAllowList property. This DOES NOT check that the value is non-empty (for which, you should check theisEmpty()
method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified. -
externalDataFilteringAllowList
A list of the account IDs of Amazon Web Services accounts with Amazon EMR clusters that are to perform data filtering.>
Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.
This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the
hasExternalDataFilteringAllowList()
method.- Returns:
- A list of the account IDs of Amazon Web Services accounts with Amazon EMR clusters that are to perform data filtering.>
-
hasAuthorizedSessionTagValueList
public final boolean hasAuthorizedSessionTagValueList()For responses, this returns true if the service returned a value for the AuthorizedSessionTagValueList property. This DOES NOT check that the value is non-empty (for which, you should check theisEmpty()
method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified. -
authorizedSessionTagValueList
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. Lake Formation will publish the acceptable key-value pair, for example key = "LakeFormationTrustedCaller" and value = "TRUE" and the third party integrator must properly tag the temporary security credentials that will be used to call Lake Formation's administrative APIs.
Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.
This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the
hasAuthorizedSessionTagValueList()
method.- Returns:
- 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. Lake Formation will publish the acceptable key-value pair, for example key = "LakeFormationTrustedCaller" and value = "TRUE" and the third party integrator must properly tag the temporary security credentials that will be used to call Lake Formation's administrative APIs.
-
toBuilder
Description copied from interface:ToCopyableBuilder
Take this object and create a builder that contains all of the current property values of this object.- Specified by:
toBuilder
in interfaceToCopyableBuilder<DataLakeSettings.Builder,
DataLakeSettings> - Returns:
- a builder for type T
-
builder
-
serializableBuilderClass
-
hashCode
-
equals
-
equalsBySdkFields
Description copied from interface:SdkPojo
Indicates whether some other object is "equal to" this one by SDK fields. An SDK field is a modeled, non-inherited field in anSdkPojo
class, and is generated based on a service model.If an
SdkPojo
class does not have any inherited fields,equalsBySdkFields
andequals
are essentially the same.- Specified by:
equalsBySdkFields
in interfaceSdkPojo
- Parameters:
obj
- the object to be compared with- Returns:
- true if the other object equals to this object by sdk fields, false otherwise.
-
toString
-
getValueForField
-
sdkFields
-
sdkFieldNameToField
- Specified by:
sdkFieldNameToField
in interfaceSdkPojo
- Returns:
- The mapping between the field name and its corresponding field.
-