2011-11-25 94 views
2

我必須構建一個具有表單身份驗證的Web應用程序,並且我對每個用戶(添加,更新,刪除,查看)都有自己的角色和權限。 PrincipalPermission在拒絕任何用戶無權運行特定方法時非常有用,但我不想使用成員資格 - 我擁有自己的權限和角色。爲ASP.Net創建一個自定義PrincipalPermission

我如何創建自己的PrincipalPermission來檢查我的自定義權限?我認爲它必須是這樣[CustomPrincipalPermission(SecurityAction.Demand,UserPrivilege=currentUser.x)] 其中currentUser.x是bool來指示用戶是否必須訪問此方法。

這是可能的,如果是的話如何?

+0

你想限制與特定用戶的訪問SecurityAction?什麼是用戶特權? – Megacan

回答

1

您不必使用成員資格提供程序與.net認證和授權進行集成。

您可以通過編程或使用屬性來控制對代碼的訪問。 .Net將根據當前的Principal來驗證用戶。

委託人如何填補取決於您。您可以使用membershipProvider或您自己的方案。

默認主體有一個用戶名和一組角色。如果沒有任何特殊需要,你可以使用它。

退房此鏈接:http://msdn.microsoft.com/en-us/library/ff649350.aspx#secnetch03_designauthstrategy

+0

所以如何添加我自己的角色而不使用.Net會員資格? –

+0

對不起,我認爲我誤解了你的帖子。我不知何故讀你正在嘗試使用MembershipProvider。 – Megacan

0

可以使用.NET校長的身份驗證與一些變化FormAuthentication很容易的Web應用程序: 請閱讀This project

+0

此代碼是爲MVC,但我需要一個正常的ASP.Net,我不知道MVC,你能幫忙嗎? –