なぜ重要か
従来、ProviderがConsumer環境のアプリに対して必要な運用操作を行うには、Consumer側の対応や個別の調整が必要になる場合がありました。この機能により、ProviderはConsumerアプリに対するSQL実行、失敗したアップグレードの再試行、アプリの無効化・有効化を遠隔操作として呼び出せます。一方、制限付き操作はConsumerの同意がなければ既定で許可されません。
対象となるチーム
- Snowflake Native Appsを提供するProviderの開発・運用チーム
- Native Appsを利用するConsumerのSnowflake管理者
- アプリケーションのアップグレードおよび障害対応を担うSRE・サポートチーム
- Snowflake上の監査・ガバナンスを担当するセキュリティチーム
提供条件
- 提供ステータス: Public Preview
- 対象: Snowflake Native AppsのProviderおよびConsumer
- エディション: リリースノートに記載なし
- リージョン: リリースノートに記載なし
- 制限付き操作には、ConsumerがAUTHORIZE_RESTRICTED_PROVIDER_REMOTE_OPERATIONS_UNTILアプリプロパティで同意を設定する必要がある
ユースケース
- ProviderがConsumerアプリの状態確認や保守対応のために、許可されたrun_sql操作をオンデマンドで実行する。実行可否はConsumerの同意設定に依存します。
- アプリのアップグレードが失敗した際に、Providerがretry_upgradeを呼び出して再試行する。
- 障害対応や計画メンテナンス時に、Providerがdisableでアプリを無効化し、復旧後にenableで再有効化する。
- 遠隔操作の実行履歴をACCOUNT_USAGE.APPLICATION_REMOTE_OPERATION_HISTORYビューで確認し、運用監査やトラブルシューティングに利用する。
仕組みと使い方
Providerは新しいシステム関数SYSTEM$REMOTE_APP_OPERATIONを使用して、Consumerアプリに対する操作を呼び出します。対象としてリリースノートに記載されている操作は、run_sql、retry_upgrade、disable、enableです。run_sqlなどの制限付き操作は、ConsumerがAUTHORIZE_RESTRICTED_PROVIDER_REMOTE_OPERATIONS_UNTILアプリプロパティを設定して同意した場合に利用できます。既定では、制限付き操作であるrun_sqlは認可されません。呼び出し履歴はACCOUNT_USAGE.APPLICATION_REMOTE_OPERATION_HISTORYで確認します。具体的な引数、戻り値、権限、プロパティ設定のSQL構文は、公式のProvider guide、Consumer guide、SYSTEM$REMOTE_APP_OPERATIONリファレンスで確認してください。
導入ステップ
- Provider guideのUse remote app operationsを確認し、対象アプリと実行したい操作の要件を整理する。
- Consumer側で、制限付き操作に同意するかどうかとAUTHORIZE_RESTRICTED_PROVIDER_REMOTE_OPERATIONS_UNTILの設定方針を決める。
- Consumer環境で必要な同意・権限・アプリ設定を行い、Preview利用条件を確認する。
- Provider側でSYSTEM$REMOTE_APP_OPERATIONを使い、まずretry_upgradeやdisable・enableなど対象となる操作を検証する。
- run_sqlを利用する場合は、限定的な対象と手順で実行し、ACCOUNT_USAGE.APPLICATION_REMOTE_OPERATION_HISTORYに記録されることを確認する。
- 検証結果、監査要件、障害時の停止手順を踏まえて、本番利用の可否を判断する。
運用上の注意
- 制限付き操作はConsumerの同意が必要で、既定ではrun_sqlが認可されません。Provider側だけで利用を開始できるとは限りません。
- remote app operationはConsumerアプリに影響する操作です。特にrun_sql、disable、enableは、実行対象と実行タイミングを事前に運用手順へ明記してください。
- 操作の呼び出し履歴はACCOUNT_USAGE.APPLICATION_REMOTE_OPERATION_HISTORYで確認できます。監査や調査に必要な確認者・保存方針は別途定める必要があります。
- Preview機能であるため、利用前に公式ドキュメントで仕様、権限、利用条件、変更可能性を確認してください。
制約事項
- Preview段階の機能であり、正式提供の仕様や安定性が保証されているとはリリースノートに記載されていません。
- リリースノートに記載されている操作はrun_sql、retry_upgrade、disable、enableに限られます。その他の遠隔操作への対応はリリースノートに記載なしです。
- 制限付き操作の認可方法は示されていますが、同意の具体的な有効期間、更新方法、取り消し手順の詳細はリリースノートに記載なしです。
- 必要な権限、引数、戻り値、エラー処理、操作対象の詳細はリリースノートに記載なしです。
- エディション別およびリージョン別の提供条件はリリースノートに記載なしです。
次に確認すること
- 公式のProvider guide、Consumer guide、SYSTEM$REMOTE_APP_OPERATIONリファレンスで、構文・権限・引数・戻り値を確認する。
- Consumer環境でAUTHORIZE_RESTRICTED_PROVIDER_REMOTE_OPERATIONS_UNTILの設定方法、同意期間、撤回方法を検証する。
- テスト用Native Appで各操作とACCOUNT_USAGE.APPLICATION_REMOTE_OPERATION_HISTORYへの記録を確認する。
- 対象アカウントのエディション、リージョン、Preview利用条件および社内の監査・変更管理要件を確認する。
公式情報
仕様・提供条件は更新される可能性があります。導入前に必ず公式リリースノートを確認してください。
https://docs.snowflake.com/release-notes/2026/other/2026-08-25-remote-app-operations-preview