aws-sdk-finspacedata 1.14.0 → 1.17.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: cc37e43188756001ea9bbe8239045a029bf1a0cb213d17ef5bdd6184b062ce89
4
- data.tar.gz: d523192f89687964fe3894b929f68a2291344b0d56b46c841a631fde05c1a7ce
3
+ metadata.gz: dcbebb6db6faba8e5da5ffe0b4d13289ce68d505e48ce3fcc3b50dc9c06bdfca
4
+ data.tar.gz: aa0365c9ee24b059a3151532778f3fcfe4a133ea6e74faeb5e7696c9bddbddb2
5
5
  SHA512:
6
- metadata.gz: 2c98cd7309d34cfd47afb507c9bf93ec89a3d6ed3d758248c65eec3e978cb928ecfc3cd3db83e057cfeb1eb95a03859ef1bf4e2b04ea7236aeb10c183dbc5b53
7
- data.tar.gz: 06e1ffd927f57535fa9856cd178e8f55e52de85bbb5c39def76c2efe26f4d50d380eb7df92846b04c1e791c98fdc06a957927e20badda122f1d7d093e3d81b78
6
+ metadata.gz: '01188ba7914670643dad9d50f01d92c1f0b4ef6470239b913f04eeab1670be8b078e7a7a23f4d6dd801f0848be437b80c470ca8a0f9f3743ba7cd6a887b971a9'
7
+ data.tar.gz: 7cc3a23d78adc5b4ffd86607d558429a0d38f57ce95a66aa916a5a1fcd65d18bd35c3d1267751638031f6b3d47feed7c9270871bdaac3087abd9881c4a958fc1
data/CHANGELOG.md CHANGED
@@ -1,6 +1,21 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.17.0 (2022-06-28)
5
+ ------------------
6
+
7
+ * Feature - Release new API GetExternalDataViewAccessDetails
8
+
9
+ 1.16.0 (2022-06-15)
10
+ ------------------
11
+
12
+ * Feature - This release adds a new set of APIs, GetPermissionGroup, DisassociateUserFromPermissionGroup, AssociateUserToPermissionGroup, ListPermissionGroupsByUser, ListUsersByPermissionGroup.
13
+
14
+ 1.15.0 (2022-05-12)
15
+ ------------------
16
+
17
+ * Feature - We've now deprecated CreateSnapshot permission for creating a data view, instead use CreateDataView permission.
18
+
4
19
  1.14.0 (2022-02-28)
5
20
  ------------------
6
21
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.14.0
1
+ 1.17.0
@@ -353,6 +353,46 @@ module Aws::FinSpaceData
353
353
 
354
354
  # @!group API Operations
355
355
 
356
+ # Adds a user account to a permission group to grant permissions for
357
+ # actions a user can perform in FinSpace.
358
+ #
359
+ # @option params [required, String] :permission_group_id
360
+ # The unique identifier for the permission group.
361
+ #
362
+ # @option params [required, String] :user_id
363
+ # The unique identifier for the user.
364
+ #
365
+ # @option params [String] :client_token
366
+ # A token that ensures idempotency. This token expires in 10 minutes.
367
+ #
368
+ # **A suitable default value is auto-generated.** You should normally
369
+ # not need to pass this option.**
370
+ #
371
+ # @return [Types::AssociateUserToPermissionGroupResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
372
+ #
373
+ # * {Types::AssociateUserToPermissionGroupResponse#status_code #status_code} => Integer
374
+ #
375
+ # @example Request syntax with placeholder values
376
+ #
377
+ # resp = client.associate_user_to_permission_group({
378
+ # permission_group_id: "PermissionGroupId", # required
379
+ # user_id: "UserId", # required
380
+ # client_token: "ClientToken",
381
+ # })
382
+ #
383
+ # @example Response structure
384
+ #
385
+ # resp.status_code #=> Integer
386
+ #
387
+ # @see http://docs.aws.amazon.com/goto/WebAPI/finspace-2020-07-13/AssociateUserToPermissionGroup AWS API Documentation
388
+ #
389
+ # @overload associate_user_to_permission_group(params = {})
390
+ # @param [Hash] params ({})
391
+ def associate_user_to_permission_group(params = {}, options = {})
392
+ req = build_request(:associate_user_to_permission_group, params)
393
+ req.send_request(options)
394
+ end
395
+
356
396
  # Creates a new Changeset in a FinSpace Dataset.
357
397
  #
358
398
  # @option params [String] :client_token
@@ -627,13 +667,20 @@ module Aws::FinSpaceData
627
667
  # The option to indicate FinSpace application permissions that are
628
668
  # granted to a specific group.
629
669
  #
670
+ # When assigning application permissions, be aware that the permission
671
+ # `ManageUsersAndGroups` allows users to grant themselves or others
672
+ # access to any functionality in their FinSpace environment's
673
+ # application. It should only be granted to trusted users.
674
+ #
630
675
  # * `CreateDataset` – Group members can create new datasets.
631
676
  #
632
677
  # * `ManageClusters` – Group members can manage Apache Spark clusters
633
678
  # from FinSpace notebooks.
634
679
  #
635
680
  # * `ManageUsersAndGroups` – Group members can manage users and
636
- # permission groups.
681
+ # permission groups. This is a privileged permission that allows users
682
+ # to grant themselves or others access to any functionality in the
683
+ # application. It should only be granted to trusted users.
637
684
  #
638
685
  # * `ManageAttributeSets` – Group members can manage attribute sets.
639
686
  #
@@ -857,6 +904,45 @@ module Aws::FinSpaceData
857
904
  req.send_request(options)
858
905
  end
859
906
 
907
+ # Removes a user account from a permission group.
908
+ #
909
+ # @option params [required, String] :permission_group_id
910
+ # The unique identifier for the permission group.
911
+ #
912
+ # @option params [required, String] :user_id
913
+ # The unique identifier for the user.
914
+ #
915
+ # @option params [String] :client_token
916
+ # A token that ensures idempotency. This token expires in 10 minutes.
917
+ #
918
+ # **A suitable default value is auto-generated.** You should normally
919
+ # not need to pass this option.**
920
+ #
921
+ # @return [Types::DisassociateUserFromPermissionGroupResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
922
+ #
923
+ # * {Types::DisassociateUserFromPermissionGroupResponse#status_code #status_code} => Integer
924
+ #
925
+ # @example Request syntax with placeholder values
926
+ #
927
+ # resp = client.disassociate_user_from_permission_group({
928
+ # permission_group_id: "PermissionGroupId", # required
929
+ # user_id: "UserId", # required
930
+ # client_token: "ClientToken",
931
+ # })
932
+ #
933
+ # @example Response structure
934
+ #
935
+ # resp.status_code #=> Integer
936
+ #
937
+ # @see http://docs.aws.amazon.com/goto/WebAPI/finspace-2020-07-13/DisassociateUserFromPermissionGroup AWS API Documentation
938
+ #
939
+ # @overload disassociate_user_from_permission_group(params = {})
940
+ # @param [Hash] params ({})
941
+ def disassociate_user_from_permission_group(params = {}, options = {})
942
+ req = build_request(:disassociate_user_from_permission_group, params)
943
+ req.send_request(options)
944
+ end
945
+
860
946
  # Allows the specified user to access the FinSpace web application and
861
947
  # API.
862
948
  #
@@ -1064,6 +1150,85 @@ module Aws::FinSpaceData
1064
1150
  req.send_request(options)
1065
1151
  end
1066
1152
 
1153
+ # Returns the credentials to access the external Dataview from an S3
1154
+ # location. To call this API:
1155
+ #
1156
+ # * You must retrieve the programmatic credentials.
1157
+ #
1158
+ # * You must be a member of a FinSpace user group, where the dataset
1159
+ # that you want to access has `Read Dataset Data` permissions.
1160
+ #
1161
+ # @option params [required, String] :data_view_id
1162
+ # The unique identifier for the Dataview that you want to access.
1163
+ #
1164
+ # @option params [required, String] :dataset_id
1165
+ # The unique identifier for the Dataset.
1166
+ #
1167
+ # @return [Types::GetExternalDataViewAccessDetailsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1168
+ #
1169
+ # * {Types::GetExternalDataViewAccessDetailsResponse#credentials #credentials} => Types::AwsCredentials
1170
+ # * {Types::GetExternalDataViewAccessDetailsResponse#s3_location #s3_location} => Types::S3Location
1171
+ #
1172
+ # @example Request syntax with placeholder values
1173
+ #
1174
+ # resp = client.get_external_data_view_access_details({
1175
+ # data_view_id: "DataViewId", # required
1176
+ # dataset_id: "DatasetId", # required
1177
+ # })
1178
+ #
1179
+ # @example Response structure
1180
+ #
1181
+ # resp.credentials.access_key_id #=> String
1182
+ # resp.credentials.secret_access_key #=> String
1183
+ # resp.credentials.session_token #=> String
1184
+ # resp.credentials.expiration #=> Integer
1185
+ # resp.s3_location.bucket #=> String
1186
+ # resp.s3_location.key #=> String
1187
+ #
1188
+ # @see http://docs.aws.amazon.com/goto/WebAPI/finspace-2020-07-13/GetExternalDataViewAccessDetails AWS API Documentation
1189
+ #
1190
+ # @overload get_external_data_view_access_details(params = {})
1191
+ # @param [Hash] params ({})
1192
+ def get_external_data_view_access_details(params = {}, options = {})
1193
+ req = build_request(:get_external_data_view_access_details, params)
1194
+ req.send_request(options)
1195
+ end
1196
+
1197
+ # Retrieves the details of a specific permission group.
1198
+ #
1199
+ # @option params [required, String] :permission_group_id
1200
+ # The unique identifier for the permission group.
1201
+ #
1202
+ # @return [Types::GetPermissionGroupResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1203
+ #
1204
+ # * {Types::GetPermissionGroupResponse#permission_group #permission_group} => Types::PermissionGroup
1205
+ #
1206
+ # @example Request syntax with placeholder values
1207
+ #
1208
+ # resp = client.get_permission_group({
1209
+ # permission_group_id: "PermissionGroupId", # required
1210
+ # })
1211
+ #
1212
+ # @example Response structure
1213
+ #
1214
+ # resp.permission_group.permission_group_id #=> String
1215
+ # resp.permission_group.name #=> String
1216
+ # resp.permission_group.description #=> String
1217
+ # resp.permission_group.application_permissions #=> Array
1218
+ # resp.permission_group.application_permissions[0] #=> String, one of "CreateDataset", "ManageClusters", "ManageUsersAndGroups", "ManageAttributeSets", "ViewAuditData", "AccessNotebooks", "GetTemporaryCredentials"
1219
+ # resp.permission_group.create_time #=> Integer
1220
+ # resp.permission_group.last_modified_time #=> Integer
1221
+ # resp.permission_group.membership_status #=> String, one of "ADDITION_IN_PROGRESS", "ADDITION_SUCCESS", "REMOVAL_IN_PROGRESS"
1222
+ #
1223
+ # @see http://docs.aws.amazon.com/goto/WebAPI/finspace-2020-07-13/GetPermissionGroup AWS API Documentation
1224
+ #
1225
+ # @overload get_permission_group(params = {})
1226
+ # @param [Hash] params ({})
1227
+ def get_permission_group(params = {}, options = {})
1228
+ req = build_request(:get_permission_group, params)
1229
+ req.send_request(options)
1230
+ end
1231
+
1067
1232
  # Request programmatic credentials to use with FinSpace SDK.
1068
1233
  #
1069
1234
  # @option params [Integer] :duration_in_minutes
@@ -1394,6 +1559,7 @@ module Aws::FinSpaceData
1394
1559
  # resp.permission_groups[0].application_permissions[0] #=> String, one of "CreateDataset", "ManageClusters", "ManageUsersAndGroups", "ManageAttributeSets", "ViewAuditData", "AccessNotebooks", "GetTemporaryCredentials"
1395
1560
  # resp.permission_groups[0].create_time #=> Integer
1396
1561
  # resp.permission_groups[0].last_modified_time #=> Integer
1562
+ # resp.permission_groups[0].membership_status #=> String, one of "ADDITION_IN_PROGRESS", "ADDITION_SUCCESS", "REMOVAL_IN_PROGRESS"
1397
1563
  # resp.next_token #=> String
1398
1564
  #
1399
1565
  # @see http://docs.aws.amazon.com/goto/WebAPI/finspace-2020-07-13/ListPermissionGroups AWS API Documentation
@@ -1405,6 +1571,48 @@ module Aws::FinSpaceData
1405
1571
  req.send_request(options)
1406
1572
  end
1407
1573
 
1574
+ # Lists all the permission groups that are associated with a specific
1575
+ # user account.
1576
+ #
1577
+ # @option params [required, String] :user_id
1578
+ # The unique identifier for the user.
1579
+ #
1580
+ # @option params [String] :next_token
1581
+ # A token that indicates where a results page should begin.
1582
+ #
1583
+ # @option params [required, Integer] :max_results
1584
+ # The maximum number of results per page.
1585
+ #
1586
+ # @return [Types::ListPermissionGroupsByUserResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1587
+ #
1588
+ # * {Types::ListPermissionGroupsByUserResponse#permission_groups #permission_groups} => Array<Types::PermissionGroupByUser>
1589
+ # * {Types::ListPermissionGroupsByUserResponse#next_token #next_token} => String
1590
+ #
1591
+ # @example Request syntax with placeholder values
1592
+ #
1593
+ # resp = client.list_permission_groups_by_user({
1594
+ # user_id: "UserId", # required
1595
+ # next_token: "PaginationToken",
1596
+ # max_results: 1, # required
1597
+ # })
1598
+ #
1599
+ # @example Response structure
1600
+ #
1601
+ # resp.permission_groups #=> Array
1602
+ # resp.permission_groups[0].permission_group_id #=> String
1603
+ # resp.permission_groups[0].name #=> String
1604
+ # resp.permission_groups[0].membership_status #=> String, one of "ADDITION_IN_PROGRESS", "ADDITION_SUCCESS", "REMOVAL_IN_PROGRESS"
1605
+ # resp.next_token #=> String
1606
+ #
1607
+ # @see http://docs.aws.amazon.com/goto/WebAPI/finspace-2020-07-13/ListPermissionGroupsByUser AWS API Documentation
1608
+ #
1609
+ # @overload list_permission_groups_by_user(params = {})
1610
+ # @param [Hash] params ({})
1611
+ def list_permission_groups_by_user(params = {}, options = {})
1612
+ req = build_request(:list_permission_groups_by_user, params)
1613
+ req.send_request(options)
1614
+ end
1615
+
1408
1616
  # Lists all available user accounts in FinSpace.
1409
1617
  #
1410
1618
  # @option params [String] :next_token
@@ -1454,6 +1662,53 @@ module Aws::FinSpaceData
1454
1662
  req.send_request(options)
1455
1663
  end
1456
1664
 
1665
+ # Lists details of all the users in a specific permission group.
1666
+ #
1667
+ # @option params [required, String] :permission_group_id
1668
+ # The unique identifier for the permission group.
1669
+ #
1670
+ # @option params [String] :next_token
1671
+ # A token that indicates where a results page should begin.
1672
+ #
1673
+ # @option params [required, Integer] :max_results
1674
+ # The maximum number of results per page.
1675
+ #
1676
+ # @return [Types::ListUsersByPermissionGroupResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1677
+ #
1678
+ # * {Types::ListUsersByPermissionGroupResponse#users #users} => Array<Types::UserByPermissionGroup>
1679
+ # * {Types::ListUsersByPermissionGroupResponse#next_token #next_token} => String
1680
+ #
1681
+ # @example Request syntax with placeholder values
1682
+ #
1683
+ # resp = client.list_users_by_permission_group({
1684
+ # permission_group_id: "PermissionGroupId", # required
1685
+ # next_token: "PaginationToken",
1686
+ # max_results: 1, # required
1687
+ # })
1688
+ #
1689
+ # @example Response structure
1690
+ #
1691
+ # resp.users #=> Array
1692
+ # resp.users[0].user_id #=> String
1693
+ # resp.users[0].status #=> String, one of "CREATING", "ENABLED", "DISABLED"
1694
+ # resp.users[0].first_name #=> String
1695
+ # resp.users[0].last_name #=> String
1696
+ # resp.users[0].email_address #=> String
1697
+ # resp.users[0].type #=> String, one of "SUPER_USER", "APP_USER"
1698
+ # resp.users[0].api_access #=> String, one of "ENABLED", "DISABLED"
1699
+ # resp.users[0].api_access_principal_arn #=> String
1700
+ # resp.users[0].membership_status #=> String, one of "ADDITION_IN_PROGRESS", "ADDITION_SUCCESS", "REMOVAL_IN_PROGRESS"
1701
+ # resp.next_token #=> String
1702
+ #
1703
+ # @see http://docs.aws.amazon.com/goto/WebAPI/finspace-2020-07-13/ListUsersByPermissionGroup AWS API Documentation
1704
+ #
1705
+ # @overload list_users_by_permission_group(params = {})
1706
+ # @param [Hash] params ({})
1707
+ def list_users_by_permission_group(params = {}, options = {})
1708
+ req = build_request(:list_users_by_permission_group, params)
1709
+ req.send_request(options)
1710
+ end
1711
+
1457
1712
  # Resets the password for a specified user ID and generates a temporary
1458
1713
  # one. Only a superuser can reset password for other users. Resetting
1459
1714
  # the password immediately invalidates the previous password associated
@@ -1683,13 +1938,20 @@ module Aws::FinSpaceData
1683
1938
  # The permissions that are granted to a specific group for accessing the
1684
1939
  # FinSpace application.
1685
1940
  #
1941
+ # When assigning application permissions, be aware that the permission
1942
+ # `ManageUsersAndGroups` allows users to grant themselves or others
1943
+ # access to any functionality in their FinSpace environment's
1944
+ # application. It should only be granted to trusted users.
1945
+ #
1686
1946
  # * `CreateDataset` – Group members can create new datasets.
1687
1947
  #
1688
1948
  # * `ManageClusters` – Group members can manage Apache Spark clusters
1689
1949
  # from FinSpace notebooks.
1690
1950
  #
1691
1951
  # * `ManageUsersAndGroups` – Group members can manage users and
1692
- # permission groups.
1952
+ # permission groups. This is a privileged permission that allows users
1953
+ # to grant themselves or others access to any functionality in the
1954
+ # application. It should only be granted to trusted users.
1693
1955
  #
1694
1956
  # * `ManageAttributeSets` – Group members can manage attribute sets.
1695
1957
  #
@@ -1747,7 +2009,7 @@ module Aws::FinSpaceData
1747
2009
  # data in FinSpace.
1748
2010
  #
1749
2011
  # * `APP_USER` – A user with specific permissions in FinSpace. The users
1750
- # are assigned permissions by adding them to a permissions group.
2012
+ # are assigned permissions by adding them to a permission group.
1751
2013
  #
1752
2014
  # @option params [String] :first_name
1753
2015
  # The first name of the user.
@@ -1818,7 +2080,7 @@ module Aws::FinSpaceData
1818
2080
  params: params,
1819
2081
  config: config)
1820
2082
  context[:gem_name] = 'aws-sdk-finspacedata'
1821
- context[:gem_version] = '1.14.0'
2083
+ context[:gem_version] = '1.17.0'
1822
2084
  Seahorse::Client::Request.new(handlers, context)
1823
2085
  end
1824
2086