use of io.vertx.reactivex.ext.auth.oauth2.AccessToken in project google-auth-library-java by google.
the class AppEngineCredentialsTest method refreshAccessToken_sameAs.
@Test
public void refreshAccessToken_sameAs() throws IOException {
final String expectedAccessToken = "ExpectedAccessToken";
MockAppIdentityService appIdentity = new MockAppIdentityService();
appIdentity.setAccessTokenText(expectedAccessToken);
appIdentity.setExpiration(new Date(System.currentTimeMillis() + 60L * 60L * 100L));
AppEngineCredentials credentials = AppEngineCredentials.newBuilder().setScopes(SCOPES).setAppIdentityService(appIdentity).build();
AccessToken accessToken = credentials.refreshAccessToken();
assertEquals(appIdentity.getAccessTokenText(), accessToken.getTokenValue());
assertEquals(appIdentity.getExpiration(), accessToken.getExpirationTime());
}
use of io.vertx.reactivex.ext.auth.oauth2.AccessToken in project google-auth-library-java by google.
the class AppEngineCredentials method refreshAccessToken.
/**
* Refresh the access token by getting it from the App Identity service
*/
@Override
public AccessToken refreshAccessToken() throws IOException {
if (createScopedRequired()) {
throw new IOException("AppEngineCredentials requires createScoped call before use.");
}
GetAccessTokenResult accessTokenResponse = appIdentityService.getAccessToken(scopes);
String accessToken = accessTokenResponse.getAccessToken();
Date expirationTime = accessTokenResponse.getExpirationTime();
return new AccessToken(accessToken, expirationTime);
}
use of io.vertx.reactivex.ext.auth.oauth2.AccessToken in project api-framework by vinscom.
the class LoadUserFromAccessTokenRouteBuillder method handle.
public void handle(RoutingContext pRoutingContext) {
if (pRoutingContext.user() == null) {
String access_token = pRoutingContext.request().getHeader(HttpHeaders.AUTHORIZATION);
if (!Strings.isNullOrEmpty(access_token)) {
OAuth2AuthProviderImpl provider = (OAuth2AuthProviderImpl) getOAuth2Auth().getDelegate();
JsonObject accessToken = new JsonObject().put("access_token", access_token.split(" ")[1]);
try {
OAuth2TokenImpl token = new OAuth2TokenImpl(provider, accessToken);
pRoutingContext.setUser(new AccessToken(token));
} catch (RuntimeException e) {
getLog().error(e);
pRoutingContext.fail(401);
return;
}
}
}
pRoutingContext.next();
}
use of io.vertx.reactivex.ext.auth.oauth2.AccessToken in project vertx-auth by vert-x3.
the class OAuth2IntrospectTest method introspectAccessTokenKeyCloakWay.
@Test
public void introspectAccessTokenKeyCloakWay() {
config = oauthIntrospect;
fixture = fixtureKeycloak;
oauth2.introspectToken(token, res -> {
if (res.failed()) {
fail(res.cause().getMessage());
} else {
AccessToken token = res.result();
assertNotNull(token);
JsonObject principal = token.principal();
assertTrue(principal.getBoolean("active"));
testComplete();
}
});
await();
}
use of io.vertx.reactivex.ext.auth.oauth2.AccessToken in project vertx-auth by vert-x3.
the class OAuth2IntrospectTest method introspectAccessTokenGoogleWay.
@Test
public void introspectAccessTokenGoogleWay() {
config = oauthIntrospect;
fixture = fixtureGoogle;
oauth2.introspectToken(token, res -> {
if (res.failed()) {
fail(res.cause().getMessage());
} else {
AccessToken token = res.result();
assertNotNull(token);
// make a copy because later we need to original data
JsonObject principal = token.principal().copy();
// clean time specific value
principal.remove("expires_at");
principal.remove("access_token");
assertEquals(fixtureGoogle.getMap(), principal.getMap());
token.isAuthorized("profile", res0 -> {
if (res0.failed()) {
fail(res0.cause().getMessage());
} else {
if (res0.result()) {
// Issue #142
// the test is a replay of the same test so all checks have
// been done above.
// the replay shows that the api can be used from the user object
// directly too
token.introspect(v -> {
if (v.failed()) {
fail(v.cause());
} else {
testComplete();
}
});
} else {
fail("Should be allowed");
}
}
});
}
});
await();
}
Aggregations