Logo
数据加密

数据加密 #

配置项说明 #

命名空间:http://shardingsphere.apache.org/schema/shardingsphere/encrypt/encrypt-5.1.0.xsd

<encrypt:rule />

名称类型说明默认值
id属性Spring Bean Id
queryWithCipherColumn (?)属性是否使用加密列进行查询。在有原文列的情况下,可以使用原文列进行查询true
table (+)标签加密表配置

<encrypt:table />

名称类型说明
name属性加密表名称
column (+)标签加密列配置
query-with-cipher-column(?)属性该表是否使用加密列进行查询。在有原文列的情况下,可以使用原文列进行查询

<encrypt:column />

名称类型说明
logic-column属性加密列逻辑名称
data-type(?)属性逻辑列类型
cipher-column属性加密列名称
cipher-data-type(?)属性加密列类型
assisted-query-column (?)属性查询辅助列名称
assisted-query-data-type(?)属性查询辅助列类型
plain-column (?)属性原文列名称
plain-data-type(?)属性原文列类型
encrypt-algorithm-ref属性加密算法名称

<encrypt:encrypt-algorithm />

名称类型说明
id属性加密算法名称
type属性加密算法类型
props (?)标签加密算法属性配置

示例 #

<encrypt:encrypt-algorithm id="name_encryptor" type="AES">
    <props>
        <prop key="aes-key-value">123456</prop>
    </props>
</encrypt:encrypt-algorithm>

<encrypt:rule id="encryptRule">
    <encrypt:table name="t_user">
        <encrypt:column logic-column="pwd" cipher-column="pwd_encrypt" data-type="VARCHAR(20) NOT NULL" cipher-data-type="VARCHAR(200) NOT NULL" plain-column="pwd_plain" plain-data-type="VARCHAR(20) NOT NULL" assisted-query-column="pwd_assisted" assisted-query-data-type="VARCHAR(20) NOT NULL" encrypt-algorithm-ref="name_encryptor" />
    </encrypt:table>
</encrypt:rule>

算法类型的详情,请参见内置加密算法列表