开发RSA SecurID的难点

时间:2013-11-04 13:20:34

标签: c# .net security rsa saas

我是产品经理而不是开发人员,所以如果我的问题很蠢,请保持温和。

我目前正在尝试根据客户要求(实际上,如20)将我们的软件与RSA SecurID集成。为了记录,我不想和我根据我的研究有更好,更便宜的解决方案,但我离题了。

我们可以遇到的一个问题是您无法直接与其身份验证管理器(“AM”)进行通信。相反,您必须使用此RSA代理并将呼叫发送到与AM通信的代理。当您调用代理时,您还需要为其所需的特定文件提供文件路径,其中包含与AM通信所需的内容(证书,地址,AM的最后状态等)。我们的软件是共享SaaS,我们不能只将所有这些客户文件转储到服务器硬盘上。理想情况下,它们需要位于数据库中,但代理不会接受要发送给它的文件,就像在对象中一样,它希望它们位于物理文件路径中。

所以我的问题是:

  • 还有其他人针对RSA SecurID解决方案开发了吗?
  • 你是如何处理存储sdreq,nodesecret等的?
  • 一般情况下,当文件驻留在数据库(.NET)中时,您将如何处理需要提供程序文件路径的情况?

1 个答案:

答案 0 :(得分:5)

只要您使用SDK,实现SDTI协议就不那么​​难了。您将需要RSA的一些帮助。例如,you need a valid licence just to download the SDK,当您购买要测试的服务器时,您将获得该this SO question is a good start

支持令牌也意味着支持一些失败模式,例如:

  • 具有时钟偏差的令牌(重新同步令牌)
  • 没有PIN的令牌(您必须提示输入)
  • 如果用户没有提供有效信息,则来回所有(例如:新引脚不符合复杂性要求)

我建议您将Radius协议实施为中途解决方案。我所知道的所有版本的Authentication Manager也都实现了Radius协议。它是标准化的,它有机会使用SecurID之外的其他解决方案。它可以让你更快,更便宜地运行。 Radius在线路上的加密保护方面稍微弱一些,但您不必处理节点机密。

另一方面,您可能需要做一些工作来支持高可用性,具体取决于您选择的Radius客户端。

有一些Radius .Net客户端库,NTRadPing

您的测试设置将包括{{3}}和(我假设)具有网络策略角色的Server 2008 R2作为测试服务器。