This guide provides your Black Diamond administrator with instructions to get started using the platform. The objective of this guide is to provide you with the resources that you need to get Black Diamond working with your Snowflake instance.
To use Black Diamond with Snowflake, you must meet the following prerequisites.
In order to leverage Black Diamond, you must first create a Snowflake account.
To use the Data Secure feature, you must have a Snowflake Account that is Enterprise Edition or higher.If you do not have an account that meets this requirement, you will not be able to access the Data Secure functionality. If you are adding multiple connections, only those connections that meet this requirement will be available. If you are not planning to use Data Secure, you can skip this requirement.
Allow Black Diamond network policy access to your Snowflake Account
If you have restricted access to your Snowflake account to only be accessible from specific IP addresses, you will need to ensure that you add Black Diamond's IP addresses to your policies. IF you do not have network policies enabled, you can skip this requirement.
The Black Diamond IP addresses are 10.0.0.1/28, 10.0.0.1/28, and 192.168.1.1/28.
In order for Black Diamond to communicate with your Snowflake instance, you must deploy Black Diamond configuration settings to each instance. This deployment will create a warehouse, role, user, and database (BD_SERVICE_USER, BD_SERVICE_ROLE, BD_SERVICE_WH, and BD_SERVICE_DB). In order to create these objects and GRANT the appropriate permissions to them, the setup user for each connection must have an ACCCOUNTADMIN role. Once the configuration is deployed, Black Diamond will switch to using the configuration objects to log in and interact with your instance.
In order to setup and use Black Diamond, you must follow these initial steps:
To create a connection, you must first create a Public and Private Key. This is used to generate the unique fingerprint for your user to authenticate, which does not require you to supply a password to your instance. You will need access to a command line interface, such as Terminal on MacOS, or other method. Click here to view method examples.
openssl genrsa 2048 | openssl pkcs8 -topk8 -inform PEM -out rsa_key.p8 -nocrypt 2 . Generate a public key from your referenced private key: openssl rsa -in rsa_key.p8 -pubout -out rsa_key.pub
ALTER USER username_here SET rsa_public_key='MIIevgIBADANDbgKghki...';
At this time, Black Diamond does not support Partner Connect. Black Diamond, a QuadraByte solution, is a Service Partner and Technology Partner with Snowflake. All connections to Snowflake are recorded through the Technology Partner identification tagging. Black Diamond leverages the Snowflake API, instead of a Snowflake Driver, and there currently is not full support for Partner Connect through the API.
Black Diamond uses the Snowflake API instead of a Driver to communicate with your Snowflake instance. All API calls are made with SSL connections between Black Diamond and Snowflake, allowing for secure transmission of your data. The Snowflake API provides more flexiblity to querying your Snowflake instance, including asynchronous exection and deferring execution of calls to job workers so that long-running statements will run in the background while you continue to use other aspects of the platform.