blob: 70ea0bda71a52c396ef55898a3cdefa427a8092b (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
|
diff --git a/src/main/java/com/googlesource/gerrit/plugins/oauth/CasApi.java b/src/main/java/com/googlesource/gerrit/plugins/oauth/CasApi.java
index 450549f..27310cd 100644
--- a/src/main/java/com/googlesource/gerrit/plugins/oauth/CasApi.java
+++ b/src/main/java/com/googlesource/gerrit/plugins/oauth/CasApi.java
@@ -15,7 +15,7 @@
package com.googlesource.gerrit.plugins.oauth;
import com.github.scribejava.core.builder.api.DefaultApi20;
-import com.github.scribejava.core.extractors.OAuth2AccessTokenExtractor;
+import com.github.scribejava.core.extractors.OAuth2AccessTokenJsonExtractor;
import com.github.scribejava.core.extractors.TokenExtractor;
import com.github.scribejava.core.model.OAuth2AccessToken;
import com.github.scribejava.core.oauth2.bearersignature.BearerSignature;
@@ -47,6 +47,6 @@ public class CasApi extends DefaultApi20 {
@Override
public TokenExtractor<OAuth2AccessToken> getAccessTokenExtractor() {
- return OAuth2AccessTokenExtractor.instance();
+ return OAuth2AccessTokenJsonExtractor.instance();
}
}
diff --git a/src/main/java/com/googlesource/gerrit/plugins/oauth/CasOAuthService.java b/src/main/java/com/googlesource/gerrit/plugins/oauth/CasOAuthService.java
index 5f3e4a1..5594b26 100644
--- a/src/main/java/com/googlesource/gerrit/plugins/oauth/CasOAuthService.java
+++ b/src/main/java/com/googlesource/gerrit/plugins/oauth/CasOAuthService.java
@@ -135,6 +135,15 @@ class CasOAuthService implements OAuthServiceProvider {
property = getStringElement(obj, "login");
if (property != null) login = property;
}
+ } else if (attrListJson.isJsonObject()) {
+ JsonObject obj = attrListJson.getAsJsonObject();
+
+ String property = getStringElement(obj, "mail");
+ if (property != null) email = property;
+ property = getStringElement(obj, "displayName");
+ if (property != null) name = property;
+ property = getStringElement(obj, "uid");
+ if (property != null) login = property;
}
return new OAuthUserInfo(
|