类 NacosSignatureAlgorithm


  • public final class NacosSignatureAlgorithm
    extends java.lang.Object
    SignAlgorithm.
    作者:
    Weizhan▪Yun
    • 字段详细资料

      • JWT_SEPERATOR

        private static final java.lang.String JWT_SEPERATOR
        另请参阅:
        常量字段值
      • HEADER_POSITION

        private static final int HEADER_POSITION
        另请参阅:
        常量字段值
      • PAYLOAD_POSITION

        private static final int PAYLOAD_POSITION
        另请参阅:
        常量字段值
      • SIGNATURE_POSITION

        private static final int SIGNATURE_POSITION
        另请参阅:
        常量字段值
      • JWT_PARTS

        private static final int JWT_PARTS
        另请参阅:
        常量字段值
      • HS256_JWT_HEADER

        private static final java.lang.String HS256_JWT_HEADER
        另请参阅:
        常量字段值
      • HS384_JWT_HEADER

        private static final java.lang.String HS384_JWT_HEADER
        另请参阅:
        常量字段值
      • HS512_JWT_HEADER

        private static final java.lang.String HS512_JWT_HEADER
        另请参阅:
        常量字段值
      • URL_BASE64_ENCODER

        private static final java.util.Base64.Encoder URL_BASE64_ENCODER
      • URL_BASE64_DECODER

        private static final java.util.Base64.Decoder URL_BASE64_DECODER
      • algorithm

        private final java.lang.String algorithm
      • jcaName

        private final java.lang.String jcaName
      • header

        private final java.lang.String header
    • 构造器详细资料

      • NacosSignatureAlgorithm

        private NacosSignatureAlgorithm​(java.lang.String alg,
                                        java.lang.String jcaName,
                                        java.lang.String header)
    • 方法详细资料

      • verify

        public static NacosUser verify​(java.lang.String jwt,
                                       java.security.Key key)
                                throws com.alibaba.nacos.plugin.auth.exception.AccessException
        verify jwt.
        参数:
        jwt - complete jwt string
        key - for signature
        返回:
        object for payload
        抛出:
        com.alibaba.nacos.plugin.auth.exception.AccessException - access exception
      • verify

        public NacosUser verify​(java.lang.String header,
                                java.lang.String payload,
                                java.lang.String signature,
                                java.security.Key key)
                         throws com.alibaba.nacos.plugin.auth.exception.AccessException
        verify jwt.
        参数:
        header - header of jwt
        payload - payload of jwt
        signature - signature of jwt
        key - for signature
        返回:
        object for payload
        抛出:
        com.alibaba.nacos.plugin.auth.exception.AccessException - access exception
      • getExpiredTimeInSeconds

        public static long getExpiredTimeInSeconds​(java.lang.String jwt,
                                                   java.security.Key key)
                                            throws com.alibaba.nacos.plugin.auth.exception.AccessException
        get jwt expire time in seconds.
        参数:
        jwt - complete jwt string
        key - for signature
        返回:
        expire time in seconds
        抛出:
        com.alibaba.nacos.plugin.auth.exception.AccessException - access exception
      • getExpireTimeInSeconds

        public long getExpireTimeInSeconds​(java.lang.String header,
                                           java.lang.String payload,
                                           java.lang.String signature,
                                           java.security.Key key)
                                    throws com.alibaba.nacos.plugin.auth.exception.AccessException
        get jwt expire time in seconds.
        参数:
        header - header of jwt
        payload - payload of jwt
        signature - signature of jwt
        key - for signature
        返回:
        expire time in seconds
        抛出:
        com.alibaba.nacos.plugin.auth.exception.AccessException - access exception
      • sign

        java.lang.String sign​(NacosJwtPayload nacosJwtPayload,
                              java.security.Key key)
      • getMacInstance

        private javax.crypto.Mac getMacInstance​(java.security.Key key)
      • getAlgorithm

        public java.lang.String getAlgorithm()
      • getJcaName

        public java.lang.String getJcaName()
      • getHeader

        public java.lang.String getHeader()