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 2016 (13.x) és újabb verziók
Azure SQL Database
Felügyelt Azure SQL-példány
Elemzi a megadott Transact-SQL utasítást és annak paramétereit annak meghatározásához, hogy mely paraméterek felelnek meg az Always Encrypted funkcióval védett adatbázisoszlopoknak. A titkosított oszlopoknak megfelelő paraméterek titkosítási metaadatait adja vissza.
Szintaxis
sp_describe_parameter_encryption
[ @tsql = ] N'tsql'
[ , [ @params = ] N'@parameter_name data_type [ , ... n ]' ]
[ ; ]
Érvek
Fontos
A kiterjesztett tárolt eljárások argumentumait a Szintaxis szakaszban leírt sorrendben kell megadni. Ha a paraméterek sorrenden kívül vannak beírva, hibaüzenet jelenik meg.
[ @tsql = ] 'tsql'
Egy vagy több Transact-SQL utasítás. @tsql lehet nvarchar(n) vagy nvarchar(max).
[ @params = ] N'@parameter_namedata_type [ ,... n ]'
@params deklarációs sztringet biztosít a @tsqlparamétereihez, amely hasonló a sp_executesql. A paraméterek lehetnek nvarchar(n) vagy nvarchar(max).
A Transact-SQL_batch beágyazott összes paraméter definícióit tartalmazó sztring. A sztringnek Unicode-állandónak vagy Unicode-változónak kell lennie. Minden paraméterdefiníció egy paraméternévből és egy adattípusból áll.
n egy helyőrző, amely további paraméterdefiníciókat jelez.
n egy helyőrző, amely további paraméterdefiníciókat jelez. Az utasításban megadott paramétereket @paramskell definiálni. Ha az utasításban szereplő Transact-SQL utasítás vagy köteg nem tartalmaz paramétereket, @params nincs szükség.
NULL a paraméter alapértelmezett értéke.
Visszaadott érték
0 a sikert jelzi. Bármi más is hibát jelez.
Eredményhalmaz
sp_describe_parameter_encryption két eredményhalmazt ad vissza:
Az adatbázisoszlopokhoz konfigurált titkosítási kulcsokat leíró eredménykészlet, amelynek a megadott Transact-SQL utasítás paraméterei felelnek meg.
Az adott paraméterek titkosításának módját leíró eredményhalmaz. Ez az eredménykészlet az első eredményhalmazban leírt kulcsokra hivatkozik.
Az első eredményhalmaz minden sora egy kulcspárt ír le: egy titkosított oszloptitkosítási kulcsot és annak megfelelő oszlop főkulcsát (CMK).
| Oszlop neve | Adattípus | Leírás |
|---|---|---|
column_encryption_key_ordinal |
Az eredményhalmaz sorának azonosítója. | |
database_id |
Adatbázis-azonosító. | |
column_encryption_key_id |
Az oszloptitkosítási kulcs azonosítója. Megjegyzés: ez az azonosító egy sort jelöl a sys.column_encryption_keys katalógusnézetben. |
|
column_encryption_key_version |
Jövőbeli használatra fenntartva. Jelenleg mindig 1tartalmaz. |
|
column_encryption_key_metadata_version |
bináris(8) | Az oszloptitkosítási kulcs létrehozási idejét jelző időbélyeg. |
column_encryption_key_encrypted_value |
varbinary(4000) | Az oszloptitkosítási kulcs titkosított értéke. |
column_master_key_store_provider_name |
sysname | A CMK-t tartalmazó kulcstároló szolgáltatójának neve, amely az oszloptitkosítási kulcs titkosított értékének előállítására szolgál. |
column_master_key_path |
nvarchar(4000) | A CMK kulcsútvonala, amely az oszloptitkosítási kulcs titkosított értékének előállítására szolgál. |
column_encryption_key_encryption_algorithm_name |
sysname | Az oszloptitkosítási kulcs titkosítási értékének előállításához használt titkosítási algoritmus neve. |
A második eredményhalmaz minden sora egy paraméter titkosítási metaadatait tartalmazza.
| Oszlop neve | Adattípus | Leírás |
|---|---|---|
parameter_ordinal |
Az eredményhalmaz sorának azonosítója. | |
parameter_name |
sysname | A @params argumentumban megadott paraméterek egyikének neve. |
column_encryption_algorithm |
apró | A paraméternek megfelelő oszlophoz konfigurált titkosítási algoritmust jelző kód. A jelenleg támogatott érték a 2AEAD_AES_256_CBC_HMAC_SHA_256. |
column_encryption_type |
apró | Az oszlophoz konfigurált titkosítási típust jelző kód, a paraméter ennek felel meg. A támogatott értékek a következők:0 – egyszerű szöveg (az oszlop nincs titkosítva)1 – determinisztikus titkosítás2 – véletlenszerű titkosítás. |
column_encryption_key_ordinal |
Az első eredményhalmaz sorának kódja. A hivatkozott sor az oszlophoz konfigurált oszloptitkosítási kulcsot írja le, ennek a paraméternek felel meg. | |
column_encryption_normalization_rule_version |
apró | A típus normalizálási algoritmus verziószáma. |
Megjegyzések
Az Always Encryptedt támogató SQL Server-ügyfélillesztő automatikusan meghívja sp_describe_parameter_encryption, hogy lekérje az alkalmazás által kibocsátott paraméteres lekérdezések titkosítási metaadatait. Ezután az illesztőprogram a titkosítási metaadatok használatával titkosítja az Always Encrypted által védett adatbázisoszlopoknak megfelelő paraméterek értékeit. Az alkalmazás által küldött egyszerű szöveges paraméterértékeket helyettesíti a titkosított paraméterértékekkel, mielőtt elküldené a lekérdezést az adatbázismotornak.
Engedélyek
Az adatbázis VIEW ANY COLUMN ENCRYPTION KEY DEFINITION és VIEW ANY COLUMN MASTER KEY DEFINITION engedélyeinek megkövetelése.
Példák
Az alábbi példa csonkolja a ENCRYPTED_VALUEértékét megjelenítési célokra.
CREATE COLUMN MASTER KEY [CMK1]
WITH (
KEY_STORE_PROVIDER_NAME = N'MSSQL_CERTIFICATE_STORE',
KEY_PATH = N'CurrentUser/my/A66BB0F6DD70BDFF02B62D0F87E340288E6F9305'
);
GO
CREATE COLUMN ENCRYPTION KEY [CEK1]
WITH VALUES (
COLUMN_MASTER_KEY = [CMK1],
ALGORITHM = 'RSA_OAEP',
ENCRYPTED_VALUE = 0x016E00000163007500720072<...> -- truncated in this example
);
GO
CREATE TABLE t1 (
c1 INT ENCRYPTED WITH (
COLUMN_ENCRYPTION_KEY = [CEK1],
ENCRYPTION_TYPE = Randomized,
ALGORITHM = 'AEAD_AES_256_CBC_HMAC_SHA_256'
) NULL,
);
EXECUTE sp_describe_parameter_encryption
N'INSERT INTO t1 VALUES(@c1)',
N'@c1 INT';
Az első eredményhalmaz a következő:
| Oszlop | Érték |
|---|---|
column_encryption_key_ordinal |
1 |
database_id |
5 |
column_encryption_key_id |
1 |
column_encryption_key_version |
1 |
column_encryption_key_metadata_version |
0x99EDA60083A50000 |
column_encryption_key_encrypted_value |
0x016E00000163007500720072<...> |
column_master_key_store_provider_name |
MSSQL_CERTIFICATE_STORE |
column_master_key_path |
CurrentUser/my/A66BB0F6DD70BDFF02B62D0F87E340288E6F9305 |
column_encryption_key_encryption_algorithm_name |
RSA_OAEP |
Íme a második eredményhalmaz:
| Oszlop | Érték |
|---|---|
parameter_ordinal |
1 |
parameter_name |
@c1 |
column_encryption_algorithm |
1 |
column_encryption_type |
1 |
column_encryption_key_ordinal |
1 |
column_encryption_normalization_rule_version |
1 |
Kapcsolódó tartalom
- Mindig titkosítva
- Alkalmazások fejlesztése Always Encrypted használatával