Max*_*imc 10 c# asp.net security asp.net-mvc-4
经过大量的搜索和大量的尝试,我终于想出了如何让人们在我的网站上注册和登录(并给他们角色等并做授权).我从类ExtendedMembershipProvider和RoleProvider继承,为他们创建了一个自定义类,但现在我仍然遇到让Oauth工作的问题(主要是OpenID).我在AuthConfig中注册了GoogleClient,但是一旦我尝试登录它就到了该行(在AccountController.cs中):
if (OAuthWebSecurity.Login(result.Provider, result.ProviderUserId, createPersistentCookie: false))
Run Code Online (Sandbox Code Playgroud)
然后它说尚未实现,现在我检查了扩展成员资格,我不能覆盖登录(因为它不在那里,但它在哪里).我也搜索了谷歌很多,但没有运气,任何获得oauth工作的说明都会出汗(我想我需要制作第3个CustomOath提供者,但我无法找到继承者的内容)!
PS:我制作了一个custommembershiprpovder和customroleprovider,因为我想使用不同的数据库方案.
格言
Max*_*imc 11
我必须在我的自定义memberbershipprovider中覆盖另外3个方法
public override void CreateOrUpdateOAuthAccount(string provider, string providerUserId, string userName)
public override int GetUserIdFromOAuth(string provider, string providerUserId)
//return -1 if User got no OauthAccount
public override string GetUserNameFromId(int userId)
Run Code Online (Sandbox Code Playgroud)
现在它正在运作.(我通过覆盖成员资格提供程序中的所有方法来解决这个问题,然后在每个方法上设置断点,并且在任何地方我根据自定义数据库填写方法.
归档时间: |
|
查看次数: |
3741 次 |
最近记录: |