Konfigurieren einer direkten Spaltenverschlüsselung mithilfe von Always Encrypted mit Secure EnclavesConfigure column encryption in-place using Always Encrypted with secure enclaves

DIESES THEMA GILT FÜR: JaSQL Server 2019 und höher (nur Windows) NeinAzure SQL-Datenbank NeinAzure Synapse Analytics (SQL DW) NeinParallel Data Warehouse THIS TOPIC APPLIES TO:yesSQL Server 2019 and later (Windows only) noAzure SQL DatabasenoAzure Synapse Analytics (SQL DW) noParallel Data Warehouse

Always Encrypted mit Secure Enclaves unterstützt direkte kryptografische Vorgänge für Datenbankspalten. Dies geschieht innerhalb einer Secure Enclave in SQL ServerSQL Server.Always Encrypted with secure enclaves supports cryptographic operations on database columns in-place - inside a secure enclave in SQL ServerSQL Server. Durch die direkte Verschlüsselung ist es nicht mehr erforderlich, die Daten für solche Vorgänge aus der Datenbank zu verschieben, wodurch die Kryptografievorgänge schneller und zuverlässiger werden.In-place encryption eliminates the need to move the data for such operations outside of the database, making the cryptographic operations faster and more reliable.

Hinweis

Trotz der Leistungsvorteile der direkten Verschlüsselung können kryptografische Vorgänge für große Tabellen eine lange Zeit in Anspruch nehmen und beträchtliche Ressourcen beanspruchen. Dadurch wird möglicherweise die Leistung und Verfügbarkeit Ihrer Anwendungen beeinträchtigt.Despite the performance benefits of in-place encryption, cryptographic operations on large tables can take a long time and consume substantial resources, potentially impacting and degrading performance and availability of your applications.

Durch die direkte Verschlüsselung ist es auch möglich, kryptografische Vorgänge mithilfe der Anweisung ALTER TABLE ALTER COLUMN (Transact-SQL) auszulösen. Dies ist ohne Enclave nicht möglich.In-place encryption makes it also possible to trigger cryptographic operations using the ALTER TABLE ALTER COLUMN (Transact-SQL) statement, which is not possible without an enclave.

VoraussetzungenPrerequisites

Die unterstützten kryptografischen Vorgänge und die Anforderungen für Spaltenverschlüsselungsschlüssel, die für die Vorgänge verwendet werden, lauten wie folgt:The supported cryptographic operations and the requirements for column encryption key(s), used for the operations, are:

  • Verschlüsseln einer Klartextspalte.Encrypting a plaintext column. Der Spaltenverschlüsselungsschlüssel, der zum Verschlüsseln der Spalte verwendet wird, muss Enclave-fähig sein.The column encryption key used to encrypt the column must be enclave-enabled.
  • Erneutes Verschlüsseln einer verschlüsselten Spalte mit einem neuen Verschlüsselungstyp und/oder einem neuen Spaltenverschlüsselungsschlüssel.Re-encrypting an encrypted column using a new encryption type or/and a new column encryption key. Sowohl der aktuelle als auch der neue Spaltenverschlüsselungsschlüssel (sofern Letzterer sich vom aktuellen Schlüssel unterscheidet) müssen Enclave-fähig sein.Both the current column encryption key and the new column encryption key (if different than the current key) must be enclave-enabled.
  • Entschlüsseln einer verschlüsselten Spalte: der Spaltenverschlüsselungsschlüssel, der die Spalte schützt, muss Enclave-fähig sein.Decrypting an encrypted column - the column encryption key, protecting the column, must be enclave-enabled.

Informationen dazu, wie Sie sicherstellen können, dass Ihre Spaltenverschlüsselungsschlüssel Enclave-fähig sind, finden Sie unter Verwalten von Schlüsseln für Always Encrypted mit Secure Enclaves.See Manage keys for Always Encrypted with secure enclaves for information how to ensure your column encryption keys are enclave-enabled.

Die direkte Verschlüsselung erfordert auch eine SQL Server-Instanz, die über eine ordnungsgemäß initialisierte Secure Enclave verfügt.In-place encryption also requires a SQL Server instance that has a correctly initialized secure enclave. Weitere Informationen finden Sie unter Konfigurieren des Enclave-Typs für die Always Encrypted-Serverkonfigurationsoption.See Configure the enclave type for Always Encrypted Server Configuration Option.

Ein Benutzer oder eine Anwendung, der oder die kryptografische Vorgänge auslöst, muss über Berechtigungen zum Vornehmen von Schemaänderungen für die Tabelle verfügen, die die betroffenen Spalten enthält. Zusätzlich muss der Benutzer oder die Anwendung auch Zugriff auf Spaltenhauptschlüssel haben, die an den Vorgängen beteiligt sind, sowie auf die relevanten Schlüsselmetadaten in der Datenbank.A user or an application triggering cryptographic operations must have permissions to make schema changes on the table containing the impacted columns and to access column master keys involved in the operations, and relevant key metadata in the database.

Sie können die direkte Verschlüsselung nur mithilfe der Anweisung ALTER TABLE ALTER COLUMN (Transact-SQL) von SQL Server Management Studio oder Ihrer benutzerdefinierten Anwendung auslösen.You can only trigger in-place encryption using ALTER TABLE ALTER COLUMN (Transact-SQL) from SQL Server Management Studio or your custom application. Weitere Informationen finden Sie unter Direkte Konfiguration der Spaltenverschlüsselung mit Transact-SQL.See Configure column encryption in-place with Transact-SQL.

Hinweis

Zurzeit unterstützen der Always Encrypted-Assistent und das Set-SqlColumnEncryption-Cmdlet keine direkte Verschlüsselung und laden die Daten für kryptografische Vorgänge immer herunter, auch wenn Ihre Konfiguration die oben genannten Anforderungen erfüllt.Currently, the Always Encrypted wizard and the Set-SqlColumnEncryption cmdlet do not support in-place encryption, and always download the data for cryptographic operations, even if your configuration meets the above requirements.

Nächste SchritteNext Steps