Back to Shardingsphere

Encrypt Rule.En

docs/document/content/user-manual/shardingsphere-proxy/distsql/usage/encrypt-rule.en.md

5.5.31.2 KB
Original Source

+++ title = "Encrypt" weight = 3 +++

Storage unit Operation

sql
REGISTER STORAGE UNIT ds_0 (
    HOST="127.0.0.1",
    PORT=3306,
    DB="ds_0",
    USER="root",
    PASSWORD="root"
);

Rule Operation

  • Create encrypt rule
sql
CREATE ENCRYPT RULE t_encrypt (
    COLUMNS(
        (NAME=user_id,CIPHER=user_cipher,ENCRYPT_ALGORITHM(TYPE(NAME='AES',PROPERTIES('aes-key-value'='123456abc', 'digest-algorithm-name'='SHA-1')))),
        (NAME=order_id,CIPHER =order_cipher,ENCRYPT_ALGORITHM(TYPE(NAME='AES',PROPERTIES('aes-key-value'='123456abc', 'digest-algorithm-name'='SHA-1'))))
));
  • Create encrypt table
sql
CREATE TABLE `t_encrypt` (
    `id` int(11) NOT NULL,
    `user_id` varchar(45) DEFAULT NULL,
    `order_id` varchar(45) DEFAULT NULL,
    PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
  • Alter encrypt rule
sql
ALTER ENCRYPT RULE t_encrypt (
    COLUMNS(
        (NAME=user_id,CIPHER=user_cipher,ENCRYPT_ALGORITHM(TYPE(NAME='AES',PROPERTIES('aes-key-value'='123456abc', 'digest-algorithm-name'='SHA-1'))))
));
  • Drop encrypt rule
sql
DROP ENCRYPT RULE t_encrypt;
  • Unregister storage unit
sql
UNREGISTER STORAGE UNIT ds_0;
  • Drop distributed database
sql
DROP DATABASE encrypt_db;