Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
              Gäller för: SQL Server 2016 (13.x) och senare versioner 
Azure SQL Database
Azure SQL Managed Instance
Skapar ett kolumnkrypteringsnyckelmetadataobjekt för Always Encrypted eller Always Encrypted med säkra enklaver. Ett kolumnkrypteringsnyckelmetadataobjekt innehåller ett eller två krypterade värden för en kolumnkrypteringsnyckel som används för att kryptera data i en kolumn. Varje värde krypteras med en kolumnhuvudnyckel.
              
              
              Transact-SQL syntaxkonventioner
Syntax
CREATE COLUMN ENCRYPTION KEY key_name   
WITH VALUES  
  (  
    COLUMN_MASTER_KEY = column_master_key_name,   
    ALGORITHM = 'algorithm_name',   
    ENCRYPTED_VALUE = varbinary_literal  
  )   
[, (  
    COLUMN_MASTER_KEY = column_master_key_name,   
    ALGORITHM = 'algorithm_name',   
    ENCRYPTED_VALUE = varbinary_literal  
  ) ]   
[;]  
Arguments
              key_name
Är namnet med vilket kolumnkrypteringsnyckeln ska vara känd i databasen.
column_master_key_name Anger namnet på den anpassade CMK som används för att kryptera kolumnkrypteringsnyckeln.
              algorithm_name
Namnet på krypteringsalgoritmen som används för att kryptera värdet för kolumnkrypteringsnyckeln. Algoritmen för systemprovidrar måste vara RSA_OAEP.
              varbinary_literal
Krypteringsnyckelvärdet blob för krypterad kolumnkryptering.
Varning
Skicka aldrig nyckelvärden för kolumnkryptering i klartext i den här instruktionen. Om du gör det äventyras fördelen med den här funktionen.
Anmärkningar
-instruktionen CREATE COLUMN ENCRYPTION KEY måste innehålla minst ett eller två värden. Du kan använda krypteringsnyckeln ALTER COLUMN (Transact-SQL) för att lägga till ett andra värde senare. Du kan också använda -instruktionen ALTER COLUMN ENCRYPTION KEY för att ta bort ett värde.
Vanligtvis skapas en kolumnkrypteringsnyckel med bara ett krypterat värde. Ibland måste du rotera en kolumnhuvudnyckel för att ersätta den aktuella kolumnhuvudnyckeln med den nya kolumnhuvudnyckeln. När du behöver rotera nyckeln lägger du till ett nytt värde för kolumnkrypteringsnyckeln, krypterad med den nya kolumnhuvudnyckeln. Med den här rotationen kan du se till att klientprogram kan komma åt data som krypterats med kolumnkrypteringsnyckeln, medan den nya kolumnhuvudnyckeln görs tillgänglig för klientprogram. En Always Encrypted-aktiverad drivrutin i ett klientprogram som inte har åtkomst till den nya huvudnyckeln använder kolumnkrypteringsnyckelvärdet krypterat med den gamla kolumnhuvudnyckeln för att få åtkomst till känsliga data.
Krypteringsalgoritmerna, som always encrypted stöder, kräver att klartextvärdet har 256 bitar.
Vi rekommenderar att du använder verktyg, till exempel SQL Server Management Studio (SSMS) eller PowerShell för att hantera kolumnkrypteringsnycklar. Sådana verktyg genererar krypterade värden och utfärdar CREATE COLUMN ENCRYPTION KEY automatiskt instruktioner för att skapa metadataobjekt för kolumnkrypteringsnyckel. Se Etablera Always Encrypted-nycklar med SQL Server Management Studio och Etablera Always Encrypted-nycklar med PowerShell.
Du kan också generera ett kolumnkrypteringsnyckelvärde programmatiskt med hjälp av en nyckellagringsprovider som kapslar in nyckelarkivet med kolumnhuvudnyckeln. Mer information finns i Utveckla program med Always Encrypted.
Använd sys.columns (Transact-SQL), sys.column_encryption_keys (Transact-SQL)och sys.column_encryption_key_values (Transact-SQL) för att visa information om kolumnkrypteringsnycklar.
Permissions
Kräver behörigheten ÄNDRA VALFRI KOLUMNKRYPTERINGSNYCKEL .
Examples
A. Skapa en kolumnkrypteringsnyckel
I följande exempel skapas en kolumnkrypteringsnyckel med namnet MyCEK.
CREATE COLUMN ENCRYPTION KEY MyCEK   
WITH VALUES  
(  
    COLUMN_MASTER_KEY = MyCMK,   
    ALGORITHM = 'RSA_OAEP',   
    ENCRYPTED_VALUE = 0x01700000016C006F00630061006C006D0061006300680069006E0065002F006D0079002F003200660061006600640038003100320031003400340034006500620031006100320065003000360039003300340038006100350064003400300032003300380065006600620063006300610031006300284FC4316518CF3328A6D9304F65DD2CE387B79D95D077B4156E9ED8683FC0E09FA848275C685373228762B02DF2522AFF6D661782607B4A2275F2F922A5324B392C9D498E4ECFC61B79F0553EE8FB2E5A8635C4DBC0224D5A7F1B136C182DCDE32A00451F1A7AC6B4492067FD0FAC7D3D6F4AB7FC0E86614455DBB2AB37013E0A5B8B5089B180CA36D8B06CDB15E95A7D06E25AACB645D42C85B0B7EA2962BD3080B9A7CDB805C6279FE7DD6941E7EA4C2139E0D4101D8D7891076E70D433A214E82D9030CF1F40C503103075DEEB3D64537D15D244F503C2750CF940B71967F51095BFA51A85D2F764C78704CAB6F015EA87753355367C5C9F66E465C0C66BADEDFDF76FB7E5C21A0D89A2FCCA8595471F8918B1387E055FA0B816E74201CD5C50129D29C015895CD073925B6EA87CAF4A4FAF018C06A3856F5DFB724F42807543F777D82B809232B465D983E6F19DFB572BEA7B61C50154605452A891190FB5A0C4E464862CF5EFAD5E7D91F7D65AA1A78F688E69A1EB098AB42E95C674E234173CD7E0925541AD5AE7CED9A3D12FDFE6EB8EA4F8AAD2629D4F5A18BA3DDCC9CF7F352A892D4BEBDC4A1303F9C683DACD51A237E34B045EBE579A381E26B40DCFBF49EFFA6F65D17F37C6DBA54AA99A65D5573D4EB5BA038E024910A4D36B79A1D4E3C70349DADFF08FD8B4DEE77FDB57F01CB276ED5E676F1EC973154F86  
);  
GO  
Skapa en kolumnkrypteringsnyckel med två värden
I följande exempel skapas en kolumnkrypteringsnyckel som heter TwoValueCEK med två värden.
CREATE COLUMN ENCRYPTION KEY TwoValueCEK   
WITH VALUES  
(  
    COLUMN_MASTER_KEY = CMK1,   
    ALGORITHM = 'RSA_OAEP',   
    ENCRYPTED_VALUE = 0x016E000001630075007200720065006E00740075007300650072002F006D0079002F0037006300380061003100310033003400320037003800620037003000630038003100390062003900630039003400360061006600340039006500610030003200650038006200650038003400340065006C33A82ECF04A7185824B4545457AC5244CD9C219E64067B9520C0081B8399B58C2863F7494ABE3694BD87D55FFD7576FFDC47C28F94ECC99577DF4FB8FA19AA95764FEF889CDE0F176DA5897B74382FBB22756CE2921050A09201A0EB6AF3D6091014C30146EA62635EE8CBF0A8074DEDFF125CEA80D1C0F5E8C58750A07D270E2A8BF824EE4C0C156366BF26D38CCE49EBDD5639A2DF029A7DBAE5A5D111F2F2FA3246DF8C2FA83C1E542C10570FADA98F6B29478DC58CE5CBDD407CCEFCDB97814525F6F32BECA266014AC346AC39C4F185C6C0F0A24FEC4DFA015649624692DE7865B9827BA22C3B574C9FD169F822B609F902288C5880EB25F14BD990D871B1BC4BA3A5B237AF76D26354773FA2A25CF4511AF58C911E601CFCB1905128C997844EED056C2AE7F0B48700AB41307E470FF9520997D0EB0D887DE11AFE574FFE845B7DC6C03FEEE8D467236368FC0CB2FDBD54DADC65B10B3DE6C80DF8B7B3F8F3CE5BE914713EE7B1FA5B7A578359592B8A5FDFDDE5FF9F392BC87C3CD02FBA94582AC063BBB9FFAC803FD489E16BEB28C4E3374A8478C737236A0B232F5A9DDE4D119573F1AEAE94B2192B81575AD6F57E670C1B2AB91045124DFDAEC2898F3F0112026DFC93BF9391D667D1AD7ED7D4E6BB119BBCEF1D1ADA589DD3E1082C3DAD13223BE438EB9574DA04E9D8A06320CAC6D3EC21D5D1C2A0AA484C7C  
),  
(  
    COLUMN_MASTER_KEY = CMK2,   
    ALGORITHM = 'RSA_OAEP',   
    ENCRYPTED_VALUE = 0x016E000001630075007200720065006E00740075007300650072002F006D0079002F0064006500650063006200660034006100340031003000380034006200350033003200360066003200630062006200350030003600380065003900620061003000320030003600610037003800310066001DDA6134C3B73A90D349C8905782DD819B428162CF5B051639BA46EC69A7C8C8F81591A92C395711493B25DCBCCC57836E5B9F17A0713E840721D098F3F8E023ABCDFE2F6D8CC4339FC8F88630ED9EBADA5CA8EEAFA84164C1095B12AE161EABC1DF778C07F07D413AF1ED900F578FC00894BEE705EAC60F4A5090BBE09885D2EFE1C915F7B4C581D9CE3FDAB78ACF4829F85752E9FC985DEB8773889EE4A1945BD554724803A6F5DC0A2CD5EFE001ABED8D61E8449E4FAA9E4DD392DA8D292ECC6EB149E843E395CDE0F98D04940A28C4B05F747149B34A0BAEC04FFF3E304C84AF1FF81225E615B5F94E334378A0A888EF88F4E79F66CB377E3C21964AACB5049C08435FE84EEEF39D20A665C17E04898914A85B3DE23D56575EBC682D154F4F15C37723E04974DB370180A9A579BC84F6BC9B5E7C223E5CBEE721E57EE07EFDCC0A3257BBEBF9ADFFB00DBF7EF682EC1C4C47451438F90B4CF8DA709940F72CFDC91C6EB4E37B4ED7E2385B1FF71B28A1D2669FBEB18EA89F9D391D2FDDEA0ED362E6A591AC64EF4AE31CA8766C259ECB77D01A7F5C36B8418F91C1BEADDD4491C80F0016B66421B4B788C55127135DA2FA625FB7FD195FB40D90A6C67328602ECAF3EC4F5894BFD84A99EB4753BE0D22E0D4DE6A0ADFEDC80EB1B556749B4A8AD00E73B329C95827AB91C0256347E85E3C5FD6726D0E1FE82C925D3DF4A9  
);  
GO  
Se även
              ÄNDRA KOLUMNKRYPTERINGSNYCKEL (Transact-SQL)
              SLÄPP KOLUMNKRYPTERINGSNYCKEL (Transact-SQL)
              SKAPA KOLUMNHUVUDNYCKEL (Transact-SQL)
              sys.column_encryption_keys (Transact-SQL)
              sys.column_encryption_key_values (Transact-SQL)
              sys.columns (Transact-SQL)
              Alltid krypterad
              Always Encrypted med säkra enklaver
              Översikt över nyckelhantering för Always Encrypted
              Hantera nycklar för Always Encrypted med säkra enklaver