Example usage for com.google.api.client.googleapis.auth.oauth2 GoogleCredential getServiceAccountId

List of usage examples for com.google.api.client.googleapis.auth.oauth2 GoogleCredential getServiceAccountId

Introduction

In this page you can find the example usage for com.google.api.client.googleapis.auth.oauth2 GoogleCredential getServiceAccountId.

Prototype

public final String getServiceAccountId() 

Source Link

Document

Returns the service account ID (typically an e-mail address) or null if not using the service account flow.

Usage

From source file:com.klepra.jdbcpractice.GoogleApiClient.java

public static void main(String[] args) {

    GoogleCredential credential = new GoogleCredential().setAccessToken("");
    System.out.println(credential.getServiceAccountId());

}

From source file:com.netflix.spinnaker.halyard.backup.kms.v1.google.GoogleKms.java

License:Apache License

private static CryptoKey ensureCryptoKeyExists(CloudKMS cloudKms, GoogleCredential credential, String keyRingId,
        String cryptoKeyId) {/*from  w  w w  .ja  va 2  s . c  o m*/
    CryptoKey cryptoKey;
    try {
        cryptoKey = cloudKms.projects().locations().keyRings().cryptoKeys().get(cryptoKeyId).execute();
    } catch (GoogleJsonResponseException e) {
        if (e.getStatusCode() == 404) {
            cryptoKey = null;
        } else {
            throw new HalException(Problem.Severity.FATAL,
                    "Unexpected error retrieving crypto key: " + e.getMessage(), e);
        }
    } catch (IOException e) {
        throw new HalException(Problem.Severity.FATAL,
                "Unexpected error retrieving crypto key: " + e.getMessage(), e);
    }

    if (cryptoKey == null) {
        String cryptoKeyName = cryptoKeyId.substring(cryptoKeyId.lastIndexOf('/') + 1);
        log.info("Creating a new crypto key " + cryptoKeyName);
        String user = "serviceAccount:" + credential.getServiceAccountId();
        cryptoKey = createCryptoKey(cloudKms, keyRingId, cryptoKeyName, user);
    }

    return cryptoKey;
}

From source file:com.spotify.styx.client.auth.GoogleIdTokenAuth.java

License:Apache License

private String getToken(String targetAudience, GoogleCredential credential)
        throws IOException, GeneralSecurityException {
    if (credential.getServiceAccountId() != null) {
        // is a service account
        return getServiceAccountToken(credential, targetAudience);
    } else {/*  w  ww .  j a  v a  2s  .  c o m*/
        // is a user
        return getUserToken(credential);
    }
}

From source file:com.spotify.styx.client.auth.GoogleIdTokenAuth.java

License:Apache License

private String getServiceAccountToken(GoogleCredential credential, String targetAudience)
        throws IOException, GeneralSecurityException {
    final TokenRequest request = new TokenRequest(this.httpTransport, JSON_FACTORY,
            new GenericUrl(credential.getTokenServerEncodedUrl()),
            "urn:ietf:params:oauth:grant-type:jwt-bearer");
    final Header header = jwtHeader();
    final Payload payload = jwtPayload(targetAudience, credential.getServiceAccountId(),
            credential.getTokenServerEncodedUrl());
    request.put("assertion", JsonWebSignature.signUsingRsaSha256(credential.getServiceAccountPrivateKey(),
            JSON_FACTORY, header, payload));
    final TokenResponse response = request.execute();
    return (String) response.get("id_token");
}

From source file:org.silverpeas.core.admin.domain.driver.googledriver.GoogleDirectoryRequester.java

License:Open Source License

/**
 * Creates an authorized Credential object.
 * @param httpTransport the HTTP transport.
 * @return An authorized Credential object.
 * @throws IOException If the credentials.json file cannot be found.
 *///ww w  . j av a2  s.c  o  m
private Credential getServiceAccountCredentials(final HttpTransport httpTransport) throws IOException {
    final GoogleCredential credential;
    try (InputStream is = new FileInputStream(jsonKeyPath)) {
        credential = GoogleCredential.fromStream(is);
    }
    return new GoogleCredential.Builder().setTransport(httpTransport).setJsonFactory(JSON_FACTORY)
            .setServiceAccountUser(serviceAccountUser).setServiceAccountId(credential.getServiceAccountId())
            .setServiceAccountScopes(SCOPES)
            .setServiceAccountPrivateKey(credential.getServiceAccountPrivateKey())
            .setServiceAccountPrivateKeyId(credential.getServiceAccountPrivateKeyId())
            .setTokenServerEncodedUrl(credential.getTokenServerEncodedUrl()).build();
}