Browse Source

[support] IdentityProviderのv26対応

pull/52/head
tomo0611 12 months ago
parent
commit
8724f4d496
  1. 14
      src/main/java/org/keycloak/social/discord/DiscordIdentityProvider.java

14
src/main/java/org/keycloak/social/discord/DiscordIdentityProvider.java

@ -67,11 +67,13 @@ public class DiscordIdentityProvider extends AbstractOAuth2IdentityProvider<Disc
@Override
protected BrokeredIdentityContext extractIdentityFromProfile(EventBuilder event, JsonNode profile) {
BrokeredIdentityContext user = new BrokeredIdentityContext(getJsonProperty(profile, "id"));
String id = getJsonProperty(profile, "id");
BrokeredIdentityContext user = new BrokeredIdentityContext(id, getConfig());
user.setUsername(getJsonProperty(profile, "username") + "#" + getJsonProperty(profile, "discriminator"));
user.setUsername(getJsonProperty(profile, "username"));
user.setEmail(getJsonProperty(profile, "email"));
user.setIdpConfig(getConfig());
user.setUserAttribute("profile_icon",
"https://cdn.discordapp.com/" + getJsonProperty(profile, "avatar") + ".png?size=512");
user.setIdp(this);
AbstractJsonUserAttributeMapper.storeUserProfileForMapper(user, profile, getConfig().getAlias());
@ -99,7 +101,8 @@ public class DiscordIdentityProvider extends AbstractOAuth2IdentityProvider<Disc
protected boolean isAllowedGuild(String accessToken) {
try {
JsonNode guilds = SimpleHttp.doGet(GROUP_URL, session).header("Authorization", "Bearer " + accessToken).asJson();
JsonNode guilds = SimpleHttp.doGet(GROUP_URL, session).header("Authorization", "Bearer " + accessToken)
.asJson();
Set<String> allowedGuilds = getConfig().getAllowedGuildsAsSet();
for (JsonNode guild : guilds) {
String guildId = getJsonProperty(guild, "id");
@ -109,7 +112,8 @@ public class DiscordIdentityProvider extends AbstractOAuth2IdentityProvider<Disc
}
return false;
} catch (Exception e) {
throw new IdentityBrokerException("Could not obtain guilds the current user is a member of from discord.", e);
throw new IdentityBrokerException("Could not obtain guilds the current user is a member of from discord.",
e);
}
}

Loading…
Cancel
Save