Как выполнить OPENJSON для всегда зашифрованного столбца - PullRequest
0 голосов
/ 22 марта 2019

У меня следующая структура таблицы

CREATE TABLE [dbo].[JsonInfo](
    [Id] [int] IDENTITY(1,1) NOT NULL,
    [dateCreated] [datetime] NOT NULL,
    [data] [nvarchar](max) COLLATE Latin1_General_BIN2 ENCRYPTED WITH (COLUMN_ENCRYPTION_KEY = [CEK_MyKey], ENCRYPTION_TYPE = Deterministic, ALGORITHM = 'AEAD_AES_256_CBC_HMAC_SHA_256') NOT NULL,
) 

Данные столбца шифруются с использованием Always Encrypt.

Я хочу выполнить следующий запрос OPENJSON для зашифрованного столбца.

SELECT Id,
       Name,
       LastName
FROM   [dbo].[JsonInfo] CROSS APPLY OPENJSON ([data]) WITH 
(
    Id NVARCHAR (2000) '$.Id', 
    Name NVARCHAR (2000) '$.Name', 
    LastName NVARCHAR (2000) '$.LastName'
)

Я думаю, что это невозможно, поскольку операция OPENJSON выполняется на уровне сервера, который не может быть расшифрован, поскольку у него нет сертификата.

Надеюсь, что есть способ.

Спасибо

...