[英]Not getting user with correct credentials with asp.net identity and owin
[英]Trouble migrating to Asp.Net Identity/OWIN
我們已經擁有了自己的數據庫,並且具有users
, roles
, userrole
表,並且剛剛在.net中發現了Identity系統。 我想集成應用程序cookie身份驗證,但是無法理解此Identity模型中的不同概念。 不需要集成到第三方的OWIN適配器。 因為我們不需要與第三方集成,所以我們只需要從系統中進行內部加密的cookie身份驗證,這就是我們真正想要的。
有人可以幫助我掌握這些模型背后的概念嗎? 我已經閱讀了其中的每一個,但仍然對它們感到困惑。
目前,我看到許多身份模型: Users, Logins, Claims, Roles
roles
表會使用“ Roles
或“ Claims
模型嗎? Logins
和Users
,但每個用戶只有一個登錄名。 在這種情況下該怎么辦? 啟動應用程序創建的示例表比所需的復雜得多。 由於我們不需要許多功能,因此,它們已經很不錯了,但是可以使用2形式身份驗證,短信驗證等功能。 不需要所有。 這是一個內部系統。
上周,我花了很多時間試圖掌握這種模型,但仍然遇到麻煩。 如果有人可以指出正確的方向,那將會有所幫助。
用戶非常直截了當,因此我們將跳過它。 登錄名是外部身份驗證附件。 根據身份與第三方身份驗證提供程序配合使用的方式,您可以擁有不具有附加用戶的登錄名,不具有附加登錄名的用戶或具有附加登錄名的用戶。 在通過您的站點進行身份驗證(登錄)與成為站點的注冊成員(用戶)之間是有區別的。
聲明只是與用戶關聯的數據。 通常,這些將是暫時的-永久存儲在用戶身上沒有意義,例如,過期的第三方auth令牌實際上沒有存儲到數據庫中的用戶是沒有意義的。
角色只是權限集。 人們使用角色的方式有所不同,但是從技術上來講,角色只是定義了用戶可能具有的某些功能,例如“ CanEdit”,“ CanView”,“ CanDelete”等。您經常會看到人們更多地將其作為組使用:管理員”,“編輯者”,“貢獻者”等,它們抽象地定義了用戶權限。
OWIN是身份的核心組件。 您實際上不是可以選擇的東西。 如果您不想使用第三方身份驗證功能,則不要使用,但是將其包括在內不是問題。
最后,身份是固執己見的。 可以將用戶數據遷移到特定於Identity的結構中,但是讓Identity僅在適當位置使用現有用戶表幾乎是不可能的。 我不確定這是否真的是您的意思,但是如果是,請不要理會。 您可以自定義單個Identity模型,以在數據庫中包含更多信息,但是通常,如果您要使用Identity,則需要找到一種將數據映射到Identity提供的方法。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.