我希望在我当前的应用程序中实现oAuth。什么是良好的数据库结构来存储所需的信息,例如令牌等时代。有没有标准?
答案 0 :(得分:9)
我在考虑同样的事情。一般来说,我正在做:
user_oauth_info
-------------------------------
id (int auto-inc)
user_id (int)
oauth_provider (varchar 20)
acccess_token (varchar 40)
refresh_token (varchar 40)
expiry_date (datetime)
SalesForce提供了refresh_token;没有过期,用于刷新access_tokens。如果您的回调网址是移动设备,它们只会给您一个,这很烦人。
答案 1 :(得分:1)
你可以从VS2012建议的MVC框架开始:
<强> webpages_OAuthMembership 强>
Provider nvarchar(30) (clustered primary key)
ProviderUserId nvarchar(100) (clustered primary key)
UserId int
<强> webpages_Membership 强>
UserId int (Primary Key)
CreateDate datetime
ConfirmationToken nvarchar(128)
IsConfirmed bit
LastPasswordFailureDate datetime
PasswordFailuresSinceLastSuccess int
Password nvarchar(128)
PasswordChangedDate datetime
PasswordSalt nvarchar(128)
PasswordVerificationToken nvarchar(128)
PasswordVerificationTokenExpirationDate datetime
然后定义您自己的Users表,如:
UserID int (Primary Key)
UserName nvarchar(80)
Name nvarchar(80)
Surname nvarchar(80)
我真的没有理由这样做,但我猜想提出这种模式的微软人员比我更了解这一点,所以我认为这是一个很好的起点。
答案 2 :(得分:-1)
This default scheme database oauth2
我在Spring Boot中使用它
答案 3 :(得分:-2)
我认为google oAuth教程会为您提供帮助