Snowflake
Create an integration to manage access to a Snowflake instance
Snowflake is a fully managed, cloud-based data platform that functions as a data warehouse, data lake, and data sharing solution. With features such as automatic scaling, secure data sharing, and robust data integration, Snowflake offers high performance and flexibility, ensuring seamless data management and analytics.
Through this integration, Apono helps you securely manage access to your Snowflake instance.
Prerequisites
Apono Connector
On-prem connection serving as a bridge between a Snowflake instance and Apono:
Snowflake Hostname
Unique identifier of the Snowflake instance to connect You can use either format:
Create a Snowflake user
You must create a user in your Snowflake instance for the Apono connector and grant that user permissions to your instance.
Follow these steps to create a user for the Apono connector:
Create a new role called APONOADMIN.
CREATE ROLE APONOADMIN;
Grant the following access to the role. These permissions allow the connector to create users and roles, manage role grants, and monitor account activity, such as running
SHOW
commands or viewing users, roles, and sessions.
GRANT CREATE USER ON ACCOUNT TO ROLE APONOADMIN;
GRANT CREATE ROLE ON ACCOUNT TO ROLE APONOADMIN;
GRANT MANAGE GRANTS ON ACCOUNT TO ROLE APONOADMIN;
GRANT MONITOR ON ACCOUNT TO ROLE APONOADMIN;
Create a user for the Apono connector. Use APONO_CONNECTOR or another name of your choosing for the username. Be sure to set a strong password for the user.
CREATE USER APONO_CONNECTOR PASSWORD = 'password';
Assign the APONOADMIN role to the user.
GRANT ROLE APONOADMIN TO USER APONO_CONNECTOR;
(Optional) Set the default role for the user.
ALTER USER APONO_CONNECTOR SET DEFAULT_ROLE = APONOADMIN;
Create a secret with the credentials from step 3. Use the following key-value pair structure when generating the secret. Be sure to replace
#PASSWORD
with the actual value. If you used a different name for the user, replaceAPONO_CONNECTOR
with the name you assigned to the user.
"username": "APONO_CONNECTOR",
"password": "#PASSWORD"
You can also input the user credentials directly into the Apono UI during the integration process.
You can now integrate your Snowflake instance.
Integrate Snowflake
You can also use the steps below to integrate with Apono using Terraform.
In step 11, instead of clicking Confirm, follow the Are you integrating with Apono using Terraform? guidance.
Follow these steps to complete the integration:
On the Catalog tab, click Snowflake. The Connect Integration page appears.
Under Discovery, select one or multiple resource types for Apono to discover in all instances of the environment.
Click Next. The Apono connector section expands.
From the dropdown menu, select a connector. Choosing a connector links Apono to all the services available on the account where the connector is located.
If the desired connector is not listed, click + Add new connector and follow the instructions for creating a connector (AWS, Azure, GCP, Kubernetes).
Click Next. The Integration Config section expands.
Define the Integration Config settings.\
SettingDescriptionIntegration Name
Unique, alphanumeric, user-friendly name used to identify this integration when constructing an access flow
Hostname
Hostname of the Snowflake instance to connect
Auth Type
Authorization type for the Snowflake user
User / Password: Apono-created local user credentials
SSO Auth: Synced user credentials from IdP integration with Snowflake
Click Next. The Secret Store section expands.
Click Next. The Get more with Apono section expands.
Define the Get more with Apono settings.\
SettingDescriptionCredential Rotation
User cleanup after access is revoked (in days)
(Optional) Defines the number of days after access has been revoked that the user should be deleted
Custom Access Details
(Optional) Instructions explaining how to access this integration's resources Upon accessing an integration, a message with these instructions will be displayed to end users in the User Portal. The message may include up to 400 characters. To view the message as it appears to end users, click Preview.
Integration Owner
From the Attribute dropdown menu, select User or Group under the relevant identity provider (IdP) platform.
From the Value dropdown menu, select one or multiple users or groups.
NOTE: When Resource Owner is defined, an Integration Owner must be defined.
Resource Owner
Enter a Key name. This value is the name of the tag created in your cloud environment.
From the Attribute dropdown menu, select an attribute under the IdP platform to which the key name is associated. Apono will use the value associated with the key (tag) to identify the resource owner. When you update the membership of the group or role in your IdP platform, this change is also reflected in Apono.
NOTE: When this setting is defined, an Integration Owner must also be defined.
Click Confirm.
Now that you have completed this integration, you can create access flows that grant permission to your Snowflake instance.
Last updated
Was this helpful?