我正在通过 orgId 作为请求参数和遗留系统(Java)组成的iFrame链接,在将orgId作为遗留系统的请求参数检查数据库时,通过iFrame链接将该orgId与遗留系统进行集成(先前的存在意味着Salesforce用户可以授予对遗留系统应用程序的访问权限),因此,仍未回答的问题是,如果入侵者以某种方式捕获orgId,那么他们就可以轻松访问遗留系统应用程序,因此如何阻止此类攻击是一个挑战。FYI iFrame链接和salesforce站点都运行在https协议上。
发布于 2012-11-05 20:20:40
除了Org Id之外,您还可以在查询字符串中传递active Salesforce SessionId和ServerURL。然后,遗留应用程序可以使用这些来建立SOAP会话,返回Salesforce,并验证OrgId是否与会话详细信息匹配。
然后入侵者需要完全访问当前用户Salesforce会话,才能通过iframe访问遗留应用程序。如果他们这么做了,你的安全已经受到了很大的威胁,所以你有更大的问题。
发布于 2012-11-05 06:14:28
您可以使用动态令牌,而不是使用静态orgId。有几种方法可以实现它,例如,您可以设计要加密的令牌并同时包含orgId和时间戳,然后在salesforce中动态生成时间戳,并且只允许在X分钟/秒内有效的令牌(取决于用户如何使用遗留应用程序)。
如果入侵者能够访问salesforce帐户(其中保存了orgId ),这不会阻止入侵者访问遗留应用程序,从而防止您需要停止使用orgId,而是使用某种注册,生成一个令牌,如果有人使用不当,您可以将其撤消。
也就是说,当legacyapp的用户注册时(或者您最初必须在salesforce中保存orgId的任何进程),而不是保留orgId,调用遗留应用程序并生成一个令牌(保存在遗留应用的db中),该令牌可以在iFrame中稍后使用。
https://stackoverflow.com/questions/13226288
复制相似问题