Module bus.auth

Class AbstractDingtalkProvider

java.lang.Object
org.miaixz.bus.auth.nimble.AbstractProvider
org.miaixz.bus.auth.nimble.dingtalk.AbstractDingtalkProvider
All Implemented Interfaces:
Provider, org.miaixz.bus.core.Provider
Direct Known Subclasses:
DingTalkAccountProvider, DingTalkProvider

public abstract class AbstractDingtalkProvider extends AbstractProvider
钉钉 登录抽象类 负责处理使用钉钉账号登录第三方网站和扫码登录第三方网站两种钉钉的登录方式
Since:
Java 17+
Author:
Kimi Liu
  • Constructor Details

    • AbstractDingtalkProvider

      public AbstractDingtalkProvider(Context context, Complex complex)
    • AbstractDingtalkProvider

      public AbstractDingtalkProvider(Context context, Complex complex, org.miaixz.bus.cache.metric.ExtendCache cache)
  • Method Details

    • sign

      public static String sign(String secretKey, String timestamp)
      钉钉请求的签名
      Parameters:
      secretKey - 平台应用的授权密钥
      timestamp - 时间戳
      Returns:
      Signature
    • getAccessToken

      public AccToken getAccessToken(Callback callback)
      Description copied from interface: Provider
      获取access token
      Parameters:
      callback - 授权成功后的回调参数
      Returns:
      token
      See Also:
    • getUserInfo

      public Material getUserInfo(AccToken accToken)
      Description copied from interface: Provider
      使用token换取用户信息
      Parameters:
      accToken - token信息
      Returns:
      用户信息
      See Also:
    • authorize

      public String authorize(String state)
      返回带state参数的授权url,授权回调时会带上这个state
      Specified by:
      authorize in interface Provider
      Overrides:
      authorize in class AbstractProvider
      Parameters:
      state - state 验证授权流程的参数,可以防止csrf
      Returns:
      返回授权地址
    • userInfoUrl

      protected String userInfoUrl(AccToken accToken)
      返回获取userInfo的url
      Overrides:
      userInfoUrl in class AbstractProvider
      Parameters:
      accToken - 用户授权后的token
      Returns:
      返回获取userInfo的url