アプリの仕様を使用した外部リソースへの接続の承認

このトピックでは、コンシューマーがアプリ仕様を使用して、Snowflake Native App の外部リソースへの接続を承認する方法について説明します。

アプリ仕様について

アプリ仕様を使うと、プロバイダーは、アプリに必要な外部(Snowflakeの外部)のエンドポイントとリソースを指定できます。コンシューマーは、アプリがリクエストしているエンドポイントを表示し、必要に応じて承認または却下できます。

コンシューマーがアプリ仕様を承認すると、アプリはこれらのエンドポイントに接続する権限を持つようになります。アプリ仕様では、コンシューマーが外部リソースに接続することのみを承認できます。

アプリは、外部アクセス統合などのオブジェクトを作成する権限をリクエストすることもできます。詳細については、 アプリがコンシューマーアカウントでリソースを作成できるようにする をご参照ください。

アプリ仕様のステータス

アプリ仕様には、コンシューマーが承認したか却下したかを示すステータスがあります。可能なステータスは次のとおりです。

  • PENDING コンシューマーはアプリ仕様を承認も拒否もしていません。このステータスがデフォルトです。

  • APPROVED コンシューマーはアプリ仕様を承認しています。

  • DECLINED コンシューマーはアプリ仕様を拒否しています。

アプリ仕様のステータスを判断する方法については、アプリに必要な外部エンドポイントの表示 をご参照ください。

アプリ仕様のシーケンス番号

シーケンス番号は、アプリ仕様のバージョンを一意に識別するために使用されます。シーケンス番号は、プロバイダーがアプリ仕様の定義を変更すると自動的にインクリメントされます。アプリ仕様の定義には、構成やその他の必要な情報が含まれます。description などの定義の一部ではないフィールドは、シーケンス番号の更新をトリガーしません。

シーケンス番号によって、プロバイダーとコンシューマーは、アプリ仕様の現在のステータスと、どの外部エンドポイントが有効になっているかを知ることができます。

アプリのアプリ仕様の表示

アプリがリクエストした外部エンドポイントを表示するには、コンシューマーは次の例に示すように SHOW に SPECIFICATIONS コマンドを使用します。

SHOW SPECIFICATIONS IN APPLICATION hello_snowflake_app;
Copy

このコマンドは、hello_snowflake_app というアプリのアプリ仕様に関する情報をリストします。

status 列は、アプリ仕様が承認されているか、却下されているか、またはまだ保留中かを示します。詳細については、 アプリ仕様のステータス をご参照ください。

アプリに必要な外部エンドポイントの表示

アプリに必要な外部エンドポイントを表示するには、コンシューマーは次の例に示すように DESCRIBE に SPECIFICATION コマンドか SHOW に SPECIFICATIONS コマンドを使用して、アプリ仕様の詳細を表示します。

DESC SPECIFICATION my_app_specification IN APPLICATION hello_snowflake_app;
SHOW SPECIFICATIONS IN APPLICATION hello_snowflake_app;
Copy

このコマンドはシーケンス番号ごとにアプリ仕様のプロパティとその値を表示します。

definition フィールドには、アプリがリクエストしている外部ホストポートのリストが含まれています。アプリ仕様のシーケンス番号 をご参照ください。

Snowsight を使用したアプリ仕様の承認

コンシューマーは Snowsight を使用してアプリ仕様を承認または拒否できます。

  1. Snowsight にサインインします。

  2. ナビゲーションメニューで Data Products » Apps を選択します。

  3. アプリを選択します。

  4. ツールバーの Settings アイコンを選択します。

  5. Connections を選択します。

  6. 承認する接続の横にある Details を展開します。

    Snowsight は、アプリの外部アクセス統合、ネットワークルール、リクエストされたエンドポイントを表示します。

  7. リクエストされたエンドポイントを承認または拒否します。

    • エンドポイントを承認するには、...Approve の順に選択します。

    • エンドポイントを拒否するには、...Deny の順に選択します。

SQL を使用したアプリ仕様の承認または却下

コンシューマーは、アプリが外部エンドポイントに接続できるようにするアプリ仕様を承認または拒否できます。

アプリ仕様の承認または却下に必要な権限

アプリの仕様を承認または却下するには、ユーザーは MANAGE APPLICATION SPECIFICATIONS 権限を持つロールを使用する必要があります。この権限は、デフォルトで SECURITYADMIN ロールに付与されます。SECURITYADMIN ロールを持つユーザーは、必要に応じてこの権限を他のロールに付与できます。

注釈

アプリ仕様を承認すると、アプリがSnowflakeの外部にあるエンドポイントにアクセスできるようになるため、コンシューマーは、コンシューマーアカウントロールのセキュリティ管理者によって委任された MANAGE APPLICATION SPECIFICATIONS 権限を持つロールを使用する必要があります。アプリの所有者であっても、必要な権限は付与されません。

SQL を使用したアプリ仕様の承認

アプリ仕様を承認するには、コンシューマーは次の例に示すように ALTER APPLICATION コマンドを実行できます。

ALTER APPLICATION hello-snowflake-app APPROVE SPECIFICATION
  my-app-spec SEQUENCE_NUMBER = 2;
Copy

このコマンドは、hello-snowflake-app という名前のアプリの my-app-spec という名前のアプリ仕様を承認します。

コンシューマーは、DESCRIBE に SPECIFICATION または SHOW に SPECIFICATIONS コマンドを実行することで SEQUENCE_NUMBER の値を取得します。

SQL を使用したアプリ仕様の却下

アプリ仕様を拒否するには、コンシューマーは次の例に示すように ALTER APPLICATION コマンドを実行します。

ALTER APPLICATION hello-snowflake-app DECLINE SPECIFICATION
  my-app-spec SEQUENCE_NUMBER = 2;
Copy