✅ この記事のポイント
- Snowflakeでは、内部ステージ(Internal Stage)に保存されるすべてのファイルは、自動で暗号化されます。
- 暗号化方式は業界標準である**AES-256(Advanced Encryption Standard, 256ビット)**です。
🔎 ステージと暗号化の関係
Snowflakeではデータを取り込む際に、**ステージ(Stage)**と呼ばれる中間領域を使います。ステージには以下の種類があり、それぞれで暗号化の取り扱いが異なります。
ステージの種類 | 説明 | 暗号化 | ユーザー操作 |
---|
Internal Stage | Snowflakeが管理するステージ領域 | ✅ AES-256で自動 | 不要(自動処理) |
Named Internal Stage | 名前付き内部ステージ | ✅ AES-256で自動 | 不要(同上) |
External Stage | S3やAzure Blobなど外部ストレージ | ❌ 自動ではない | 暗号化は外部設定が必要 |
🔐 AES-256とは?
項目 | 内容 |
---|
名前 | Advanced Encryption Standard 256-bit |
鍵長 | 256ビット(非常に強固) |
採用機関 | 米国政府、軍事、商業分野で広く採用 |
特徴 | 高速・高セキュリティ・非対称暗号ではない |
Snowflakeでの扱い | サーバー側の透過的暗号化(Transparent Encryption) |
💡 ユーザーが自ら暗号鍵を指定・操作する必要はありません。Snowflake側で自動的に鍵管理・ローテーションされます。
📦 ファイルの保存と暗号化の流れ
- ファイルのPUT操作:ユーザーがファイルをInternal Stageにアップロード
- Snowflakeが自動でAES-256暗号化
- COPY INTO TABLEでデータロード:ロード時に自動的に復号
- ファイル保持期限切れまたは手動削除でステージ上から除去
📘 セキュリティ対策上の補足
セキュリティ機能 | Internal Stageの暗号化との関係 |
---|
オブジェクトストレージ暗号化 | Snowflake自身が管理しているため不要(内部処理) |
セキュリティポリシーの設定 | ファイルアクセス権限にはRole-Based Access Controlが併用される |
データベース内のデータ | ステージと同様、透過的暗号化が適用される |
✅ 試験対策まとめ
項目 | 内容 |
---|
暗号化される対象 | Internal Stage内のファイル |
暗号化アルゴリズム | AES-256 |
設定の要否 | 不要(自動で適用) |
関連ドメイン | セキュリティ、データロード、ガバナンス |
🔗 参考リンク
Summary of Data Loading Features – Snowflake Documentation