Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
A következőkre vonatkozik:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
SQL-adatbázis a Microsoft Fabricben
Létrehoz egy aszimmetrikus kulcsot az adatbázisban.
Ez a funkció nem kompatibilis az adatbázis-exportálással a Data Tier Application Framework (DACFx) használatával. Exportálás előtt el kell dobnia az összes aszimmetrikus kulcsot.
Transact-SQL szintaxis konvenciók
Note
Ezt a szintaxist az Azure Synapse Analytics kiszolgáló nélküli SQL-készlete nem támogatja.
Syntax
CREATE ASYMMETRIC KEY asym_key_name
[ AUTHORIZATION database_principal_name ]
[ FROM <asym_key_source> ]
[ WITH <key_option> ]
[ ENCRYPTION BY <encrypting_mechanism> ]
[ ; ]
<asym_key_source>::=
FILE = 'path_to_strong-name_file'
| EXECUTABLE FILE = 'path_to_executable_file'
| ASSEMBLY assembly_name
| PROVIDER provider_name
<key_option> ::=
ALGORITHM = <algorithm>
|
PROVIDER_KEY_NAME = 'key_name_in_provider'
|
CREATION_DISPOSITION = { CREATE_NEW | OPEN_EXISTING }
<algorithm> ::=
{ RSA_4096 | RSA_3072 | RSA_2048 | RSA_1024 | RSA_512 }
<encrypting_mechanism> ::=
PASSWORD = 'password'
Arguments
asym_key_name
Az adatbázis aszimmetrikus kulcsának neve. Az aszimmetrikus kulcsneveknek meg kell felelniük az azonosítókra vonatkozó szabályoknak, és egyedinek kell lenniük az adatbázisban.
ENGEDÉLYEZÉSI database_principal_name
Megadja az aszimmetrikus kulcs tulajdonosát. A tulajdonos nem lehet szerepkör vagy csoport. Ha ez a beállítás nincs megadva, a tulajdonos lesz az aktuális felhasználó.
A asym_key_source
Az aszimmetrikus kulcspár betöltésének forrását adja meg.
FILE = "path_to_strong-name_file"
Egy erős névvel rendelkező fájl elérési útját adja meg, amelyből betölti a kulcspárt. Legfeljebb 260 karaktert MAX_PATH a Windows API-ból.
Note
Ez a beállítás nem érhető el egy tartalmazott adatbázisban.
VÉGREHAJTHATÓ FÁJL = "path_to_executable_file"
Megadja annak a szerelvényfájlnak az elérési útját, amelyből betölti a nyilvános kulcsot. Legfeljebb 260 karaktert MAX_PATH a Windows API-ból.
Note
Ez a beállítás nem érhető el egy tartalmazott adatbázisban.
GYŰLÉS assembly_name
Megadja annak az aláírt szerelvénynek a nevét, amely már be lett töltve abba az adatbázisba, amelyből betölti a nyilvános kulcsot.
SZOLGÁLTATÓ provider_name
Megadja az Extensible Key Management (EKM) szolgáltató nevét. A szolgáltatót először a CREATE PROVIDER utasítással kell definiálni. A külső kulcskezelésről további információt az Extensible Key Management (EKM) című témakörben talál.
ALGORITMUS = <algoritmus>
Öt algoritmus adható meg; RSA_4096, RSA_3072, RSA_2048, RSA_1024 és RSA_512.
RSA_1024 és RSA_512 elavultak. A RSA_1024 vagy RSA_512 használatához (nem ajánlott) az adatbázist 120-es vagy annál alacsonyabb adatbázis-kompatibilitási szintre kell állítania.
Az SQL Server 2022-től (16.x) kezdődően a RSA-HSM_2048 és a RSA-HSM_3072 támogatottak.
PROVIDER_KEY_NAME = "key_name_in_provider"
Megadja a külső szolgáltató kulcsnevét.
CREATION_DISPOSITION = CREATE_NEW
Új kulcsot hoz létre az Bővíthető kulcskezelő eszközön. PROVIDER_KEY_NAME kell használni az eszköz kulcsnevének megadásához. Ha már létezik kulcs az eszközön, az utasítás hibával meghiúsul.
CREATION_DISPOSITION = OPEN_EXISTING
Az SQL Server aszimmetrikus kulcsát egy meglévő bővíthető kulcskezelési kulcshoz rendeli. PROVIDER_KEY_NAME kell használni az eszköz kulcsnevének megadásához. Ha CREATION_DISPOSITION = OPEN_EXISTING nincs megadva, az alapértelmezett érték CREATE_NEW.
TITKOSÍTÁS JELSZÓ ALAPJÁN = "jelszó"
Megadja azt a jelszót, amellyel titkosítani szeretné a titkos kulcsot. Ha ez a záradék nincs megadva, a titkos kulcs az adatbázis főkulcsával lesz titkosítva.
a jelszó legfeljebb 128 karakter hosszúságú lehet.
a jelszónak meg kell felelnie az SQL Server-példányt futtató számítógép Windows jelszóházirend-követelményeinek.
Remarks
Az aszimmetrikus kulcs egy biztonságos entitás az adatbázis szintjén. Az entitás alapértelmezett formájában egy nyilvános és egy titkos kulcsot is tartalmaz. Ha a FROM záradék nélkül hajtja végre, a CREATE ASYMMETRIC KEY létrehoz egy új kulcspárt. A FROM záradékkal végrehajtott CREATE ASYMMETRIC KEY egy kulcspárt importál egy fájlból, vagy importál egy nyilvános kulcsot egy szerelvényből vagy DLL-fájlból.
Alapértelmezés szerint a titkos kulcsot az adatbázis főkulcsa védi. Ha nem jött létre adatbázis-főkulcs, jelszó szükséges a titkos kulcs védelméhez.
A titkos kulcs 512, 1024 vagy 2048 bites lehet.
A TDE-hez használt aszimmetrikus kulcsok 3072 bites titkos kulcsméretre korlátozódnak.
Permissions
A CREATE ASZIMMETRIKUS KULCS engedélyre van szükség az adatbázisban. Ha az ENGEDÉLYEZÉSI záradék meg van adva, impERSONATE engedélyt igényel az adatbázisnéven, vagy alter engedélyt az alkalmazásszerepkörhöz. Csak Windows-bejelentkezések, SQL Server-bejelentkezések és alkalmazásszerepkörök rendelkezhetnek aszimmetrikus kulcsokkal. A csoportok és szerepkörök nem birtokolhatók aszimmetrikus kulcsokkal.
Examples
A. Aszimmetrikus kulcs létrehozása
Az alábbi példa létrehoz egy aszimmetrikus kulcsot az PacificSales09 algoritmus használatával, RSA_2048 és jelszóval védi a titkos kulcsot.
CREATE ASYMMETRIC KEY PacificSales09
WITH ALGORITHM = RSA_2048
ENCRYPTION BY PASSWORD = '<enterStrongPasswordHere>';
GO
B. Aszimmetrikus kulcs létrehozása fájlból, engedélyezés a felhasználó számára
Az alábbi példa egy fájlban tárolt kulcspárból hozza létre az aszimmetrikus kulcsot PacificSales19 , és hozzárendeli az aszimmetrikus kulcs tulajdonjogát a felhasználóhoz Christina. A titkos kulcsot az adatbázis főkulcsa védi, amelyet az aszimmetrikus kulcs létrehozása előtt kell létrehozni.
CREATE ASYMMETRIC KEY PacificSales19
AUTHORIZATION Christina
FROM FILE = 'c:\PacSales\Managers\ChristinaCerts.tmp';
GO
C. Aszimmetrikus kulcs létrehozása EKM-szolgáltatóból
Az alábbi példa egy bővíthető kulcskezelő szolgáltatóban EKM_askey1tárolt kulcspárból hozza létre az aszimmetrikus kulcsotEKM_Provider1, és egy kulcsot az adott szolgáltatónkey10_user1.
CREATE ASYMMETRIC KEY EKM_askey1
FROM PROVIDER EKM_Provider1
WITH
ALGORITHM = RSA_2048,
CREATION_DISPOSITION = CREATE_NEW
, PROVIDER_KEY_NAME = 'key10_user1' ;
GO
Lásd még:
ALTER ASZIMMETRIKUS KULCS (Transact-SQL)
DROP ASZIMMETRIKUS KULCS (Transact-SQL)
ASYMKEYPROPERTY (Transact-SQL)
ASYMKEY_ID (Transact-SQL)
Titkosítási algoritmus kiválasztása
Titkosítási hierarchia
Bővíthető kulcskezelés az Azure Key Vault (SQL Server)