簡體   English   中英

SimpleMembership WebForms Asp.net 4.0角色

[英]SimpleMembership WebForms Asp.net 4.0 roles

我試圖找到一種方法來管理現有WebForms ASP.NET 4.0應用程序的角色。 這不是MVC。 我無法將現有項目更改為MVC或.NET 4.5,因此請根據我的要求提供解決方案。

我將SimpleMembership視為一種管理角色的方法,而不必使用不需要的表安裝整個成員資格(aspnet_regsql.exe)。

這是一個Intranet站點。 用戶將通過其Windows身份進行身份驗證,因此本質上沒有登錄名。 大多數用戶將不在任何用戶數據庫中,我想控制角色,以便如果未特別為他們提供其他角色,則他們仍具有訪問權限(也許是公共角色,或者簡單地沒有角色)。

對於將要在數據庫中的用戶,我希望能夠分配角色(管理員,管理員等),以便他們可以更好地訪問各種頁面和功能。 用戶可以沒有任何角色(或公共角色,如上所述),也可以具有一個或多個角色。

那么,有可能嗎? 我是否可以僅針對表中的那些用戶使用基於角色的系統,並使其他所有人無需登錄即可訪問網站的某些部分?

SQL Server中有一個現有的用戶表。 我應該能夠使用它,而不是文本文件/ xml /手動方法。 將創建一個管理頁面,以向用戶分配角色並添加用戶。

看來我應該能夠根據此使用SimpleMembership: http : //blog.osbornm.com/2010/07/21/using-simplemembership-with-asp-net-webpages/

盡管它說我需要在_start.cshtml中添加一些MVC代碼,但是只要我不需要將整個網站都轉換為MVC,就可以了。

目前,我對此有一個錯誤:

The type 'WebMatrix.WebData.WebSecurity' exists in both 'c:\Windows\Microsoft.NET\assembly\GAC_MSIL\WebMatrix.WebData\v4.0_1.0.0.0__31bf3856ad364e35\WebMatrix.WebData.dll' and 'c:\Windows\Microsoft.NET\assembly\GAC_MSIL\WebMatrix.WebData\v4.0_2.0.0.0__31bf3856ad364e35\WebMatrix.WebData.dll' 

我認為,一旦修復此問題(很可能是web.config設置),我應該會好的。

事實證明,要使其正常工作,我要做的就是在web.config中獲取適當的設置。

<add key="webPages:Version" value="2.0" />
<add key="enableSimpleMembership" value="false" />
<add key="autoFormsAuthentication" value="false" />

然后在_start.cshtml文件中添加代碼

@{
    WebSecurity.InitializeDatabaseConnection("ConnectionStringNameHere", "Users", "ID", "LanID", false);
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM