ColdFusion 会话管理/多域用户认证
ColdFusion Session Management / User Authentication with Multiple Domains
我有一个问题,我需要对来自驻留在单独服务器、数据库上并使用 JSP 构建的域的用户执行身份验证检查。
以下是该过程的简要概述:
domain1.com(用户访问此页面以登录站点以获取他们需要的内容。使用 J2EE 会话 ID)
domain2.com(用户可以在其中检索使用 ColdFusion 10 构建的数据的内容区域。特定于每个帐户的数据被传递到 URL
例如,
domain2.com/content/content.cfm?customerID=12345
domain2.com/content/content.cfm?customerID=12345&pageid=AB12&type=CID1
问题是任何人都可以访问 domain2 而无需通过 domain1.com 登录,只需输入 URL。什么是对最初从托管在与我的 ColdFusion 环境完全不同的平台上的域进行身份验证的会话进行身份验证的最佳安全实践?
最佳实践:您必须使用可共享资源在多个环境之间正确进行身份验证,例如它们可以访问的数据库或网络服务。这是唯一安全的方法。
隐蔽性安全:加密 domain1.com 上的登录信息(例如客户身份)并将加密令牌传递给 domain2.com(重定向时)。确保在加密令牌中使用具有随机内容的填充和过期时间戳,以防止重复使用令牌。 domain2.com 可以轻松解密令牌并从那里处理登录。在这种情况下,可共享资源是用于 encrypt/decrypt 令牌的密钥。 AES 是一个好的开始。
我有一个问题,我需要对来自驻留在单独服务器、数据库上并使用 JSP 构建的域的用户执行身份验证检查。
以下是该过程的简要概述:
domain1.com(用户访问此页面以登录站点以获取他们需要的内容。使用 J2EE 会话 ID)
domain2.com(用户可以在其中检索使用 ColdFusion 10 构建的数据的内容区域。特定于每个帐户的数据被传递到 URL
例如,
domain2.com/content/content.cfm?customerID=12345
domain2.com/content/content.cfm?customerID=12345&pageid=AB12&type=CID1
问题是任何人都可以访问 domain2 而无需通过 domain1.com 登录,只需输入 URL。什么是对最初从托管在与我的 ColdFusion 环境完全不同的平台上的域进行身份验证的会话进行身份验证的最佳安全实践?
最佳实践:您必须使用可共享资源在多个环境之间正确进行身份验证,例如它们可以访问的数据库或网络服务。这是唯一安全的方法。
隐蔽性安全:加密 domain1.com 上的登录信息(例如客户身份)并将加密令牌传递给 domain2.com(重定向时)。确保在加密令牌中使用具有随机内容的填充和过期时间戳,以防止重复使用令牌。 domain2.com 可以轻松解密令牌并从那里处理登录。在这种情况下,可共享资源是用于 encrypt/decrypt 令牌的密钥。 AES 是一个好的开始。