我正在尋找使用像WordPress或Drupal這樣的開源CMS /博客網站。我需要它與ASP.NET會員一起工作,我已經運行了我的當前網站和社區網站。如何在ASP.NET網站中集成ASP.NET成員資格?
我假設我需要用(手寫)一些cookie來回傳遞。那麼你將如何做到這一點?我正在尋找關於如何使這個過程順利和安全的創意。
我正在尋找使用像WordPress或Drupal這樣的開源CMS /博客網站。我需要它與ASP.NET會員一起工作,我已經運行了我的當前網站和社區網站。如何在ASP.NET網站中集成ASP.NET成員資格?
我假設我需要用(手寫)一些cookie來回傳遞。那麼你將如何做到這一點?我正在尋找關於如何使這個過程順利和安全的創意。
Drupal具有分層和可插入authentication system,您可以使用它連接到任何外部系統進行身份驗證。
正如以下評論指出的,「外部系統」可能有點模糊。
它不一定是XMLRPC,REST或總線系統,它可以是任何東西,從目錄中的文本文件到填充了「本地」MySQL數據庫中的舊帳戶的表。 需要指出的是,這個可插入的認證層允許任何沒有Drupal-users-database-table掛鉤在允許/不允許認證/註冊中。
那麼,糾正我,如果我錯了,但他並不真正對外部系統進行身份驗證......有些事告訴我他不介意打本地數據庫進行驗證,這只是他如何去它...... idk,也許我在這裏錯了。 – jcolebrand 2010-08-12 19:02:02
對於Drupal,非Drupal「本地數據庫」仍被視爲「外部系統」。也許我應該更加冗長,在編輯中糾正這一點。 – berkes 2010-08-12 19:16:21
+1評論感謝;) – jcolebrand 2010-08-12 19:44:39
我查詢數據庫的適當的領域,我用它來創建我的Cookie在C#代碼,這是否幫助你?
FormsAuthenticationTicket ticket = new FormsAuthenticationTicket(
1, // version
strUser, // user name
DateTime.Now, // create time
DateTime.Now.AddYears(1), // expire time
false, // persistent
"my own data"); // user data
string strEncryptedTicket = FormsAuthentication.Encrypt(ticket);
HttpCookie cookie = new HttpCookie(FormsAuthentication.FormsCookieName, strEncryptedTicket);
Context.Response.Cookies.Add(cookie);
至於要運行的查詢,這些都是簡單的,如果你使用它們有一個aspnetdb的實例已經了一個asp.net應用程序文件,但是如果你需要一些東西來訪問我可以發佈更多的代碼那些也是。你問的cookie,所以這是我如何設置我的Cookie在C#
我這樣做是因爲我有兩種形式的身份驗證,但這適用於我係統上其他地方的aspnetdb身份驗證。一旦我手動設置這樣的cookie,我就完成了自動化,正如你所看到的,它每次保持一年(當然,你可以設置exp時間,但是你喜歡) – jcolebrand 2010-08-12 19:49:11
而且不,我不想使用MySQL ASP.NET成員資格提供程序。我無法在ASP.NET網站中修改我的Membership Provider。 – Banzor 2010-08-12 16:44:16