ALTER APPLICATION SET SPECIFICATIONS

|native-app|の アプリ仕様 を作成または更新します。

注釈

このコマンドは|native-app|でのみ使用できます。

こちらもご参照ください。

ALTER APPLICATIONALTER APPLICATION ... { APPROVE | DECLINE} SPECIFICATIONALTER APPLICATION DROP SPECIFICATION

構文

外部アクセス統合

ALTER APPLICATION SET SPECIFICATION <app_spec_name>
  TYPE = EXTERNAL_ACCESS
  LABEL = '<label>'
  DESCRIPTION = '<description>'
  { HOST_PORTS | PRIVATE_HOST_PORTS } = ( '<value>' [, '<value>', ... ] )
Copy

セキュリティ統合(CLIENT_CREDENTIALS)

ALTER APPLICATION SET SPECIFICATION <app_spec_name>
    TYPE = SECURITY_INTEGRATION
    LABEL = '<string_literal>'
    DESCRIPTION = '<string_literal>'
    OAUTH_TYPE = 'CLIENT_CREDENTIALS'
    OAUTH_TOKEN_ENDPOINT = '<string_literal>'
    OAUTH_ALLOWED_SCOPES = ( '<scope>' [ , '<scope>' ... ] );
Copy

セキュリティ統合(AUTHORIZATION_CODE)

ALTER APPLICATION SET SPECIFICATION <app_spec_name>
  TYPE = SECURITY_INTEGRATION
  LABEL = '<string_literal>'
  DESCRIPTION = '<string_literal>'
  OAUTH_TYPE = 'AUTHORIZATION_CODE'
  OAUTH_TOKEN_ENDPOINT = '<string_literal>'
  [ OAUTH_AUTHORIZATION_ENDPOINT = '<string_literal>' ]
  [ OAUTH_ALLOWED_SCOPES = ( '<scope>' [ , '<scope>' ... ] ) ];
Copy

セキュリティ統合(JWT_BEARER)

ALTER APPLICATION SET SPECIFICATION <app_spec_name>
  TYPE = SECURITY_INTEGRATION
  LABEL = '<string_literal>'
  DESCRIPTION = '<string_literal>'
  OAUTH_TYPE = 'JWT_BEARER'
  OAUTH_TOKEN_ENDPOINT = '<string_literal>'
  [ OAUTH_AUTHORIZATION_ENDPOINT = '<string_literal>' ]
  [ OAUTH_ALLOWED_SCOPES = ( '<scope>' [ , '<scope>' ... ] ) ];
Copy

Listing

ALTER APPLICATION SET SPECIFICATION <app_spec_name>
  TYPE = LISTING
  LABEL = '<string_literal>'
  DESCRIPTION = '<string_literal>'
  TARGET_ACCOUNTS = '<account_list>'
  LISTING = <listing_name>
  [ AUTO_FULFILLMENT_REFRESH_SCHEDULE = '<schedule>' ]
Copy

一般的なパラメーター

app_spec_name

:doc:`アプリ仕様 </developer-guide/native-apps/requesting-app-specs>`の識別子。

TYPE = {EXTERNAL_ACCESS | SECURITY_INTEGRATION | LISTING}

アプリ仕様のタイプを指定します。サポートされる値は次のとおりです。

LABEL = 'label'

アプリ仕様のラベルを指定します。このラベルは、コンシューマーに表示されるアプリの仕様名です。各アプリ仕様には、一意のラベルが必要です。

DESCRIPTION = 'description'

アプリ仕様の説明を指定します。Snowflakeでは、アプリの仕様タイプと、アプリ仕様がアプリに必要な理由について情報を含めることを推奨しています。

外部アクセス統合パラメーター

HOST_PORTS | PRIVATE_HOST_PORTS = ( 'value' [ , 'value', ... ] )

アプリが接続できるホストポートまたはプライベートホストポートのリストを指定します。これらのポートは、外部アクセス統合によって使用されます。

セキュリティ統合パラメーター - CLIENT_CREDENTIALS

OAUTH_TYPE = 'CLIENT_CREDENTIALS'

外部のAPI認証に対するセキュリティ統合のタイプを指定します。詳細については、 CREATE SECURITY INTEGRATION (外部 API 認証) をご参照ください。

OAUTH_TOKEN_ENDPOINT = 'string_literal'

クライアントが認証付与トークンまたは更新トークンを提示してアクセストークンを取得する際に使用するトークンエンドポイントを指定します。詳細については、 CREATE SECURITY INTEGRATION (外部 API 認証) をご参照ください。

OAUTH_ALLOWED_SCOPES = ( 'scope' [  , 'scope' ... ]  )

OAuth クライアント認証情報フロー中に統合に対して USAGE を持つロールによって OAuth からリクエストする際に使用する、各スコープを一重引用符で囲んだスコープのコンマ区切りリストを指定します。詳細については、 CREATE SECURITY INTEGRATION (外部 API 認証) をご参照ください。

OAUTH_ACCESS_TOKEN_VALIDITY = integer

OAuth サーバーによって発行された OAuth アクセストークンのデフォルトの有効期間(秒単位)を指定します。詳細については、 CREATE SECURITY INTEGRATION (外部 API 認証) をご参照ください。

セキュリティ統合パラメーター - AUTHORIZATION_CODE

OAUTH_TYPE = 'AUTHORIZATION_CODE'

外部のAPI認証に対するセキュリティ統合のタイプを指定します。詳細については、 CREATE SECURITY INTEGRATION (外部 API 認証) をご参照ください。

OAUTH_TOKEN_ENDPOINT = 'string_literal'

クライアントが認証付与トークンまたは更新トークンを提示してアクセストークンを取得する際に使用するトークンエンドポイントを指定します。詳細については、 CREATE SECURITY INTEGRATION (外部 API 認証) をご参照ください。

OAUTH_AUTHORIZATION_ENDPOINT = 'string_literal'

外部サービスへの認証のための URL を指定します。詳細については、 CREATE SECURITY INTEGRATION (外部 API 認証) をご参照ください。

OAUTH_ACCESS_TOKEN_VALIDITY = integer

OAuth サーバーによって発行された OAuth アクセストークンのデフォルトの有効期間(秒単位)を指定します。詳細については、 CREATE SECURITY INTEGRATION (外部 API 認証) をご参照ください。

OAUTH_REFRESH_TOKEN_VALIDITY = integer

OAuthサーバーによって発行されたOAuth更新トークンのデフォルトの有効期間(秒単位)を指定します。詳細については、 CREATE SECURITY INTEGRATION (外部 API 認証) をご参照ください。

セキュリティ統合パラメーター - JWT_BEARER

OAUTH_TYPE = 'JWT_BEARER'

外部のAPI認証に対するセキュリティ統合のタイプを指定します。詳細については、 CREATE SECURITY INTEGRATION (外部 API 認証) をご参照ください。

OAUTH_TOKEN_ENDPOINT = 'string_literal'

クライアントが認証付与トークンまたは更新トークンを提示してアクセストークンを取得する際に使用するトークンエンドポイントを指定します。詳細については、 CREATE SECURITY INTEGRATION (外部 API 認証) をご参照ください。

OAUTH_AUTHORIZATION_ENDPOINT = 'string_literal'

外部サービスへの認証のための URL を指定します。詳細については、 CREATE SECURITY INTEGRATION (外部 API 認証) をご参照ください。

OAUTH_REFRESH_TOKEN_VALIDITY = integer

OAuthサーバーによって発行されたOAuth更新トークンのデフォルトの有効期間(秒単位)を指定します。詳細については、 CREATE SECURITY INTEGRATION (外部 API 認証) をご参照ください。

Listing parameters

TARGET_ACCOUNTS = 'account_list'

Specifies a single-quoted string of target accounts, separated by commas, with no spaces. Each account must be specified in the format OrgName.AccountName; for example: 'ProviderOrg.ProviderAccount,PartnerOrg.PartnerAccount'. When the specification is approved, these accounts are added to the listing. When declined, all accounts are removed from the listing.

LISTING = listing_name

Specifies the identifier of the external listing created by the app. The listing must already exist and must have been created by the app with a share attached. After the listing is set in an app specification, the listing name cannot be changed.

AUTO_FULFILLMENT_REFRESH_SCHEDULE = 'schedule'

Optional. Specifies the refresh schedule for cross-region data sharing. This parameter is required when sharing data across regions. The value can be specified in two formats:

  • num MINUTE: Number of minutes, with a minimum of 10 minutes and a maximum of 11,520 minutes (eight days).

  • USING CRON expression time_zone: Cron expression with time zone for the refresh.

使用上の注意

  • このコマンドを使用するには、プロバイダーは:code:`manifest_version = 2`を使用しているアプリのマニフェストファイルを確認する必要があります。

Examples

Create an app specification for external access:

ALTER APPLICATION SET SPECIFICATION eai_spec
  TYPE = EXTERNAL_ACCESS
  LABEL = 'External API Access'
  DESCRIPTION = 'Connect to external weather API'
  HOST_PORTS = ('api.weather.com:443', 'api.openweather.org:443');
Copy

Create an app specification for OAuth security integration:

ALTER APPLICATION SET SPECIFICATION oauth_spec
  TYPE = SECURITY_INTEGRATION
  LABEL = 'OAuth Integration'
  DESCRIPTION = 'Connect to Microsoft Graph API'
  OAUTH_TYPE = 'CLIENT_CREDENTIALS'
  OAUTH_TOKEN_ENDPOINT = 'https://login.microsoftonline.com/YOUR_TENANT_ID/oauth2/v2.0/token'
  OAUTH_ALLOWED_SCOPES = ('https://graph.microsoft.com/.default');
Copy

Create an app specification for data sharing through a listing:

ALTER APPLICATION SET SPECIFICATION shareback_spec
  TYPE = LISTING
  LABEL = 'Telemetry Data Sharing'
  DESCRIPTION = 'Share telemetry and usage data with provider'
  TARGET_ACCOUNTS = 'ProviderOrg.ProviderAccount,PartnerOrg.PartnerAccount'
  LISTING = telemetry_listing
  AUTO_FULFILLMENT_REFRESH_SCHEDULE = '720 MINUTE';
Copy