Return-Path: X-Original-To: archive-asf-public-internal@cust-asf2.ponee.io Delivered-To: archive-asf-public-internal@cust-asf2.ponee.io Received: from cust-asf.ponee.io (cust-asf.ponee.io [163.172.22.183]) by cust-asf2.ponee.io (Postfix) with ESMTP id 07798200B95 for ; Tue, 27 Sep 2016 13:37:06 +0200 (CEST) Received: by cust-asf.ponee.io (Postfix) id 04612160AD3; Tue, 27 Sep 2016 11:37:06 +0000 (UTC) Delivered-To: archive-asf-public@cust-asf.ponee.io Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by cust-asf.ponee.io (Postfix) with SMTP id 4A8A2160AD2 for ; Tue, 27 Sep 2016 13:37:05 +0200 (CEST) Received: (qmail 92298 invoked by uid 500); 27 Sep 2016 11:37:04 -0000 Mailing-List: contact commits-help@cxf.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@cxf.apache.org Delivered-To: mailing list commits@cxf.apache.org Received: (qmail 92289 invoked by uid 99); 27 Sep 2016 11:37:04 -0000 Received: from git1-us-west.apache.org (HELO git1-us-west.apache.org) (140.211.11.23) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 27 Sep 2016 11:37:04 +0000 Received: by git1-us-west.apache.org (ASF Mail Server at git1-us-west.apache.org, from userid 33) id 56D8EDFD4C; Tue, 27 Sep 2016 11:37:04 +0000 (UTC) Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit From: sergeyb@apache.org To: commits@cxf.apache.org Message-Id: X-Mailer: ASF-Git Admin Mailer Subject: cxf git commit: Minor update to the dynamic reg service code Date: Tue, 27 Sep 2016 11:37:04 +0000 (UTC) archived-at: Tue, 27 Sep 2016 11:37:06 -0000 Repository: cxf Updated Branches: refs/heads/3.1.x-fixes a256b35f6 -> f54b27f89 Minor update to the dynamic reg service code Project: http://git-wip-us.apache.org/repos/asf/cxf/repo Commit: http://git-wip-us.apache.org/repos/asf/cxf/commit/f54b27f8 Tree: http://git-wip-us.apache.org/repos/asf/cxf/tree/f54b27f8 Diff: http://git-wip-us.apache.org/repos/asf/cxf/diff/f54b27f8 Branch: refs/heads/3.1.x-fixes Commit: f54b27f89a8f092b2f0462bee6ea58bc77153455 Parents: a256b35 Author: Sergey Beryozkin Authored: Tue Sep 27 12:35:59 2016 +0100 Committer: Sergey Beryozkin Committed: Tue Sep 27 12:36:51 2016 +0100 ---------------------------------------------------------------------- .../services/DynamicRegistrationService.java | 17 +++++++++++++++-- .../cxf/rs/security/oauth2/utils/OAuthUtils.java | 11 +++++++++++ .../security/oidc/OIDCDynamicRegistrationTest.java | 14 +++++++------- 3 files changed, 33 insertions(+), 9 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/cxf/blob/f54b27f8/rt/rs/security/oauth-parent/oauth2/src/main/java/org/apache/cxf/rs/security/oauth2/services/DynamicRegistrationService.java ---------------------------------------------------------------------- diff --git a/rt/rs/security/oauth-parent/oauth2/src/main/java/org/apache/cxf/rs/security/oauth2/services/DynamicRegistrationService.java b/rt/rs/security/oauth-parent/oauth2/src/main/java/org/apache/cxf/rs/security/oauth2/services/DynamicRegistrationService.java index e4c252c..ab6cb46 100644 --- a/rt/rs/security/oauth-parent/oauth2/src/main/java/org/apache/cxf/rs/security/oauth2/services/DynamicRegistrationService.java +++ b/rt/rs/security/oauth-parent/oauth2/src/main/java/org/apache/cxf/rs/security/oauth2/services/DynamicRegistrationService.java @@ -135,8 +135,21 @@ public class DynamicRegistrationService extends AbstractOAuthService { return fromClientToClientRegistration(client); } - protected ClientRegistration fromClientToClientRegistration(Client client) { - return new ClientRegistration(); + protected ClientRegistration fromClientToClientRegistration(Client c) { + ClientRegistration reg = new ClientRegistration(); + reg.setClientName(c.getApplicationName()); + reg.setGrantTypes(c.getAllowedGrantTypes()); + reg.setApplicationType(c.isConfidential() ? "web" : "native"); + reg.setRedirectUris(c.getRedirectUris()); + reg.setScope(OAuthUtils.convertListOfScopesToString(c.getRegisteredScopes())); + if (c.getApplicationWebUri() != null) { + reg.setClientUri(c.getApplicationWebUri()); + } + if (c.getApplicationLogoUri() != null) { + reg.setLogoUri(c.getApplicationLogoUri()); + } + //etc + return reg; } protected Client readClient(String clientId) { http://git-wip-us.apache.org/repos/asf/cxf/blob/f54b27f8/rt/rs/security/oauth-parent/oauth2/src/main/java/org/apache/cxf/rs/security/oauth2/utils/OAuthUtils.java ---------------------------------------------------------------------- diff --git a/rt/rs/security/oauth-parent/oauth2/src/main/java/org/apache/cxf/rs/security/oauth2/utils/OAuthUtils.java b/rt/rs/security/oauth-parent/oauth2/src/main/java/org/apache/cxf/rs/security/oauth2/utils/OAuthUtils.java index d08969b..ab2e88c 100644 --- a/rt/rs/security/oauth-parent/oauth2/src/main/java/org/apache/cxf/rs/security/oauth2/utils/OAuthUtils.java +++ b/rt/rs/security/oauth-parent/oauth2/src/main/java/org/apache/cxf/rs/security/oauth2/utils/OAuthUtils.java @@ -344,4 +344,15 @@ public final class OAuthUtils { return sigAlgo; } } + + public static String convertListOfScopesToString(List registeredScopes) { + StringBuilder sb = new StringBuilder(); + for (String s : registeredScopes) { + if (sb.length() > 0) { + sb.append(", "); + } + sb.append(s); + } + return sb.toString(); + } } http://git-wip-us.apache.org/repos/asf/cxf/blob/f54b27f8/systests/rs-security/src/test/java/org/apache/cxf/systest/jaxrs/security/oidc/OIDCDynamicRegistrationTest.java ---------------------------------------------------------------------- diff --git a/systests/rs-security/src/test/java/org/apache/cxf/systest/jaxrs/security/oidc/OIDCDynamicRegistrationTest.java b/systests/rs-security/src/test/java/org/apache/cxf/systest/jaxrs/security/oidc/OIDCDynamicRegistrationTest.java index 74c6f97..f85a181 100644 --- a/systests/rs-security/src/test/java/org/apache/cxf/systest/jaxrs/security/oidc/OIDCDynamicRegistrationTest.java +++ b/systests/rs-security/src/test/java/org/apache/cxf/systest/jaxrs/security/oidc/OIDCDynamicRegistrationTest.java @@ -105,13 +105,13 @@ public class OIDCDynamicRegistrationTest extends AbstractBusClientServerTestBase wc.authorization(new ClientAccessToken("Bearer", regAccessToken)); ClientRegistration clientRegResp = wc.get(ClientRegistration.class); assertNotNull(clientRegResp); -// assertEquals("web", clientRegResp.getApplicationType()); -// assertEquals("dynamic_client", clientRegResp.getClientName()); -// assertEquals("openid", clientRegResp.getScope()); -// assertEquals(Collections.singletonList("authorization_code"), -// clientRegResp.getGrantTypes()); -// assertEquals(Collections.singletonList("https://a/b/c"), -// clientRegResp.getRedirectUris()); + assertEquals("web", clientRegResp.getApplicationType()); + assertEquals("dynamic_client", clientRegResp.getClientName()); + assertEquals("openid", clientRegResp.getScope()); + assertEquals(Collections.singletonList("authorization_code"), + clientRegResp.getGrantTypes()); + assertEquals(Collections.singletonList("https://a/b/c"), + clientRegResp.getRedirectUris()); assertEquals(200, wc.delete().getStatus()); }