【问题标题】:Difficulties in developing for RSA SecurID为 RSA SecurID 开发的困难
【发布时间】:2013-11-04 13:20:34
【问题描述】:

我是产品经理而不是开发人员,所以如果我的问题很愚蠢,请轻描淡写。

我目前正在尝试根据客户要求(实际上是 20 个)将我们的软件与 RSA SecurID 集成。郑重声明,我不想这样做,根据我的研究,有更好更便宜的解决方案,但我离题了。

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

所以我的问题是:

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

【问题讨论】:

  • 您可以将文件存储在数据库中,并在调用 AM 之前将它们写入临时位置。
  • Windows 代理只需将节点密码写入%WINDIR%\system32 中的文件。将其写入只有管理员可以访问的任何位置并使用 DPAPI 对其进行加密

标签: c# .net security rsa saas


【解决方案1】:

实现 SDTI 协议并不难,只要您使用 SDK。您将需要 RSA 的帮助。例如,you need a valid licence just to download the SDK,您将在购买服务器进行测试时获得。

支持令牌也意味着支持某些故障模式,例如:

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

我建议您实施 Radius 协议作为中间解决方案。我知道的所有 Authentication Manager 版本也都实现了 Radius 协议。它是标准化的,并且有机会与 SecurID 以外的其他解决方案一起使用。它可以让您更快、更便宜地启动和运行。 Radius 在网络上的加密保护方面稍弱一些,但您不必处理节点机密。

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

有一些 Radius .Net 客户端库,还有this SO question is a good start

您的测试设置将包括NTRadPing 和(我假设)具有网络策略角色的 Server 2008 R2 以充当测试服务器。

【讨论】:

    猜你喜欢
    • 2011-06-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-12-30
    • 2016-08-29
    • 1970-01-01
    • 1970-01-01
    • 2014-08-06
    相关资源
    最近更新 更多