BatchGrantPermissionsCommand

Batch operation to grant permissions to the principal.

Example Syntax

Use a bare-bones client and the command you need to make an API call.

import { LakeFormationClient, BatchGrantPermissionsCommand } from "@aws-sdk/client-lakeformation"; // ES Modules import
// const { LakeFormationClient, BatchGrantPermissionsCommand } = require("@aws-sdk/client-lakeformation"); // CommonJS import
const client = new LakeFormationClient(config);
const input = { // BatchGrantPermissionsRequest
  CatalogId: "STRING_VALUE",
  Entries: [ // BatchPermissionsRequestEntryList // required
    { // BatchPermissionsRequestEntry
      Id: "STRING_VALUE", // required
      Principal: { // DataLakePrincipal
        DataLakePrincipalIdentifier: "STRING_VALUE",
      },
      Resource: { // Resource
        Catalog: { // CatalogResource
          Id: "STRING_VALUE",
        },
        Database: { // DatabaseResource
          CatalogId: "STRING_VALUE",
          Name: "STRING_VALUE", // required
        },
        Table: { // TableResource
          CatalogId: "STRING_VALUE",
          DatabaseName: "STRING_VALUE", // required
          Name: "STRING_VALUE",
          TableWildcard: {},
        },
        TableWithColumns: { // TableWithColumnsResource
          CatalogId: "STRING_VALUE",
          DatabaseName: "STRING_VALUE", // required
          Name: "STRING_VALUE", // required
          ColumnNames: [ // ColumnNames
            "STRING_VALUE",
          ],
          ColumnWildcard: { // ColumnWildcard
            ExcludedColumnNames: [
              "STRING_VALUE",
            ],
          },
        },
        DataLocation: { // DataLocationResource
          CatalogId: "STRING_VALUE",
          ResourceArn: "STRING_VALUE", // required
        },
        DataCellsFilter: { // DataCellsFilterResource
          TableCatalogId: "STRING_VALUE",
          DatabaseName: "STRING_VALUE",
          TableName: "STRING_VALUE",
          Name: "STRING_VALUE",
        },
        LFTag: { // LFTagKeyResource
          CatalogId: "STRING_VALUE",
          TagKey: "STRING_VALUE", // required
          TagValues: [ // TagValueList // required
            "STRING_VALUE",
          ],
        },
        LFTagPolicy: { // LFTagPolicyResource
          CatalogId: "STRING_VALUE",
          ResourceType: "DATABASE" || "TABLE", // required
          Expression: [ // Expression
            { // LFTag
              TagKey: "STRING_VALUE", // required
              TagValues: [ // required
                "STRING_VALUE",
              ],
            },
          ],
          ExpressionName: "STRING_VALUE",
        },
        LFTagExpression: { // LFTagExpressionResource
          CatalogId: "STRING_VALUE",
          Name: "STRING_VALUE", // required
        },
      },
      Permissions: [ // PermissionList
        "ALL" || "SELECT" || "ALTER" || "DROP" || "DELETE" || "INSERT" || "DESCRIBE" || "CREATE_DATABASE" || "CREATE_TABLE" || "DATA_LOCATION_ACCESS" || "CREATE_LF_TAG" || "ASSOCIATE" || "GRANT_WITH_LF_TAG_EXPRESSION" || "CREATE_LF_TAG_EXPRESSION" || "CREATE_CATALOG" || "SUPER_USER",
      ],
      Condition: { // Condition
        Expression: "STRING_VALUE",
      },
      PermissionsWithGrantOption: [
        "ALL" || "SELECT" || "ALTER" || "DROP" || "DELETE" || "INSERT" || "DESCRIBE" || "CREATE_DATABASE" || "CREATE_TABLE" || "DATA_LOCATION_ACCESS" || "CREATE_LF_TAG" || "ASSOCIATE" || "GRANT_WITH_LF_TAG_EXPRESSION" || "CREATE_LF_TAG_EXPRESSION" || "CREATE_CATALOG" || "SUPER_USER",
      ],
    },
  ],
};
const command = new BatchGrantPermissionsCommand(input);
const response = await client.send(command);
// { // BatchGrantPermissionsResponse
//   Failures: [ // BatchPermissionsFailureList
//     { // BatchPermissionsFailureEntry
//       RequestEntry: { // BatchPermissionsRequestEntry
//         Id: "STRING_VALUE", // required
//         Principal: { // DataLakePrincipal
//           DataLakePrincipalIdentifier: "STRING_VALUE",
//         },
//         Resource: { // Resource
//           Catalog: { // CatalogResource
//             Id: "STRING_VALUE",
//           },
//           Database: { // DatabaseResource
//             CatalogId: "STRING_VALUE",
//             Name: "STRING_VALUE", // required
//           },
//           Table: { // TableResource
//             CatalogId: "STRING_VALUE",
//             DatabaseName: "STRING_VALUE", // required
//             Name: "STRING_VALUE",
//             TableWildcard: {},
//           },
//           TableWithColumns: { // TableWithColumnsResource
//             CatalogId: "STRING_VALUE",
//             DatabaseName: "STRING_VALUE", // required
//             Name: "STRING_VALUE", // required
//             ColumnNames: [ // ColumnNames
//               "STRING_VALUE",
//             ],
//             ColumnWildcard: { // ColumnWildcard
//               ExcludedColumnNames: [
//                 "STRING_VALUE",
//               ],
//             },
//           },
//           DataLocation: { // DataLocationResource
//             CatalogId: "STRING_VALUE",
//             ResourceArn: "STRING_VALUE", // required
//           },
//           DataCellsFilter: { // DataCellsFilterResource
//             TableCatalogId: "STRING_VALUE",
//             DatabaseName: "STRING_VALUE",
//             TableName: "STRING_VALUE",
//             Name: "STRING_VALUE",
//           },
//           LFTag: { // LFTagKeyResource
//             CatalogId: "STRING_VALUE",
//             TagKey: "STRING_VALUE", // required
//             TagValues: [ // TagValueList // required
//               "STRING_VALUE",
//             ],
//           },
//           LFTagPolicy: { // LFTagPolicyResource
//             CatalogId: "STRING_VALUE",
//             ResourceType: "DATABASE" || "TABLE", // required
//             Expression: [ // Expression
//               { // LFTag
//                 TagKey: "STRING_VALUE", // required
//                 TagValues: [ // required
//                   "STRING_VALUE",
//                 ],
//               },
//             ],
//             ExpressionName: "STRING_VALUE",
//           },
//           LFTagExpression: { // LFTagExpressionResource
//             CatalogId: "STRING_VALUE",
//             Name: "STRING_VALUE", // required
//           },
//         },
//         Permissions: [ // PermissionList
//           "ALL" || "SELECT" || "ALTER" || "DROP" || "DELETE" || "INSERT" || "DESCRIBE" || "CREATE_DATABASE" || "CREATE_TABLE" || "DATA_LOCATION_ACCESS" || "CREATE_LF_TAG" || "ASSOCIATE" || "GRANT_WITH_LF_TAG_EXPRESSION" || "CREATE_LF_TAG_EXPRESSION" || "CREATE_CATALOG" || "SUPER_USER",
//         ],
//         Condition: { // Condition
//           Expression: "STRING_VALUE",
//         },
//         PermissionsWithGrantOption: [
//           "ALL" || "SELECT" || "ALTER" || "DROP" || "DELETE" || "INSERT" || "DESCRIBE" || "CREATE_DATABASE" || "CREATE_TABLE" || "DATA_LOCATION_ACCESS" || "CREATE_LF_TAG" || "ASSOCIATE" || "GRANT_WITH_LF_TAG_EXPRESSION" || "CREATE_LF_TAG_EXPRESSION" || "CREATE_CATALOG" || "SUPER_USER",
//         ],
//       },
//       Error: { // ErrorDetail
//         ErrorCode: "STRING_VALUE",
//         ErrorMessage: "STRING_VALUE",
//       },
//     },
//   ],
// };

BatchGrantPermissionsCommand Input

Parameter
Type
Description
Entries
Required
BatchPermissionsRequestEntry[] | undefined

A list of up to 20 entries for resource permissions to be granted by batch operation to the principal.

CatalogId
string | undefined

The identifier for the Data Catalog. By default, the account ID. The Data Catalog is the persistent metadata store. It contains database definitions, table definitions, and other control information to manage your Lake Formation environment.

BatchGrantPermissionsCommand Output

Parameter
Type
Description
$metadata
Required
ResponseMetadata
Metadata pertaining to this request.
Failures
BatchPermissionsFailureEntry[] | undefined

A list of failures to grant permissions to the resources.

Throws

Name
Fault
Details
InvalidInputException
client

The input provided was not valid.

OperationTimeoutException
client

The operation timed out.

LakeFormationServiceException
Base exception class for all service exceptions from LakeFormation service.