本文整理汇总了Java中com.google.api.client.auth.oauth2.TokenRequest类的典型用法代码示例。如果您正苦于以下问题:Java TokenRequest类的具体用法?Java TokenRequest怎么用?Java TokenRequest使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
TokenRequest类属于com.google.api.client.auth.oauth2包,在下文中一共展示了TokenRequest类的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。
示例1: getServiceAccountToken
import com.google.api.client.auth.oauth2.TokenRequest; //导入依赖的package包/类
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");
}
开发者ID:spotify,项目名称:styx,代码行数:15,代码来源:GoogleIdTokenAuth.java
示例2: getUserToken
import com.google.api.client.auth.oauth2.TokenRequest; //导入依赖的package包/类
private String getUserToken(GoogleCredential credential) throws IOException {
final TokenRequest request = new RefreshTokenRequest(
this.httpTransport, JSON_FACTORY,
new GenericUrl(credential.getTokenServerEncodedUrl()),
credential.getRefreshToken())
.setClientAuthentication(credential.getClientAuthentication())
.setRequestInitializer(credential);
final TokenResponse response = request.execute();
return (String) response.get("id_token");
}
开发者ID:spotify,项目名称:styx,代码行数:11,代码来源:GoogleIdTokenAuth.java
示例3: executeRefreshToken
import com.google.api.client.auth.oauth2.TokenRequest; //导入依赖的package包/类
@Override
protected TokenResponse executeRefreshToken() throws IOException {
if (getServiceAccountPrivateKey() == null) {
return super.executeRefreshToken();
}
// service accounts: no refresh token; instead use private key to request new access token
JsonWebSignature.Header header = new JsonWebSignature.Header();
header.setAlgorithm("RS256");
header.setType("JWT");
header.setKeyId(getServiceAccountPrivateKeyId());
JsonWebToken.Payload payload = new JsonWebToken.Payload();
long currentTime = getClock().currentTimeMillis();
payload.setIssuer(getServiceAccountId());
payload.setAudience(getTokenServerEncodedUrl());
payload.setIssuedAtTimeSeconds(currentTime / 1000);
payload.setExpirationTimeSeconds(currentTime / 1000 + DEFAULT_TOKEN_EXPIRATION_SECONDS);
payload.setSubject(getServiceAccountUser());
payload.put("scope", Joiner.on(' ').join(getServiceAccountScopes()));
try {
String assertion = JsonWebSignature.signUsingRsaSha256(
getServiceAccountPrivateKey(), getJsonFactory(), header, payload);
TokenRequest request = new TokenRequest(
getTransport(), getJsonFactory(), new GenericUrl(getTokenServerEncodedUrl()),
"urn:ietf:params:oauth:grant-type:jwt-bearer");
request.put("assertion", assertion);
request.setRequestInitializer(getRequestInitializer());
return request.execute();
} catch (GeneralSecurityException exception) {
IOException e = new IOException();
e.initCause(exception);
throw e;
}
}
开发者ID:GoogleCloudPlatform,项目名称:bigdata-interop,代码行数:34,代码来源:CredentialFactory.java
注:本文中的com.google.api.client.auth.oauth2.TokenRequest类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论