Database
 sql >> база данни >  >> RDS >> Database

Използване на данни, защитени с Azure Key Vault от Linux

Microsoft подобри своята функция за винаги криптирана защита, като позволи ключовете, които защитават данните, да се съхраняват в Azure Key Vault.

ODBC драйверът на SQL Server поддържа винаги шифровани колони, откакто Microsoft първоначално въведе функцията в SQL Server 2016. Започвайки с версия 1.10.4 на драйвера, добавихме необходимите настройки за низове за връзка, за да поддържаме сценария Always Encrypted data / Azure Key Vault .

Процесът за работа с Azure защитени винаги криптирани колони от Linux и UNIX е:

  1. Създайте Azure Key Vault в Windows Azure.
  2. Създайте нова регистрация на приложение.

    По време на този процес ще генерирате клиентски идентификатор на приложението и тайна. Ще ви трябват тези стойности по-късно в този урок, когато конфигурирате източника на данни за драйвера на SQL Server ODBC.

  3. В SQL Server Management Studio създайте тестова таблица в екземпляр на SQL Server 2016 (или по-нова версия):
    CREATE TABLE dbo.EncryptedTable
    (
      ID INT IDENTITY(1,1) PRIMARY KEY, LastName NVARCHAR(32), Salary INT NOT NULL
    );
    
  4. Щракнете с десния бутон върху таблицата. От изскачащото меню изберете Шифроване на колони .

    Стартира съветникът за винаги криптиран.

  5. В Избор на колона страница, разгънете таблиците и изберете колоните, които искате да шифровате.
  6. Изберете тип криптиране за всяка колона.

    Детерминистично - винаги криптира към един и същ шифрован текст, позволявайки да се извършват търсене на равенство, присъединяване и групиране по.

    Произволно генерира различна стойност на шифрован текст за същия обикновен текст, който е по-сигурен, но не поддържа никакви операции.

  7. Изберете CEK_Auto1 (New) като ключ за криптиране за всяка колона, който е нов автоматично генериран ключ. Изберете Напред .
  8. Изберете Azure Key Vault , и след това влезте в акаунта си в Azure, когато бъдете подканени.
  9. Изберете своя Azure Key Vault от списъка. Изберете Напред .
  10. Изберете Напред .
  11. Изберете Край .
  12. Изберете Затваряне .
  13. На вашата Linux или UNIX машина инсталирайте версия 1.10.4+ на ODBC драйвера на SQL Server.
  14. Конфигурирайте източник на ODBC данни в /etc/odbc.ini който се свързва с вашия екземпляр на SQL Server:
    [SQLSERVER_2016]
    Driver=Easysoft ODBC-SQL Server SSL
    Server=machine\sqlserver_instance
    Database=database_with_always_encrypted_data
    User=user # This can be a Windows or SQL Server login.
    Password=password
    Trusted_Connection=Yes # Set this to No for a SQL Server login
    ColumnEncryption=Enabled
    KeyStoreAuthentication=KeyVaultClientSecret
    KeyStorePrincipalId=ac9e3f9b-ed5e-4f11-9746-f1d25cc5867c   # Your application client ID
    KeyStoreSecret=wQOFhXY/1yIEUK75j8m/o4IUU7tf3AnVRc3ybO6b3VA # and application secret generated when registering
                                                               # an App in your Azure portal.
    	    
  15. Проверете дали можете да покажете нешифрованите данни:
    /usr/local/easysoft/unixODBC/bin/isql.sh -v SQLSERVER_2016
    SQL>  select * from EncryptedTable
  16. Ако искате да вмъкнете данни в колона Always Encrypted, трябва да използвате параметризирано INSERT, а другият ни блог Always Encrypted предоставя някои примери, които показват как да направите това.

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Въведение в IRI Voracity (Общо управление на данни) [видео]

  2. Подходи за сигурност в моделирането на данни. част 4

  3. Анализиране на ODBC данни в IBM SPSS

  4. Как лесно да разположите TimescaleDB

  5. Конфигуриране на разрешения за ScaleGrid в AWS с помощта на шаблон за IAM политика