具有HMAC身份验证的WSO2 API管理器

具有HMAC身份验证的WSO2 API管理器,wso2,Wso2,有人知道如何为WSO2 API管理器添加基于HMAC的身份验证吗 背景-我们正在公开的web服务前推出WSO2 API Manager 1.3,我们需要JavaScript应用程序(一旦经过身份验证)能够直接使用服务(而不是通过服务器上的服务代理来处理OAuth身份验证) 有人知道在WSO2中实现这一点的最简单方法吗?我们已经开始实现AbstractHandler和Authenticator,但这似乎有些过火了——一定有人做了这件事,或者对此有一些指示 非常感谢您。我不知道这是否对您有帮助,但我

有人知道如何为WSO2 API管理器添加基于HMAC的身份验证吗

背景-我们正在公开的web服务前推出WSO2 API Manager 1.3,我们需要JavaScript应用程序(一旦经过身份验证)能够直接使用服务(而不是通过服务器上的服务代理来处理OAuth身份验证)

有人知道在WSO2中实现这一点的最简单方法吗?我们已经开始实现AbstractHandler和Authenticator,但这似乎有些过火了——一定有人做了这件事,或者对此有一些指示


非常感谢您。

我不知道这是否对您有帮助,但我们需要在PBKDF2中使用密码哈希。因此,我扩展了JDBCUserStoreManager,只覆盖preparePassword方法。在内部,它将PBKDF2WithHmacSHA1算法从MessageDigest更改为SecretKeyFactory。我想您可以使用Mac?

您可以编写自己的处理程序,它可以实现
抽象处理程序。

签名验证可以作为类似于“APIAuthenticationHandler”的API处理程序来实现。先前提供的访问令牌可用作Mac标识符。使用者机密可以用作Mac密钥,Mac密钥是使用者和提供者之间的共享机密,用于签署规范化请求字符串。

这可以通过实现自定义中介并将其加入到流中序列来实现。API管理器公开的API将受到OAuth保护,但实际的后端将受到HMAC保护。您可以在文章[1]中找到有关这方面的更多信息


(1)

谢谢@ KMKALE,不是我们真正需要的,而是要考虑的事情。谢谢@ Ratha,这是我们目前采取的路径,我想这只是有点令人失望的是没有一个主要的认证机制,如HMAC支持的盒子,但我想产品也很年轻。每当自定义编码安全,这是一个危险的情况下,错误将引入安全漏洞。谢谢…迈克,我们将考虑HMAC奥特在我们未来的道路地图感谢@拉塔,至少更容易实现的方式将被赞赏。如前所述,如果JavaScript应用程序直接使用API,这是非常常见的,那么这确实需要尽快作为第7层,因为其他一些应用程序已经支持这一点。@MikeStokes这里有一个关于这一点的详细博客,其中包含步骤和示例代码感谢@Ratha的链接,这看起来像是我们需要的,我们将为每个人实施并报告调查结果