我正在尝试使用PicketLink 2.7在我的JavaEE7应用程序中实现基于令牌的身份验证。我的代码基于picketlink angularjs-rest快速入门找到的here。我已经成功地配置了一个Token.Provider来发布我的令牌,并且通过使用SecurityConfigurationBuilder,我能够配置PicketLink来根据Authorization报头中是否存在令牌来对用户进行身份验证。但是,我还实现了一个Token.Consumer来从令牌中提取身份信息,但它从未被调用过。看起来好像PicketLink只是从我的JPA IdentityStore中拉取帐户信息。我该如何告诉PicketLink使用我的Token.Consumer来收集此信息?我的Token.Consumer验证数字签名等,所以调用它是很重要的。
发布于 2016-09-28 22:56:49
对于其他正在为此而苦苦挣扎的人,答案是在IdentityConfigurationBuilder上调用setCredentialHandlerProperty(TokenCredentialHandler.TOKEN_CONSUMER, new MyTokenConsumer())。这将设置必要的属性,在验证身份验证令牌时将调用您的Token.Consumer。
https://stackoverflow.com/questions/39734027
复制相似问题