问题标签 [pgcrypto]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
postgresql - 如何使用 pgcrypto 测试通过(使用领域-digesthashmethod)
我尝试使用 pgcrypt 检查密码
我只能使用两种方法(数据库限制)
- HtPasswdHash方法
- HtDigestHash方法
我可以使用第一种方法:
但我必须将方法更改为第二个 - HtDigestHashMethod
在数据库密码看起来像(更改 - 不是真实的):
如何使用 myrealm 检查密码
sql - 如何向用户授予执行 pgcrypto 摘要功能
使用 PostgreSQL 9.6
我使用 postgres 用户使用创建扩展 pgcrypto 启用了 pgcrypto。现在我想向我的其他数据库用户授予执行权限。不幸的是我做不到。这是可能的还是您必须是超级用户才能使用 pgcrypto 的摘要功能。
使用下面的答案,我能够成功授予执行该功能的权限。但是 another_user 无法执行该功能。为了使用另一个用户执行此功能,我还需要其他权限吗?
即使当我检查用户的权限时,我也会返回我拥有权限。
谢谢
postgresql - Pgcrypto 命令产生非标准输出
每次我运行“加密”或“摘要”命令时,我的输出都包含多个字符“\”实例。
参见示例“选择加密('123456789012345','1234','aes');” - 预期输出:“\x34591627f9c8eae417fc7cbbf458592c”
而我的输出如下:“4Y\026'\371\310\352\344\027\374|\273\364XY”
这同样适用于摘要命令;我是否错误地安装了 pgcrypto?
postgresql - HMAC postgres 错误 - 没有函数与给定的名称和参数类型匹配
在 postgres 中使用 hmac 方法时出现以下错误。请帮忙。
postgresql - pgp_sym_decrypt_bytea 没有返回预期值,我做错了什么?
我在这个问题上看到的其他帖子说要确保加密字段是 bytea 类型,我的已经是。所以,我不确定我在这里做错了什么。请原谅愚蠢的密码,这只是测试概念证明。基本上,我加密“电子邮件”字段,然后检索并解密它,但值返回为 '\x66616b65406578616d706c652e636f6d'。我尝试向返回值添加 ::text 强制转换,但它没有改变结果。
psql (9.6.8)
-- 这是返回的值,而不是原始电子邮件
postgresql - 使用 postgres jsonb 类型和 pgcrypto 猛烈抨击
我有一个带有jsonb 列的postgres表,目的是插入灵活的文档,然后进行一些搜索
让我们从表格和一些示范数据开始:
当数据开始流入一些正在创建的索引时(这就是列类型为 jsonb 的原因),例如:
此时一切都按预期工作,我们能够以良好的性能执行良好的搜索,例如:
问题是现在我们需要像我通常使用 pgcrypto 那样加密数据库中的信息,但是我找不到一种方法来加密jsonb 类型而不会失去所有索引能力或字段的搜索能力,这将我推回到一个非常原始状态。
我们发现关于带有 jsonb 类型的 pgcrypto 的信息太少了,例如:Postgresql - 加密 jsonb 数据和 pgcrypto 文档没有说明任何关于 jsonb 类型的信息https://www.postgresql.org/docs/10/static/pgcrypto。 html
有没有办法我们可以做类似 pgp_sym_decrypt(jsonb, 'secret') 的事情?或者我们可以加密数据而不会丢失至少字段搜索能力的另一种机制?(我们可以牺牲索引)
提前致谢,
postgresql - pgcrypto 和 order by
我想在这样的查询中对某些列进行排序:
无论我使用什么列进行排序,都需要很长时间来计算。我知道我可以将这个选择包装在另一个中并在那里进行排序,但这不能是其他原因的解决方案。为什么这需要这么长时间?难道我做错了什么?
这是查询计划:
EXPLAIN 的结果(分析,缓冲):
java - 是否可以在 Hibernate @ColumnTransformer 中为 pgcrypto 更改密码?
我正在使用 pgcrypto 加密基础的某些列的 postgresql 基础。
Java 方面,我使用 JPA 将我的类“映射”到我的数据库。
目前,要加密和解密 java 中的字段,我使用@ColumnTransformer
. 例子 :
这工作正常。但我想改变我的密码。我的应用程序将部署在多台服务器上,并且每台服务器的密码都不同。
我尝试了很多东西,我在互联网上搜索但我没有找到任何东西。所以我开始想......这个注释是否有可能?还是我应该以另一种方式加密/解密?也许在存储库中?
PS这里有几个我试过的例子:
在我的配置文件中定义了 application.security.pgcryptoPassword
编辑
我尝试了两件事:
和
第一个有效,第二个我收到错误:
The value for annotation attribute ColumnTransformer.read must be a constant expression
根据我在互联网上发现的有关此错误的信息,我认为无法在配置文件中更改我的密码并在@ColumnTransformer
注释中使用它。
您同意我的观点还是有其他解决方案?
django - Django - 将加密的 TextField 注释并转换为 FloatField 到小数点后 2 位
我正在使用Django pgcrypto 字段来加密模型中的金额值,
Invoice
如下所示:
我使用 a 是TextPGPSymmetricKeyField
因为我必须将值存储为浮点数并且django-pgcrypto-fields
没有 FloatField 的等价物。
现在我需要amount_usd
通过 API 传递这个值,并且我必须将小数限制为两位。
我尝试过使用以下内容:
但这会产生错误,因为字节(加密数据)无法转换为浮点数。
我也尝试过使用它:
我收到以下错误:
有没有办法将加密字段转换为最多 2 位小数的 FloatField?
postgresql - Postgres 中的 uuid v5
Postgres(或 Postgres 扩展)是否具有 uuid v5 函数(即接受 UUID 名称空间和字符串以生成新 UUID 的函数)?
如果不是本机函数,如何编写此函数?