1

有没有人使用数据库凭证存储 com.ibm.sbt.security.credential.store.DBCredentialStore 来存储 OAuth2 端点的令牌。我在 WebSphere 7 上运行一个简单的应用程序,它带有一个用于令牌存储的 db2 数据库。我在 managed-beans.xml 中正确配置了商店的托管 bean

<managed-bean>
    <managed-bean-name>CredStoreDB</managed-bean-name>
    <managed-bean-class>com.ibm.sbt.security.credential.store.DBCredentialStore</managed-bean-class>
    <managed-property> 
        <property-name>jndiName</property-name> 
        <value>jdbc/sbtk</value> 
    </managed-property>
    <managed-property> 
        <property-name>tableName</property-name> 
        <value>SBTKREP</value> 
    </managed-property>
    <managed-bean-scope>application</managed-bean-scope>
    <!-- Fixed OAuth Application parameters -->
</managed-bean>

但是凭据永远不会存储到数据库中……也没有错误。我可以在代码中看到我的端点正在使用正确的凭据存储,方法是......

pw.println("credential store is " + ((OAuth2Endpoint) ep).getCredentialStore());

实际上是什么导致凭据被存储..以前有人这样做过吗?任何帮助表示赞赏。谢谢。

4

1 回答 1

2

确保 SBTKREP 表存在于数据库中的 jdbc/sbtk

如果没有,这里有一些脚本可以运行: https ://github.com/OpenNTF/SocialSDK/tree/master/samples/dbscripts

于 2014-03-31T09:01:09.657 回答