データベースのマスター キーを作成する

適用対象:SQL ServerAzure SQL データベースAzure SQL Managed InstanceAzure Synapse Analytics

この記事では、Transact-SQLを使ってSQL Serverでデータベースマスターキーを作成する方法を説明します。 データベースマスターキーは、データベース内の他の鍵や証明書を暗号化します。 データベースごとにマスターキーを作成し、削除や破損時に復旧できるように安全なオフサイトにバックアップしてください。

アクセス許可

データベースに対する CONTROL 権限が必要です。

データベース マスター キーを作成する

この記事のコードサンプルは、AdventureWorks2025、AdventureWorksDW2025、またはAdventureWorksLT2025サンプルデータベースを使用しており、Azure Data SQL Samples Repository GitHubリポジトリからダウンロードできます。

  1. データベースマスターキーを作成したいSQL Serverインスタンスに接続してください。 SQLcmd、SQL Server Management Studio (SSMS)、Visual Studio Code 用の MSSQL 拡張機能など、使い慣れた SQL Server クライアント ツールを使用して、SQL Server のインスタンスに接続できます。

  2. データベースマスターキーの暗号化に強力なパスワードを選びます。 パスワードは SQL Server の既定のパスワード ポリシーに従う必要があります。 既定では、パスワードの長さは少なくとも 8 文字で、大文字、小文字、10 進数の数字、記号の 4 種類のうち 3 種類を含んでいる必要があります。 パスワードには最大 128 文字まで使用できます。 可能な限り長く複雑なパスワードを使用してください。

  3. データベースのマスターキーを作成したいデータベースの文脈で、以下の Transact-SQL スクリプトを確認して実行してください。 パスワードは環境に合わせて変更してください。

    Caution

    データベースのマスターキーを開くにはパスワードが必要です。 このパスワードは安全かつ確実に保存してください。

    Note

    Azure SQL DatabaseやMicrosoft FabricのSQLデータベースでは、USE ステートメントは利用できません。 代わりに、意図したデータベースに直接接続し、残りのコードサンプルを実行してください。

    USE AdventureWorks2025;
    GO
    
    CREATE MASTER KEY ENCRYPTION BY PASSWORD = '<password>';
    
  4. 新しく作成したデータベースマスターキーをバックアップしてください。 詳細については、「 データベースマスターキーのバックアップ」をご覧ください。