All pages
Powered by GitBook
1 of 3

Loading...

Loading...

Loading...

How-to Guides

Configure Redshift Integration

This page illustrates how to configure the Redshift integration on the Immuta app settings page. To configure this integration via the Immuta API, see the Integrations API getting started guide.

For instructions on configuring Redshift Spectrum, see the Redshift Spectrum guide.

Requirements

  • A Redshift cluster with an RA3 node is required for the multi-database integration. You must use a Redshift RA3 instance type because Immuta requires cross-database views, which are only supported in Redshift RA3 instance types. For other instance types, you may configure a single-database integration using one of the .

  • For automated installations, the credentials provided must be a Superuser or have the ability to create databases and users and modify grants.

  • The must be set to false (default setting) for your Redshift cluster.

Add a Redshift integration

  1. Click the App Settings icon in the left sidebar.

  2. Click the Integrations tab.

  3. Click the +Add Integration button and select Redshift from the dropdown menu.

  4. Complete the Host and Port fields.

Select your configuration method

You have two options for configuring your Redshift environment:

  • : Grant Immuta one-time use of credentials to automatically configure your Redshift environment and the integration.

  • : Run the Immuta script in your Redshift environment yourself to configure your environment and the integration.

Automatic setup

Immuta requires temporary, one-time use of credentials with specific privileges

When performing an automated installation, Immuta requires temporary, one-time use of credentials with the following privileges:

  • CREATE DATABASE

  1. Select Automatic.

  2. Enter an Initial Database from your Redshift integration for Immuta to use to connect.

  3. Use the dropdown menu to select your Authentication Method.

    1. Username and Password: Enter the

Manual setup

Required privileges

The specified role used to run the bootstrap needs to have the following privileges:

  • CREATE DATABASE

  • CREATE USER

  1. Select Manual and download both of the bootstrap scripts from the Setup section.

  2. Run the bootstrap script (initial database) in the Redshift initial database.

  3. Run the bootstrap script (Immuta database) in the new Immuta Database in Redshift.

  4. Choose your

Save the configuration

Click Save.

Register data

.

Edit a Redshift integration

  1. Click the App Settings icon in the left sidebar.

  2. Navigate to the Integrations tab and click the down arrow next to the Redshift Integration.

  3. Edit the field you want to change. Note any field shadowed is not editable, and the integration must be disabled and re-installed to change it.

  4. Enter Username and Password

Required privileges

When performing edits to an integration, Immuta requires temporary, one-time use of credentials of a Superuser or a user with the following permissions:

  • Create Databases

  • Create users

Remove a Redshift integration

Disabling Redshift Spectrum

Disabling the Redshift integration is not supported when you set the fields nativeWorkspaceName, nativeViewName, and nativeSchemaName to Disabling the integration when these fields are used in metadata ingestion causes undefined behavior.

  1. Click the App Settings icon in the left sidebar.

  2. Navigate to the Integrations tab and click the down arrow next to the Redshift Integration.

  3. Click the checkbox to disable the integration.

  4. Enter the username and password that were used to initially configure the integration.

Enter an Immuta Database. This is a new database where all secure schemas and Immuta created views will be stored.

  • Opt to check the Enable Impersonation box and customize the Impersonation Role name as needed. This will allow users to natively impersonate another user.

  • CREATE USER
  • REVOKE ALL PRIVILEGES ON DATABASE

  • GRANT TEMP ON DATABASE

  • MANAGE GRANTS ON ACCOUNT

  • These privileges will be used to create and configure a new IMMUTA database within the specified Redshift instance. The credentials are not stored or saved by Immuta, and Immuta doesn’t retain access to them after initial setup is complete.

    You can create a new account for Immuta to use that has these privileges, or you can grant temporary use of a pre-existing account. By default, the pre-existing account with appropriate privileges is a Superuser. If you create a new account, it can be deleted after initial setup is complete.

    Alternatively, you can create the IMMUTA database within the specified Redshift instance without giving Immuta user credentials for a Superuser using the manual setup option.

    Username
    and
    Password
    of the privileged user.
  • AWS Access Key: Enter the Database User, Access Key ID, and Secret Key. Opt to enter in the Session Token.

  • REVOKE ALL PRIVILEGES ON DATABASE

  • GRANT TEMP ON DATABASE

  • MANAGE GRANTS ON ACCOUNT

  • authentication method
    , and enter the information of the newly created account.
    .
  • Click Save.

  • Modify grants

    Alternatively, you can download the Edit Script from your Redshift configuration on the Immuta app settings page and run it in Redshift.

    Click Save.

    Redshift Spectrum options
    enable_case_sensitive_identifier parameter
    Automatic setup
    Manual setup
    Register Redshift data in Immuta
    create Redshift Spectrum data sources.

    Configure Redshift Spectrum

    Allow Immuta to create secure views of your external tables through one of these methods:

    • Configure the integration with an existing database that contains the external tables: Instead of creating an immuta database that manages all schemas and views created when Redshift data is registered in Immuta, the integration adds the Immuta-managed schemas and views to an existing database in Redshift

    • Configure the integration by creating a new immuta database and re-create all of your external tables in that database.

    For an overview of the integration, see the Redshift overview documentation.

    Requirements

    • A Redshift cluster with an AWS row-level security patch applied. for guidance.

    • that is .

    • The must be set to false (default setting) for your Redshift cluster.

    • The Redshift role used to run the Immuta bootstrap script must have the following privileges when configuring the integration to

    Use an existing database

    1. Click the App Settings icon in the left sidebar.

    2. Click the Integrations tab.

    3. Click the +Add Integration button and select Redshift from the dropdown menu.

    4. Complete the Host and Port fields.

    Register data

    .

    Create a new Immuta database

    1. Click the App Settings icon in the left sidebar.

    2. Click the Integrations tab.

    3. Click the +Add Integration button and select Redshift from the dropdown menu.

    4. Complete the Host and Port fields.

    Then, add your external tables to the Immuta database.

    Register data

    .

    • Use an existing database:

      • ALL PRIVILEGES ON DATABASE for the database you configure the integration with, as you must manage grants on that database.

      • CREATE USER

      • GRANT TEMP ON DATABASE

    • Create a new database:

      • CREATE DATABASE

      • CREATE USER

      • GRANT TEMP ON DATABASE

  • A Redshift database that contains an external schema and external tables.

  • Enter the name of the database you created the external schema in as the Immuta Database. This database will store all secure schemas and Immuta-created views.

  • Opt to check the Enable Impersonation box and customize the Impersonation Role name as needed. This will allow users to natively impersonate another user.

  • Select Manual and download both of the bootstrap scripts from the Setup section. The specified role used to run the bootstrap needs to have the following privileges:

    • ALL PRIVILEGES ON DATABASE for the database you configure the integration with, as you must manage grants on that database.

    • CREATE USER

    • GRANT TEMP ON DATABASE

  • Run the bootstrap script (Immuta database) in the Redshift database that contains the external schema.

  • Choose your authentication method, and enter the credentials from the bootstrap script for the Immuta_System_Account.

  • Click Save.

  • Enter an Immuta Database. This is a new database where all secure schemas and Immuta created views will be stored.

  • Opt to check the Enable Impersonation box and customize the Impersonation Role name as needed. This will allow users to natively impersonate another user.

  • Select Manual and download both of the bootstrap scripts from the Setup section. The specified role used to run the bootstrap needs to have the following privileges:

    • ALL PRIVILEGES ON DATABASE for the database you configure the integration with, as you must manage grants on that database.

    • CREATE DATABASE

    • CREATE USER

    • GRANT TEMP ON DATABASE

  • Run the bootstrap script (initial database) in the Redshift initial database.

  • Run the bootstrap script (Immuta database) in the new Immuta Database in Redshift.

  • Choose your authentication method, and enter the credentials from the bootstrap script for the Immuta_System_Account.

  • Click Save.

  • Contact Immuta
    An AWS IAM role for Redshift
    associated with your Redshift cluster
    enable_case_sensitive_identifier parameter
    Register Redshift data in Immuta
    Register Redshift data in Immuta
  • REVOKE ALL PRIVILEGES ON DATABASE