Visual Studio Code SQL Server подключение к зашифрованной базе данных с хранилищем ключей Azure (всегда зашифровано) - PullRequest
0 голосов
/ 09 мая 2018

Я пытаюсь получить соединение из VSCode на macOS с базой данных SQL Server, которая использует всегда зашифрованный механизм для защиты некоторых столбцов. Главный ключ хранится в хранилище ключей Azure .

Используя всегда зашифрованное руководство , предоставленное Microsoft, удалось успешно подключиться к базе данных.

То же самое верно для простого соединения, использующего VSCode на моем Mac без включения шифрования / дешифрования. Я использовал плагин mssql-extension и предоставлял необходимую информацию в настройках. Я смог запросить данные

Настройка

"mssql.connections": [
    {
        "server": "XXXXXXXX.database.windows.net",
        "database": "AlwaysEncrypted",
        "authenticationType": "SqlLogin",
        "user": "XXXXX",
        "password": "",
        "emptyPasswordInput": false,
        "savePassword": true,
        "profileName": "AlwaysEncrypted"
    }
]

Запрос

SELECT * FROM EmployeeDetails

Результат

[
  {
    "EmployeeDetailsId": "1",
    "EmployeeNo": "FE00000001",
    "FirstName": "0x013EC8AB61767E1C3D934AB061BCA658B6948637812450C8245DCE4C447F59FD1D6252069A36A67E3477E1C5FB24D860E72FBCC65F98C92B92AB873CE55349672A",
    "MiddleName": "0x015354526EC17EB1151AE918514E565507EDCB5691B4215C45798CA86EB11C47EECA579242926EDFE9F6543006177CBFC03E0F95CD0D8CAE6C941AE173AAF2B925",
    "LastName": "0x0170B3FD2B0416E0607312FB2A67B0F42798EC1871FEAB90AB81235ADACDE1C4F5614099FA3B61E59FEB2D6AD599CB3A9FD031FE56F327F0C80F4BA963EE7E155A",
    "DateOfBirth": "1985-08-12 00:00:00.000"
  }
]

После двух указаний

Я попытался создать другое соединение, используя mssql-extension и предоставив ODBC Connection String , но в конечном итоге не смог получить расшифрованные данные при запросе (соединение было установлено очень хорошо) , Результат был таким же, как опубликовано выше

Настройки со строкой подключения

"mssql.connections": [
    {
        "server": "XXXXXXXX.database.windows.net",
        "database": "AlwaysEncrypted",
        "authenticationType": "SqlLogin",
        "user": "XXXXX",
        "password": "",
        "emptyPasswordInput": false,
        "savePassword": true,
        "profileName": "AlwaysEncrypted_WithKeyVault",
        "connectionString": "SERVER=XXXXXX.database.windows.net;Trusted_Connection=Yes;DATABASE=AlwaysEncrypted;ColumnEncryption=Enabled;KeyStoreAuthentication=KeyVaultPassword;KeyStorePrincipalId=USER.NAME@DOMAIN.com;KeyStoreSecret=PASSWORD"
    }
]

Может ли кто-нибудь помочь мне выяснить, как правильно настроить соединения, чтобы шифрование / дешифрование он делал прозрачно при использовании VSCode?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...