public class SaOAuth2Template
extends java.lang.Object
| 构造器和说明 |
|---|
SaOAuth2Template() |
| 限定符和类型 | 方法和说明 |
|---|---|
java.lang.String |
buildImplicitRedirectUri(java.lang.String redirectUri,
java.lang.String token,
java.lang.String state)
构建URL:下放Access-Token URL (implicit 隐藏式)
|
java.lang.String |
buildRedirectUri(java.lang.String redirectUri,
java.lang.String code,
java.lang.String state)
构建URL:下放Code URL (Authorization Code 授权码)
|
AccessTokenModel |
checkAccessToken(java.lang.String accessToken)
获取 Access-Token,如果AccessToken为空则抛出异常
|
AccessTokenModel |
checkAccessTokenParam(java.lang.String clientId,
java.lang.String clientSecret,
java.lang.String accessToken)
校验:Access-Token、clientId、clientSecret 三者是否匹配成功
|
SaClientModel |
checkClientModel(java.lang.String clientId)
根据id获取Client信息, 如果Client为空,则抛出异常
|
SaClientModel |
checkClientSecret(java.lang.String clientId,
java.lang.String clientSecret)
校验:clientId 与 clientSecret 是否正确
|
ClientTokenModel |
checkClientToken(java.lang.String clientToken)
获取 Client-Token,如果ClientToken为空则抛出异常
|
void |
checkContract(java.lang.String clientId,
java.lang.String scope)
校验:该Client是否签约了指定的Scope
|
CodeModel |
checkGainTokenParam(java.lang.String code,
java.lang.String clientId,
java.lang.String clientSecret,
java.lang.String redirectUri)
校验:使用 code 获取 token 时提供的参数校验
|
RefreshTokenModel |
checkRefreshTokenParam(java.lang.String clientId,
java.lang.String clientSecret,
java.lang.String refreshToken)
校验:使用 Refresh-Token 刷新 Access-Token 时提供的参数校验
|
void |
checkRightUrl(java.lang.String clientId,
java.lang.String url)
校验:该Client使用指定url作为回调地址,是否合法
|
void |
checkScope(java.lang.String accessToken,
java.lang.String... scopes)
校验:指定 Access-Token 是否具有指定 Scope
|
RefreshTokenModel |
converAccessTokenToRefreshToken(AccessTokenModel at)
将 Access-Token 转换为 Refresh-Token
|
AccessTokenModel |
converCodeToAccessToken(CodeModel cm)
将 Code 转换为 Access-Token
|
AccessTokenModel |
converRefreshTokenToAccessToken(RefreshTokenModel rt)
将 Refresh-Token 转换为 Access-Token
|
RefreshTokenModel |
converRefreshTokenToRefreshToken(RefreshTokenModel rt)
根据 Refresh-Token 创建一个新的 Refresh-Token
|
void |
deleteAccessToken(java.lang.String accessToken)
删除:Access-Token
|
void |
deleteAccessTokenIndex(java.lang.String clientId,
java.lang.Object loginId)
删除:Access-Token索引
|
void |
deleteClientToken(java.lang.String clientToken)
删除:Client-Token
|
void |
deleteClientTokenIndex(java.lang.String clientId)
删除:Client-Token索引
|
void |
deleteCode(java.lang.String code)
删除:Code
|
void |
deleteCodeIndex(java.lang.String clientId,
java.lang.Object loginId)
删除:Code索引
|
void |
deleteGrantScope(java.lang.String clientId,
java.lang.Object loginId)
删除:用户授权记录
|
void |
deletePastTokenIndex(java.lang.String clientId)
删除:Past-Token索引
|
void |
deleteRefreshToken(java.lang.String refreshToken)
删除:Refresh-Token
|
void |
deleteRefreshTokenIndex(java.lang.String clientId,
java.lang.Object loginId)
删除:Refresh-Token索引
|
AccessTokenModel |
generateAccessToken(RequestAuthModel ra,
boolean isCreateRt)
构建Model:Access-Token (根据RequestAuthModel构建,用于隐藏式 and 密码式)
|
AccessTokenModel |
generateAccessToken(java.lang.String code)
构建Model:Access-Token
|
ClientTokenModel |
generateClientToken(java.lang.String clientId,
java.lang.String scope)
构建Model:Client-Token
|
CodeModel |
generateCode(RequestAuthModel ra)
构建Model:Code授权码
|
RequestAuthModel |
generateRequestAuth(SaRequest req,
java.lang.Object loginId)
构建Model:请求Model
|
AccessTokenModel |
getAccessToken(java.lang.String accessToken)
获取:Access-Token Model
|
java.lang.String |
getAccessTokenValue(java.lang.String clientId,
java.lang.Object loginId)
获取:Access-Token Value
|
SaClientModel |
getClientModel(java.lang.String clientId)
根据id获取Client信息
|
ClientTokenModel |
getClientToken(java.lang.String clientToken)
获取:Client-Token Model
|
java.lang.String |
getClientTokenValue(java.lang.String clientId)
获取:Client-Token Value
|
CodeModel |
getCode(java.lang.String code)
获取:Code Model
|
java.lang.String |
getCodeValue(java.lang.String clientId,
java.lang.Object loginId)
获取:Code Value
|
java.lang.String |
getGrantScope(java.lang.String clientId,
java.lang.Object loginId)
获取:用户授权记录
|
java.lang.Object |
getLoginIdByAccessToken(java.lang.String accessToken)
获取 Access-Token 所代表的LoginId
|
java.lang.String |
getOpenid(java.lang.String clientId,
java.lang.Object loginId)
根据ClientId 和 LoginId 获取openid
|
java.lang.String |
getPastTokenValue(java.lang.String clientId)
获取:Past-Token Value
|
RefreshTokenModel |
getRefreshToken(java.lang.String refreshToken)
获取:Refresh-Token Model
|
java.lang.String |
getRefreshTokenValue(java.lang.String clientId,
java.lang.Object loginId)
获取:Refresh-Token Value
|
boolean |
isGrant(java.lang.Object loginId,
java.lang.String clientId,
java.lang.String scope)
判断:指定 loginId 是否对一个 Client 授权给了指定 Scope
|
java.lang.String |
randomAccessToken(java.lang.String clientId,
java.lang.Object loginId,
java.lang.String scope)
随机一个 Access-Token
|
java.lang.String |
randomClientToken(java.lang.String clientId,
java.lang.String scope)
随机一个 Client-Token
|
java.lang.String |
randomCode(java.lang.String clientId,
java.lang.Object loginId,
java.lang.String scope)
随机一个 Code
|
java.lang.String |
randomRefreshToken(java.lang.String clientId,
java.lang.Object loginId,
java.lang.String scope)
随机一个 Refresh-Token
|
AccessTokenModel |
refreshAccessToken(java.lang.String refreshToken)
刷新Model:根据 Refresh-Token 生成一个新的 Access-Token
|
void |
revokeAccessToken(java.lang.String accessToken)
回收 Access-Token
|
void |
saveAccessToken(AccessTokenModel at)
持久化:AccessToken-Model
|
void |
saveAccessTokenIndex(AccessTokenModel at)
持久化:AccessToken-索引
|
void |
saveClientToken(ClientTokenModel ct)
持久化:ClientToken-Model
|
void |
saveClientTokenIndex(ClientTokenModel ct)
持久化:ClientToken-索引
|
void |
saveCode(CodeModel c)
持久化:Code-Model
|
void |
saveCodeIndex(CodeModel c)
持久化:Code-索引
|
void |
saveGrantScope(java.lang.String clientId,
java.lang.Object loginId,
java.lang.String scope)
持久化:用户授权记录
|
void |
savePastTokenIndex(ClientTokenModel ct)
持久化:Past-Token-索引
|
void |
saveRefreshToken(RefreshTokenModel rt)
持久化:RefreshToken-Model
|
void |
saveRefreshTokenIndex(RefreshTokenModel rt)
持久化:RefreshToken-索引
|
java.lang.String |
splicingAccessTokenIndexKey(java.lang.String clientId,
java.lang.Object loginId)
拼接key:Access-Token索引
|
java.lang.String |
splicingAccessTokenSaveKey(java.lang.String accessToken)
拼接key:Access-Token持久化
|
java.lang.String |
splicingClientTokenIndexKey(java.lang.String clientId)
拼接key:Past-Token 索引
|
java.lang.String |
splicingClientTokenSaveKey(java.lang.String clientToken)
拼接key:Client-Token持久化
|
java.lang.String |
splicingCodeIndexKey(java.lang.String clientId,
java.lang.Object loginId)
拼接key:Code索引
|
java.lang.String |
splicingCodeSaveKey(java.lang.String code)
拼接key:Code持久化
|
java.lang.String |
splicingGrantScopeKey(java.lang.String clientId,
java.lang.Object loginId)
拼接key:用户授权记录
|
java.lang.String |
splicingPastTokenIndexKey(java.lang.String clientId)
拼接key:Past-Token 索引
|
java.lang.String |
splicingRefreshTokenIndexKey(java.lang.String clientId,
java.lang.Object loginId)
拼接key:Refresh-Token索引
|
java.lang.String |
splicingRefreshTokenSaveKey(java.lang.String refreshToken)
拼接key:Refresh-Token持久化
|
public SaClientModel getClientModel(java.lang.String clientId)
clientId - 应用idpublic java.lang.String getOpenid(java.lang.String clientId,
java.lang.Object loginId)
clientId - 应用idloginId - 账号idpublic SaClientModel checkClientModel(java.lang.String clientId)
clientId - 应用idpublic AccessTokenModel checkAccessToken(java.lang.String accessToken)
accessToken - .public ClientTokenModel checkClientToken(java.lang.String clientToken)
clientToken - .public java.lang.Object getLoginIdByAccessToken(java.lang.String accessToken)
accessToken - Access-Tokenpublic void checkScope(java.lang.String accessToken,
java.lang.String... scopes)
accessToken - Access-Tokenscopes - 需要校验的权限列表public RequestAuthModel generateRequestAuth(SaRequest req, java.lang.Object loginId)
req - SaRequest对象loginId - 账号idpublic CodeModel generateCode(RequestAuthModel ra)
ra - 请求参数Modelpublic AccessTokenModel generateAccessToken(java.lang.String code)
code - 授权码Modelpublic AccessTokenModel refreshAccessToken(java.lang.String refreshToken)
refreshToken - Refresh-Token值public AccessTokenModel generateAccessToken(RequestAuthModel ra, boolean isCreateRt)
ra - 请求参数ModelisCreateRt - 是否生成对应的Refresh-Tokenpublic ClientTokenModel generateClientToken(java.lang.String clientId, java.lang.String scope)
clientId - 应用idscope - 授权范围public java.lang.String buildRedirectUri(java.lang.String redirectUri,
java.lang.String code,
java.lang.String state)
redirectUri - 下放地址code - code参数state - state参数public java.lang.String buildImplicitRedirectUri(java.lang.String redirectUri,
java.lang.String token,
java.lang.String state)
redirectUri - 下放地址token - tokenstate - state参数public void revokeAccessToken(java.lang.String accessToken)
accessToken - Access-Token值public boolean isGrant(java.lang.Object loginId,
java.lang.String clientId,
java.lang.String scope)
loginId - 账号idclientId - 应用idscope - 权限public void checkContract(java.lang.String clientId,
java.lang.String scope)
clientId - 应用idscope - 权限(多个用逗号隔开)public void checkRightUrl(java.lang.String clientId,
java.lang.String url)
clientId - 应用idurl - 指定urlpublic SaClientModel checkClientSecret(java.lang.String clientId, java.lang.String clientSecret)
clientId - 应用idclientSecret - 秘钥public CodeModel checkGainTokenParam(java.lang.String code, java.lang.String clientId, java.lang.String clientSecret, java.lang.String redirectUri)
code - 授权码clientId - 应用idclientSecret - 秘钥redirectUri - 重定向地址public RefreshTokenModel checkRefreshTokenParam(java.lang.String clientId, java.lang.String clientSecret, java.lang.String refreshToken)
clientId - 应用idclientSecret - 秘钥refreshToken - Refresh-Tokenpublic AccessTokenModel checkAccessTokenParam(java.lang.String clientId, java.lang.String clientSecret, java.lang.String accessToken)
clientId - 应用idclientSecret - 秘钥accessToken - Access-Tokenpublic AccessTokenModel converCodeToAccessToken(CodeModel cm)
cm - CodeModel对象public RefreshTokenModel converAccessTokenToRefreshToken(AccessTokenModel at)
at - .public AccessTokenModel converRefreshTokenToAccessToken(RefreshTokenModel rt)
rt - .public RefreshTokenModel converRefreshTokenToRefreshToken(RefreshTokenModel rt)
rt - .public void saveCode(CodeModel c)
c - .public void saveCodeIndex(CodeModel c)
c - .public void saveAccessToken(AccessTokenModel at)
at - .public void saveAccessTokenIndex(AccessTokenModel at)
at - .public void saveRefreshToken(RefreshTokenModel rt)
rt - .public void saveRefreshTokenIndex(RefreshTokenModel rt)
rt - .public void saveClientToken(ClientTokenModel ct)
ct - .public void saveClientTokenIndex(ClientTokenModel ct)
ct - .public void savePastTokenIndex(ClientTokenModel ct)
ct - .public void saveGrantScope(java.lang.String clientId,
java.lang.Object loginId,
java.lang.String scope)
clientId - 应用idloginId - 账号idscope - 权限列表(多个逗号隔开)public CodeModel getCode(java.lang.String code)
code - .public java.lang.String getCodeValue(java.lang.String clientId,
java.lang.Object loginId)
clientId - 应用idloginId - 账号idpublic AccessTokenModel getAccessToken(java.lang.String accessToken)
accessToken - .public java.lang.String getAccessTokenValue(java.lang.String clientId,
java.lang.Object loginId)
clientId - 应用idloginId - 账号idpublic RefreshTokenModel getRefreshToken(java.lang.String refreshToken)
refreshToken - .public java.lang.String getRefreshTokenValue(java.lang.String clientId,
java.lang.Object loginId)
clientId - 应用idloginId - 账号idpublic ClientTokenModel getClientToken(java.lang.String clientToken)
clientToken - .public java.lang.String getClientTokenValue(java.lang.String clientId)
clientId - 应用idpublic java.lang.String getPastTokenValue(java.lang.String clientId)
clientId - 应用idpublic java.lang.String getGrantScope(java.lang.String clientId,
java.lang.Object loginId)
clientId - 应用idloginId - 账号idpublic void deleteCode(java.lang.String code)
code - 值public void deleteCodeIndex(java.lang.String clientId,
java.lang.Object loginId)
clientId - 应用idloginId - 账号idpublic void deleteAccessToken(java.lang.String accessToken)
accessToken - 值public void deleteAccessTokenIndex(java.lang.String clientId,
java.lang.Object loginId)
clientId - 应用idloginId - 账号idpublic void deleteRefreshToken(java.lang.String refreshToken)
refreshToken - 值public void deleteRefreshTokenIndex(java.lang.String clientId,
java.lang.Object loginId)
clientId - 应用idloginId - 账号idpublic void deleteClientToken(java.lang.String clientToken)
clientToken - 值public void deleteClientTokenIndex(java.lang.String clientId)
clientId - 应用idpublic void deletePastTokenIndex(java.lang.String clientId)
clientId - 应用idpublic void deleteGrantScope(java.lang.String clientId,
java.lang.Object loginId)
clientId - 应用idloginId - 账号idpublic java.lang.String randomCode(java.lang.String clientId,
java.lang.Object loginId,
java.lang.String scope)
clientId - 应用idloginId - 账号idscope - 权限public java.lang.String randomAccessToken(java.lang.String clientId,
java.lang.Object loginId,
java.lang.String scope)
clientId - 应用idloginId - 账号idscope - 权限public java.lang.String randomRefreshToken(java.lang.String clientId,
java.lang.Object loginId,
java.lang.String scope)
clientId - 应用idloginId - 账号idscope - 权限public java.lang.String randomClientToken(java.lang.String clientId,
java.lang.String scope)
clientId - 应用idscope - 权限public java.lang.String splicingCodeSaveKey(java.lang.String code)
code - 授权码public java.lang.String splicingCodeIndexKey(java.lang.String clientId,
java.lang.Object loginId)
clientId - 应用idloginId - 账号idpublic java.lang.String splicingAccessTokenSaveKey(java.lang.String accessToken)
accessToken - accessTokenpublic java.lang.String splicingAccessTokenIndexKey(java.lang.String clientId,
java.lang.Object loginId)
clientId - 应用idloginId - 账号idpublic java.lang.String splicingRefreshTokenSaveKey(java.lang.String refreshToken)
refreshToken - refreshTokenpublic java.lang.String splicingRefreshTokenIndexKey(java.lang.String clientId,
java.lang.Object loginId)
clientId - 应用idloginId - 账号idpublic java.lang.String splicingClientTokenSaveKey(java.lang.String clientToken)
clientToken - clientTokenpublic java.lang.String splicingClientTokenIndexKey(java.lang.String clientId)
clientId - clientIdpublic java.lang.String splicingPastTokenIndexKey(java.lang.String clientId)
clientId - clientIdpublic java.lang.String splicingGrantScopeKey(java.lang.String clientId,
java.lang.Object loginId)
clientId - 应用idloginId - 账号idCopyright © 2021. All Rights Reserved.