CREATE ASYMMETRIC KEY (Transact-SQL)

データベースに非対称キーを作成します。

トピック リンク アイコンTransact-SQL 構文表記規則

構文

CREATE ASYMMETRIC KEY Asym_Key_Name 
   [ AUTHORIZATION database_principal_name ]
   {
      FROM <Asym_Key_Source>
      |
      WITH ALGORITHM = { RSA_512 | RSA_1024 | RSA_2048 }
   }
      [ ENCRYPTION BY PASSWORD = 'password' ] 

<Asym_Key_Source>::=
   FILE = 'path_to_strong-name_file'
   |
   EXECUTABLE FILE = 'path_to_executable_file'
   |
   ASSEMBLY Assembly_Name

引数

  • FROM Asym_Key_Source
    非対称キー ペアの読み込み元を指定します。
  • AUTHORIZATION database_principal_name
    非対称キーの所有者を指定します。所有者にロールとグループは指定できません。このオプションを省略した場合、所有者は現在のユーザーになります。
  • FILE ='path_to_strong-name_file'
    キー ペアの読み込み元となる、厳密な名前のファイルのパスを指定します。
  • EXECUTABLE FILE ='path_to_executable_file'
    公開キーの読み込み元となる、アセンブリ ファイルを指定します。
  • ASSEMBLY Assembly_Name
    公開キーの読み込み元となる、アセンブリの名前を指定します。
  • ENCRYPTION BY PASSWORD ='password'
    秘密キーを暗号化するパスワードを指定します。この句がない場合、秘密キーはデータベースのマスタ キーで暗号化されます。password は最大 128 文字です。

解説

非対称キーは、データベース レベルのセキュリティ保護可能なエンティテイです。既定の形式では、このエンティティには公開キーと秘密キーの両方が含まれます。FROM 句を使用せずに CREATE ASYMMETRIC KEY を実行した場合は、新しいキー ペアが作成されます。FROM 句を使用して CREATE ASYMMETRIC KEY を実行した場合は、キー ペアがファイルからインポートされるか、公開キーがアセンブリからインポートされます。

既定では、秘密キーはデータベースのマスタ キーによって保護されます。データベースのマスタ キーが作成されていない場合、秘密キーを保護するにはパスワードが必要です。データベースのマスタ キーが存在する場合、パスワードは省略可能です。

秘密キーは、512、1,024、または 2,048 ビットの長さで指定できます。

権限

データベースに対する CREATE ASYMMETRIC KEY 権限が必要です。AUTHORIZATION 句を指定する場合は、データベース プリンシパルに対する IMPERSONATE 権限、またはアプリケーション ロールに対する ALTER 権限が必要です。

A. 非対称キーを作成する

次の例では、RSA_2048 アルゴリズムを使用して PacificSales09 という非対称キーを作成し、パスワードで秘密キーを保護します。

CREATE ASYMMETRIC KEY PacificSales09 
    WITH ALGORITHM = RSA_2048 
    ENCRYPTION BY PASSWORD = 'bmsA$dk7i82bv55foajsd9764'; 
GO

B. 非対称キーをファイルから作成し、ユーザーを認証する

次の例では、ファイルに格納されたキー ペアから非対称キー PacificSales19 を作成し、ユーザー SyedAbbas がその非対称キーを使用することを認証します。

CREATE ASYMMETRIC KEY PacificSales19 AUTHORIZATION SyedAbbas  
    FROM FILE = ' c:\PacSales\Managers\SyedAbbasCerts.tmp'  
    ENCRYPTION BY PASSWORD = '35698ofg0sjlkfLKJ4548872$$$2';
GO

参照

関連項目

ALTER ASYMMETRIC KEY (Transact-SQL)
DROP ASYMMETRIC KEY (Transact-SQL)

その他の技術情報

暗号化アルゴリズムの選択
暗号化階層

ヘルプおよび情報

SQL Server 2005 の参考資料の入手