以下の SQL コマンドを使用して、Feature Storeのロールと権限を手動で設定できます。最初のブロックには、 SET コマンドがいくつかあり、プロデューサーロールとコンシューマーロールに使用する名前と、機能ビューを格納するデータベースとスキーマをスクリプトに指定します。これらのオブジェクトがない場合は、すべて作成されます。
-- Initialize variables for usage in SQL scripts belowSETFS_ROLE_PRODUCER='<FS_PRODUCER_ROLE>';SETFS_ROLE_CONSUMER='<FS_CONSUMER_ROLE>';SETFS_DATABASE='<FS_DATABASE_NAME>';SETFS_SCHEMA='<FS_SCHEMA_NAME>';SETFS_WAREHOUSE='<FS_WAREHOUSE>';-- Create schemaSETSCHEMA_FQN=CONCAT($FS_DATABASE,'.',$FS_SCHEMA);CREATESCHEMAIFNOTEXISTSIDENTIFIER($SCHEMA_FQN);-- Create rolesCREATEROLEIFNOTEXISTSIDENTIFIER($FS_ROLE_PRODUCER);CREATEROLEIFNOTEXISTSIDENTIFIER($FS_ROLE_CONSUMER);-- Build role hierarchyGRANTROLEIDENTIFIER($FS_ROLE_PRODUCER)TOROLESYSADMIN;GRANTROLEIDENTIFIER($FS_ROLE_CONSUMER)TOROLEIDENTIFIER($FS_ROLE_PRODUCER);-- Grant PRODUCER role privilegesGRANTCREATEDYNAMIC TABLEONSCHEMAIDENTIFIER($SCHEMA_FQN)TOROLEIDENTIFIER($FS_ROLE_PRODUCER);GRANTCREATEVIEWONSCHEMAIDENTIFIER($SCHEMA_FQN)TOROLEIDENTIFIER($FS_ROLE_PRODUCER);GRANTCREATETAGONSCHEMAIDENTIFIER($SCHEMA_FQN)TOROLEIDENTIFIER($FS_ROLE_PRODUCER);GRANTCREATEDATASETONSCHEMAIDENTIFIER($SCHEMA_FQN)TOROLEIDENTIFIER($FS_ROLE_PRODUCER);GRANTCREATETABLEONSCHEMAIDENTIFIER($SCHEMA_FQN)TOROLEIDENTIFIER($FS_ROLE_PRODUCER);-- Grant CONSUMER role privilegesGRANTUSAGEONDATABASEIDENTIFIER($FS_DATABASE)TOROLEIDENTIFIER($FS_ROLE_CONSUMER);GRANTUSAGEONSCHEMAIDENTIFIER($SCHEMA_FQN)TOROLEIDENTIFIER($FS_ROLE_CONSUMER);GRANTSELECT,MONITORONFUTUREDYNAMIC TABLESINSCHEMAIDENTIFIER($SCHEMA_FQN)TOROLEIDENTIFIER($FS_ROLE_CONSUMER);GRANTSELECT,MONITORONALLDYNAMIC TABLESINSCHEMAIDENTIFIER($SCHEMA_FQN)TOROLEIDENTIFIER($FS_ROLE_CONSUMER);GRANTSELECT,REFERENCESONFUTUREVIEWSINSCHEMAIDENTIFIER($SCHEMA_FQN)TOROLEIDENTIFIER($FS_ROLE_CONSUMER);GRANTSELECT,REFERENCESONALLVIEWSINSCHEMAIDENTIFIER($SCHEMA_FQN)TOROLEIDENTIFIER($FS_ROLE_CONSUMER);GRANTUSAGEONFUTUREDATASETSINSCHEMAIDENTIFIER($SCHEMA_FQN)TOROLEIDENTIFIER($FS_ROLE_CONSUMER);GRANTUSAGEONALLDATASETSINSCHEMAIDENTIFIER($SCHEMA_FQN)TOROLEIDENTIFIER($FS_ROLE_CONSUMER);-- Grant USAGE ON WAREHOUSE to CONSUMERGRANTUSAGEONWAREHOUSEIDENTIFIER($FS_WAREHOUSE)TOROLEIDENTIFIER($FS_ROLE_CONSUMER);