pgcryptokey
PG密钥管理
仓库
https://momjian.us/download/pgcryptokey/
https://momjian.us/download/pgcryptokey/
源码
pgcryptokey-0.85.tar.gz
pgcryptokey-0.85.tar.gz
概览
| 扩展包名 | 版本 | 分类 | 许可证 | 语言 |
|---|---|---|---|---|
pgcryptokey | 0.85 | SEC | PostgreSQL | C |
| ID | 扩展名 | Bin | Lib | Load | Create | Trust | Reloc | 模式 |
|---|---|---|---|---|---|---|---|---|
| 7320 | pgcryptokey | 否 | 是 | 否 | 是 | 否 | 是 | - |
| 相关扩展 | pgcrypto pgsodium column_encrypt supabase_vault pg_enigma pg_tde pgcrypto shacrypt cryptint pguecc pgsmcrypto |
|---|
missing 14 on el pgdg repo
版本
| 类型 | 仓库 | 版本 | PG 大版本 | 包名 | 依赖 |
|---|---|---|---|---|---|
| EXT | MIXED | 0.85 | 1817161514 | pgcryptokey | pgcrypto |
| RPM | PIGSTY | 0.85 | 1817161514 | pgcryptokey_$v | - |
| DEB | PIGSTY | 0.85 | 1817161514 | postgresql-$v-pgcryptokey | - |
构建
您可以使用 pig build 命令构建 pgcryptokey 扩展的 RPM / DEB 包:
BASH
安装
您可以直接安装 pgcryptokey 扩展包的预置二进制包,首先确保 PGDG 和 PIGSTY 仓库已经添加并启用:
BASH
使用 pig 或者是 apt/yum/dnf 安装扩展:
安装
BASH
pig
BASH
dnf
BASH
apt
BASH
创建扩展:
SQL
用法
pgcryptokey 在 PostgreSQL 内部管理加密数据密钥。密钥以加密方式存储,通过访问密码保护,支持系统级和会话级密钥访问。
SQL
密钥管理函数
| 函数 | 描述 |
|---|---|
create_cryptokey(name, byte_len) | 生成新的加密密钥 |
set_cryptokey(name) | 设置当前活动密钥 |
get_cryptokey(name) | 获取密钥材料 |
drop_cryptokey(name) | 删除密钥 |
supersede_cryptokey() | 轮换到新密钥(相同访问密码) |
change_key_access_password() | 更新密钥认证凭据 |
reencrypt_data() | 使用不同密钥重新加密数据 |
会话控制
| 函数 | 描述 |
|---|---|
get_shared_key() | 建立客户端/服务器共享密钥(仅 SSL/Unix) |
set_session_access_password() | 客户端提供的密码认证 |
典型工作流程
SQL
访问密码可以在数据库启动时配置以实现系统级访问,也可以由各个客户端按会话配置以实现细粒度安全控制。