SQL Server Management Studio を使用した Always Encrypted の構成
適用対象: SQL Server Azure SQL データベース Azure SQL Managed Instance
この記事では、 SQL Server Management Studio (SSMS)を使用して Always Encrypted を構成し、Always Encrypted を使用したデータベースを管理するためのタスクについて説明します。
SSMS を使用して Always Encrypted を構成するときのセキュリティに関する考慮事項
SSMS を使用して Always Encrypted を構成する場合、SSMS によって Always Encrypted のキーと機密データの両方が処理されます。結果、キーとデータは両方とも SSMS プロセス内ではプレーンテキストの形式で表示されます。 したがって、セキュリティで保護されたコンピューターで SSMS を実行することが重要です。 データベースが SQL Server でホストされている場合は、SQL Server インスタンスをホストするコンピューターとは異なるコンピューターで SSMS を実行する必要があります。 Always Encrypted の主な目的は、データベース システムが侵害されても、暗号化された機密データが確実に保護されるようにすることにあるので、SQL Server コンピューター上でキーまたは機密データを処理する PowerShell スクリプトが実行されると、機能の効果が低下したり無効になったりするおそれがあります。 追加の推奨事項については、 Security Considerations for Key Management(キー管理でのセキュリティに関する考慮事項) を参照してください。
SSMS では、データベースを管理するユーザー (DBA) と、暗号化された機密情報を管理し、プレーンテキスト データへのアクセス権を持つユーザー (セキュリティ管理者かアプリケーション管理者または両者) の間で、ロールの分離はサポートされていません。 組織でロールの分離が実施される場合は、PowerShell を使用して Always Encrypted を構成する必要があります。 詳細については、「Always Encrypted のキー管理の概要」および「PowerShell を使用した Always Encrypted の構成」を参照してください。
SSMS を使用した Always Encrypted のタスク
- SQL Server Management Studio を使用して Always Encrypted キーをプロビジョニングする
- SQL Server Management Studio を使用して Always Encrypted キーを交換する
- Always Encrypted ウィザードを使用して列暗号化を構成する
- DAC パッケージでの Always Encrypted を使用した列暗号化の構成
- SQL Server Management Studio で Always Encrypted を使用した列のクエリを実行する
- Always Encrypted を使用したデータベースのエクスポートとインポート
- Always Encrypted を使用したデータベースのバックアップと復元
- SQL Server インポートおよびエクスポート ウィザードで Always Encrypted を使用して列間でデータを移行する