0
在我的MVC應用程序中,我使用WIF。我已經使用Visual Studio內置工具添加了STS參考。 FedUtil已經產生了一些條目在web.config中:WIF與MVC中的AuthorizeAttribute進行關聯,以限制某些頁面的訪問限制
<microsoft.identityModel>
<service>
<claimsAuthenticationManager type="Social.Core.Security.RolesAwareClaimsAuthenticationManager, Social.Core" />
<audienceUris>
<add value="http://app.something.com/" />
</audienceUris>
...
正如你所看到的,另外我寫定製ClaimsAuthenticationManager一些說法添加到從STS已經收到這些。
然而,在應用程序我有限制頁:
public class ProfileController : BaseController
{
[Authorize]
public virtual ActionResult Index()
{
// restricted area
}
}
我就被限制的動作加入AuthorizeAttribute。我只需要輸入app.something.com/profile/index。不幸的是,現在登錄表單在進入應用程序的任何部分時顯示,例如主頁app.something.com。
如何將WIF身份驗證與AuthorizeAttribute關聯並僅授權我需要的內容?也許我需要在web.config或STS中的某處添加app.something.com/profile/index?任何線索?
你確定'[Authorize]'屬性是否導致該問題?將其刪除併發生問題? – wal 2012-08-16 11:22:42
我不知道你是否清楚地知道我在問什麼。 Mabye我的問題不清楚。我想讓它與這個屬性一起工作(在使用此屬性訪問操作時使用WIF提供的消息登錄表單),或者至少限制對特定頁面(而不是整個站點)的訪問,而不使用此屬性以任何其他方式訪問。 – jwaliszko 2012-08-16 12:25:06
我暗示該特定屬性不會導致您的主頁需要驗證。就像woloski所說的那樣 – wal 2012-08-16 13:25:30