我向一个面向公众的force.com网站公开了一个带有standardcontroller =“account”的页面。此页面向客户端显示特定于帐户的数据。现在,当客户登录我的网站时,我希望他能够访问他的帐户数据,只能访问他的帐户数据。这是问题所在;具有标准控制器的页面的URL具有Id字段,例如“https // www.myforcesite.force.com / AccountViewPage?Id = a82347dod”。如果用户更改了Id上的几个键,则他很容易访问其他人的帐户页面并绕过登录过程。我怎样才能防止这种情况。
我用salesforce开了一张票,但他们告诉我它按预期工作。我不认为应该有一个琐碎暴力攻击的漏洞,所以我想知道是否有任何修复?
答案 0 :(得分:3)
创建一个StandardController扩展,并检查您网站中的已登录用户是否具有查看该帐户的权限。 http://www.salesforce.com/us/developer/docs/pages/Content/apex_pages_standardcontroller.htm
答案 1 :(得分:0)
您正在寻找的是URL rewriting for force.com网站。
例如,假设您有一个博客站点。如果没有URL重写,博客条目的URL可能如下所示:http://myblog.force.com/posts?id=003D000000Q0PcN
通过URL重写,您的用户可以按日期访问博客帖子 比方说,而不是记录ID。其中一个新的URL 年前夕的帖子可能是: http://myblog.force.com/posts/2009/12/31/auld-lang-syne