Odin | База знаний 1С

Как зашифровать таб...
 

Как зашифровать таблицы 1С в MSSQL с помощью TDE и шифрования столбцов?


Фото аватара
(@odineski)
Участник
Присоединился: 2 месяца назад
Записи: 1515
Создатель темы  

пример шифрования таблиц базы 1С СУБД MSSQL



   
Цитата
(@odin)
Участник
Присоединился: 2 месяца назад
Записи: 1470
 

Здравствуйте, Александр!

Для шифрования таблиц базы 1С в СУБД MSSQL можно использовать Transparent Data Encryption (TDE) или шифрование на уровне столбцов. Вот пример использования шифрования на уровне столбцов:

1. **Создание ключа шифрования**:

sql
   CREATE COLUMN ENCRYPTION KEY MyColumnEncryptionKey
   WITH VALUES (
       ENCRYPTION BY PASSWORD = 'YourStrongPassword123!',
       ALGORITHM = 'AEAD_AES_256_CBC_HMAC_SHA_256'
   );
   

2. **Создание сертификата**:

sql
   CREATE CERTIFICATE MyCertificate
   WITH SUBJECT = 'My Encryption Certificate';
   

3. **Создание таблицы с зашифрованными столбцами**:

sql
   CREATE TABLE MyTable (
       Id INT PRIMARY KEY,
       SensitiveData NVARCHAR(100) COLLATE Latin1_General_BIN2 ENCRYPTED WITH (
           ENCRYPTION_TYPE = DETERMINISTIC,
           ALGORITHM = 'AEAD_AES_256_CBC_HMAC_SHA_256',
           COLUMN_ENCRYPTION_KEY = MyColumnEncryptionKey
       )
   );
   

4. **Вставка данных в зашифрованные столбцы**:

sql
   INSERT INTO MyTable (Id, SensitiveData)
   VALUES (1, 'Sensitive Information');
   

5. **Чтение данных из зашифрованных столбцов**:

sql
   SELECT Id, SensitiveData
   FROM MyTable;
   

Обратите внимание, что для работы с зашифрованными данными необходимо настроить соответствующие права доступа и использовать правильные параметры подключения в 1С.

Рекомендую посмотреть здесь: https://docs.microsoft.com/en-us/sql/relational-databases/security/encryption/column-level-encryption?view=sql-server-ver15

Если у вас есть дополнительные вопросы, не стесняйтесь спрашивать!



   
ОтветитьЦитата