SHARE (outbound)
Config path: /outbound_share.yaml
Example:
test_share:
accounts:
- SFSALESSHARED.SFC_SAMPLES_AWS_EU_WEST_2
grants:
DATABASE:USAGE:
- test_db
SCHEMA:USAGE:
- test_db.test_schema
TABLE:SELECT:
- test_db.test_schema.*
FUNCTION:USAGE:
- test_db.test_schema.test_secure_udf(varchar)
DATABASE_ROLE:USAGE:
- test_db.test_database_role
comment: Test share
Schema
{key} (ident) - share name
{value} (dict)
accounts (list)
{items} (ident) - identifiers of consumer accounts:
<organization>.<account>
.
grants (str)
{key} (str) -
<object_type>:<privilege>
{value} (list)
{items} (ident) - full objects names or name patterns to grant privilege;
share_restrictions (bool) - should be set to
false
in order to create SHARE from Business Critical account to accounts with lower edition;comment (str)
Usage notes
Outbound shares are processed if at least one share exists in config.
All changes to outbound shares are "unsafe" and should be reviewed carefully, since it may expose data from your account to 3rd parties.
Outbound shares require additional privileges for SnowDDL administration user:
IMPORT SHARE
,CREATE SHARE
.Parameter share_restrictions requires additional privilege:
OVERRIDE SHARE RESTRICTIONS
.All limitations related to
GRANT ... TO SHARE
command applies to grants. Please read it carefully.It is possible to use Unix-style wildcard patterns for grant object names.
Grants created externally and matching Unix-style wildcard patterns will not be dropped if objects are not explicitly defined in config. It is an intentional workaround for lack of future grants on shares.
You may create and grant DATABASE ROLE to share using
DATABASE_ROLE:USAGE
privilege.
Links
Last updated