OCSP 設定¶
このトピックでは、 OCSPの概要、Snowflakeでの使用、および OCSP の問題の診断に役立つ情報を提供します。
このトピックの内容:
概要¶
Snowflakeは、オンライン証明書状態プロトコル(OCSP)を使用して最大のセキュリティを提供し、Snowflakeクライアントが HTTPS を介してエンドポイントに接続しようとしたときに証明書が取り消されるかどうかを判断します。
Snowflakeは、 OCSP を使用して、ルート証明機関(CA)がパブリッシュする中間証明書までの信頼チェーン内の各証明書を評価します。各証明書が取り消されないようにすることで、SnowflakeはID確認プロセス中に信頼できるアクターと安全な接続を確立できます。
クライアントまたはドライバーのバージョンとこのページで説明されている構成に応じて、 OCSP をオフにし、 OCSP が証明書が失効したと判断したときに発生するアクションを調整することができます。
フェールオープンまたはフェールクローズの動作¶
現在、ユーザーは、OCSP のイベント中にSnowflakeクライアントまたはドライバーがどのように応答するかに関して、2つの動作のいずれかを選択できます。
フェールオープン
フェールクローズ
フェールオープン¶
Snowflakeは、 OCSP CA 応答の評価に関して、デフォルトで フェールオープン アプローチをサポートしています。フェールオープンアプローチには次の特性があります。
失効した証明書を示す応答により、接続に失敗します。
他の証明書エラーまたはステータスを含む応答により、接続が発生しますが、 JSON 形式の関連詳細とともに、
WARNING
レベルのログ内のメッセージを示します。
ユーザーは、特定のドライバーまたはコネクタのログを監視して、フェールオープンログイベントの頻度を判断できます。
これらのイベントログを Snowflakeステータスページ と組み合わせて、クライアントアクセスを一時的に制限したり、 フェールクローズ 動作にピボットするなどの最適なアクションを決定できます。
現在、フェールオープンのデフォルトアプローチは、次のクライアントおよびドライバーバージョンに適用されます。
クライアント/ドライバー |
バージョン |
---|---|
SnowSQL |
v1.1.79以降 |
Pythonコネクタ |
v1.8.0以降 |
JDBC ドライバー |
v3.8.0以降 |
ODBC ドライバー |
v2.19.0以降 |
SQL Alchemy |
Python Connectorをv1.8.0以降にアップグレードする |
Spark |
Mavenまたは SBT を使用してSparkアプリケーションをビルドする場合は、v2.4.14以降。 JAR ファイルをSparkクラスタに添付する場合は、 . JDBC v3.8.0以降。 . Databricks組み込みのSparkコネクタを使用している場合、DatabricksにSparkコネクタのアップグレードをリクエスト。 |
Go Driver |
v1.2.0以降 |
Node.js |
v1.2.0以降 |
注釈
Snowflakeは、.NET ドライバーの OCSP チェックをサポートしていません。代わりに、.NET は独自のフレームワークを使用して、 HTTPS 証明書の有効性を確認します。
フェールクローズ¶
フェールクローズ動作は、 OCSP CA 応答の解釈により制限されます。クライアントまたはドライバーが、何らかの理由で有効な OCSP CA 応答を受信しない場合、接続は失敗します。
この動作は、フェールオープンセクションにリストされているバージョンに基づいたデフォルトではないため、各ドライバーまたはコネクタ内でフェールクローズを手動で構成する必要があります。
フェールクローズ動作を維持するには、対応する ocsp_fail_open
パラメーターを false
に設定します。
クライアント/ドライバー |
設定 |
---|---|
SnowSQL |
|
Pythonコネクタ |
詳細については、Pythonコネクタドキュメントの フェールオープンまたはフェールクローズモードの選択 をご参照ください。 |
JDBC ドライバー |
詳細については、 JDBC ドライバーのドキュメントの フェールオープンまたはフェールクローズモードの選択 をご参照ください。 |
ODBC ドライバー |
次のいずれかを選択します。 . 接続パラメーターを |
SQL Alchemy |
JDBC ドライバーの設定を参照 |
Spark |
Sparkコネクタには |
Go Driver |
次のいずれかを実行します。 . - Configの接続パラメーター |
Node.js |
グローバルパラメーター |
従来のクライアントとドライバーのバージョン¶
クライアントまたはドライバーのバージョンがフェールオープンのセクションにリストされているものよりも古い場合、フェールオープンの動作はオプションではありません。したがって、フェールクローズ動作はデフォルトです。
OCSP に関してレガシークライアントおよびドライバーバージョンを使用するSnowflakeデプロイメントには、3つのオプションがあります。
クライアントまたはドライバーを最新バージョンにアップグレードする(最適なオプション)。
フェールクローズ動作を引き続き使用する。
この ナレッジベースの記事 (Snowflakeコミュニティ内)で説明されているように、OCSPモニタリング(つまり、安全でないモード)をオフにします。
ベストプラクティス¶
リスクの軽減のために、Snowflakeは安全な通信を保つための次のベストプラクティスをお勧めします。
Snowflakeサービスへのプライベート接続を使用し、Snowflakeへのパブリックアクセスをブロックします。
クライアントドライバーが管理されたデスクトップとサーバーでのみ実行できるようにします。
クライアントドライバーログを管理システムに送信するか、Snowflakeにアップロードします。OCSP チェックなしで行われた接続を監視します。
注釈
Snowflakeサービスへのプライベート接続のサポートには、 Business Critical (またはそれ以上)が必要です。アップグレードについては、 Snowflakeサポート にお問い合わせください。
Snowflakeが使用する CA サイトと OCSP レスポンダーホスト(クラウドプラットフォームと地域別)¶
Snowflakeは、OCSP 証明チェックに次のホストを使用します。ホストは、指定されたクラウドプラットフォームの地域に応じて異なる場合があります。
重要
これらは、最も一般的に使用されるホストの例です。各地域(または個々のアカウント)に対して、Snowflakeは異なる CAによってパブリッシュされた証明書を使用する場合があり、その結果、異なるホストと URLsになります。例:
US 西部( AWS上)のほとんどのアカウントでは、Snowflakeは現在、Network SolutionsのDigicert署名証明書を使用しています。
他の地域( AWS上)では、Snowflakeは主にAmazon CAからの証明書を使用します。
さらに、Snowflakeは、証明書の有効期限が切れるか、または機能強化が必要になると証明書を変更する場合があり、その結果、ホストおよび URLs は変わります。
アカウントのホストおよび URLs のすべてのリストについては、 Snowflakeサポート にお問い合わせください。
AWS上のSnowflake¶
ホスト |
US 西部 |
その他のリージョン |
メモ |
---|---|---|---|
|
✔ |
✔ |
Snowflakeの OCSP 応答キャッシュサーバー。 AWS PrivateLink が有効な場合、ホスト名は異なります。 |
|
✔ |
✔ |
|
|
✔ |
✔ |
|
|
✔ |
||
|
✔ |
✔ |
|
|
✔ |
Microsoft Azure上のSnowflake¶
ホスト |
東部 US 2 |
メモ |
---|---|---|
|
✔ |
Snowflakeの OCSP 応答キャッシュサーバー。 Azure Private Link が有効な場合、ホスト名は異なります。 |
|
✔ |
|
|
✔ |
Google Cloud PlatformのSnowflake¶
ホスト |
us-central1 |
メモ |
---|---|---|
|
✔ |
Snowflakeの OCSP 応答キャッシュサーバー。 |
|
✔ |
|
|
✔ |
OCSP 証明チェックにはポート80が必要¶
Snowflakeとのすべての通信には、ポート443を使用します。ただし、 OCSP 証明チェックはポート80を介して送信されます。ワークステーションがファイアウォールの内側にある場合は、組織のネットワーク管理者がポート443 および 80のトラフィックに対してファイアウォールを開いていることを確認します。
JDBC と ODBC ドライバーは CRL を使用しない¶
CRL (証明書失効リスト)は、特定の CA が明示的に取り消した証明書を指定します。古いバージョンの JDBC および ODBC ドライバーでは、 CRL または OCSP を使用して TLS 証明書を確認していました。以下のバージョンから、ドライバーはすべての証明書確認に OCSP のみを使用します。
JDBC 3.5.0 (またはそれ以上)。
ODBC 2.15.0 (またはそれ以上)