- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我用过 JDBCTokenStore作为我的 oauth2 身份验证 token 的主要 token 存储。通常,当请求通过 Spring Java 应用程序时,我们可以轻松地将 token 解析为其 access_token 字符串形式,因为我们使用的是 Spring。
问题出在另一个应用程序正在访问 oauth 访问 token token 字段时。他们似乎无法将 BLOB/bytea token 字段转换为字符串并使用该字符串进行比较。
这里是访问 token 存储为 bytea token
这是来 self 们的 Spring Java 应用程序的 access_token
我们如何将 bytea token 从 Postgres 转换为其字符串形式?
最佳答案
你搞错了。 token_id 是 spring oauth2 配置创建的实际 access_token。在将 token_id 存储到持久存储(例如 Postgresql)之前,生成的 token_id 会通过 MD5 进行消化。可以在这里找到。
您始终可以使用encode来自 PostgreSQL。但是我非常怀疑你是否可以轻松解析
如果您希望其他应用程序将其翻译/解码回其常规字符串形式。你必须使用这个。
String token_id = "ceb589c0-8a01-4513-96d9-6ed10d6f8c77";
MessageDigest digest;
try {
digest = MessageDigest.getInstance("MD5");
}
catch (NoSuchAlgorithmException e) {
throw new IllegalStateException("MD5 algorithm not available. Fatal (should be in the JDK).");
}
try {
byte[] bytes = digest.digest(token_id.getBytes("UTF-8"));
System.out.println(String.format("%032x", new BigInteger(1, bytes))) ;
}
catch (UnsupportedEncodingException e) {
throw new IllegalStateException("UTF-8 encoding not available. Fatal (should be in the JDK).");
}
话虽这么说。您必须让其他应用程序使用某种方法,以便您将其转换回您从 Spring oauth2 收到的 access_token
关于java - 从 oauth2 JDBCTokenStore 反序列化 token 字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37652336/
我在 Spring JdbcTokenStore 上遇到了糟糕的性能,所以我调查了一下,发现以下缓慢的查询: delete from oauth_access_token where token_id
对于我的 REST API,我使用 JWT 进行 OAuth2 授权。目前,我正在扩展 JwtTokenStore 以将刷新 token 存储在内存中,以便我能够撤销它们。 // TODO: This
我正在尝试在此处转换 jdbctoken 存储架构 https://github.com/spring-projects/spring-security-oauth/blob/master/sprin
现在我有这个 oAUth2 token 存储配置 我想将我的 token 存储在数据库中,因此我需要一些其他自定义实现来存储和检索 token 。我检查了
我用过 JDBCTokenStore作为我的 oauth2 身份验证 token 的主要 token 存储。通常,当请求通过 Spring Java 应用程序时,我们可以轻松地将 token 解析为其
所以我已经尝试了一个多星期让 JdbcTokenStore 工作,但我似乎无法弄清楚出了什么问题。 我没有使用 Spring Boot ,我会尽力解释我在做什么。 因此,让我们从 token 的数据库
正如标题中提到的,当同一个客户端同时查询 token 端点时(两个进程同时为同一个客户端请求 token ),我遇到了这个问题。 身份验证服务器日志中的消息如下所示: 2016-12-05 19:08
嘿, 我正在尝试使用 Spring-Boot 在应用程序中实现 OAuth2。我正在努力实现 JdbcTokenStore (我理解正确吗?这是将 token 存储在数据库中?) 我的代码如下所示:
我目前在我的应用程序中通过 Hibernate 使用 Jpa。由于spring security oauth2提供了JdbcTokenStore,我就开始使用了。但问题是,我不能使用缓存(我在应用程序
我是一名优秀的程序员,十分优秀!