ALTER ENCRYPT RULE

说明

ALTER ENCRYPT RULE 语法用于修改加密规则

语法

语法 铁路图

  1. AlterEncryptRule ::=
  2. 'ALTER' 'ENCRYPT' 'RULE' encryptDefinition (',' encryptDefinition)*
  3. encryptDefinition ::=
  4. ruleName '(' 'COLUMNS' '(' columnDefinition (',' columnDefinition)* ')' (',' 'QUERY_WITH_CIPHER_COLUMN' '=' ('TRUE' | 'FALSE'))? ')'
  5. columnDefinition ::=
  6. '(' 'NAME' '=' columnName (',' 'PLAIN' '=' plainColumnName)? ',' 'CIPHER' '=' cipherColumnName (',' 'ASSISTED_QUERY_COLUMN' '=' assistedQueryColumnName)? (',' 'LIKE_QUERY_COLUMN' '=' likeQueryColumnName)? ',' encryptAlgorithmDefinition (',' assistedQueryAlgorithmDefinition)? (',' likeQueryAlgorithmDefinition)? ')'
  7. encryptAlgorithmDefinition ::=
  8. 'ENCRYPT_ALGORITHM' '(' 'TYPE' '(' 'NAME' '=' encryptAlgorithmType (',' propertiesDefinition)? ')'
  9. assistedQueryAlgorithmDefinition ::=
  10. 'ASSISTED_QUERY_ALGORITHM' '(' 'TYPE' '(' 'NAME' '=' encryptAlgorithmType (',' propertiesDefinition)? ')'
  11. likeQueryAlgorithmDefinition ::=
  12. 'LIKE_QUERY_ALGORITHM' '(' 'TYPE' '(' 'NAME' '=' encryptAlgorithmType (',' propertiesDefinition)? ')'
  13. propertiesDefinition ::=
  14. 'PROPERTIES' '(' key '=' value (',' key '=' value)* ')'
  15. tableName ::=
  16. identifier
  17. columnName ::=
  18. identifier
  19. plainColumnName ::=
  20. identifier
  21. cipherColumnName ::=
  22. identifier
  23. assistedQueryColumnName ::=
  24. identifier
  25. likeQueryColumnName ::=
  26. identifier
  27. encryptAlgorithmType ::=
  28. string
  29. key ::=
  30. string
  31. value ::=
  32. literal

Supplement

  • PLAIN 指定明文数据列,CIPHER 指定密文数据列,ASSISTED_QUERY_COLUMN 指定辅助查询列,LIKE_QUERY_COLUMN 指定模糊查询列;
  • encryptAlgorithmType 指定加密算法类型,请参考 加密算法
  • 重复的 ruleName 将无法被创建。

示例

  • 修改加密规则
  1. ALTER ENCRYPT RULE t_encrypt (
  2. COLUMNS(
  3. (NAME=user_id,PLAIN=user_plain,CIPHER=user_cipher,ENCRYPT_ALGORITHM(TYPE(NAME='AES',PROPERTIES('aes-key-value'='123456abc')))),
  4. (NAME=order_id,CIPHER=order_cipher,ENCRYPT_ALGORITHM(TYPE(NAME='MD5')))
  5. ), QUERY_WITH_CIPHER_COLUMN=TRUE);

保留字

ALTERENCRYPTRULECOLUMNSNAMECIPHERPLAINENCRYPT_ALGORITHMQUERY_WITH_CIPHER_COLUMNTYPETRUEFALSE

相关链接