io.bdrc.auth.TestTokenBuilder Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of bdrc-auth-lib Show documentation
Show all versions of bdrc-auth-lib Show documentation
BDRC authorization library based on auth0
package io.bdrc.auth;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.util.Calendar;
import java.util.Properties;
import com.auth0.jwt.JWT;
import com.auth0.jwt.JWTVerifier;
import com.auth0.jwt.algorithms.Algorithm;
import com.auth0.jwt.exceptions.JWTCreationException;
import com.auth0.jwt.interfaces.DecodedJWT;
public class TestTokenBuilder {
public static String createTestToken() throws IOException {
InputStream is = new FileInputStream("/etc/buda/iiifserv/iiifservTest.properties");
Properties props = new Properties();
props.load(is);
AuthProps.init(props);
String token = null;
try {
Calendar cal = Calendar.getInstance();
cal.set(2025, 0, 1);
Algorithm algorithm = Algorithm.HMAC256("secret");
token = JWT.create().withIssuer(AuthProps.getProperty("issuer")).withAudience(AuthProps.getProperty("audience"))
.withClaim("sub", "auth0|5be992d9d7ece87f159c8bed").withClaim("azp", "G0AjmCKspNngJsTtRnHaAUCD44ZxwoMJ")
.withExpiresAt(cal.getTime()).sign(algorithm);
} catch (JWTCreationException exception) {
// Invalid Signing configuration / Couldn't convert Claims.
}
return token;
}
public static void decode(String token) {
JWTVerifier verifier = JWT.require(Algorithm.HMAC256("secret")).build();
DecodedJWT jwt = verifier.verify(token);
}
public static void main(String[] args) throws IOException {
String token = TestTokenBuilder.createTestToken();
System.out.println(token);
TestTokenBuilder.decode(token);
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy