Return-Path: X-Original-To: apmail-cxf-commits-archive@www.apache.org Delivered-To: apmail-cxf-commits-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 9AAAF18401 for ; Fri, 19 Jun 2015 15:24:40 +0000 (UTC) Received: (qmail 75898 invoked by uid 500); 19 Jun 2015 15:24:40 -0000 Delivered-To: apmail-cxf-commits-archive@cxf.apache.org Received: (qmail 75820 invoked by uid 500); 19 Jun 2015 15:24:40 -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 75809 invoked by uid 99); 19 Jun 2015 15:24:40 -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; Fri, 19 Jun 2015 15:24:40 +0000 Received: by git1-us-west.apache.org (ASF Mail Server at git1-us-west.apache.org, from userid 33) id 5167BE041E; Fri, 19 Jun 2015 15:24:40 +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: <0a1132f3c3eb4a14b76466cdede4759d@git.apache.org> X-Mailer: ASF-Git Admin Mailer Subject: cxf git commit: Fixing Jwt Grant Date: Fri, 19 Jun 2015 15:24:40 +0000 (UTC) Repository: cxf Updated Branches: refs/heads/master 785955e8a -> 72f81630f Fixing Jwt Grant Project: http://git-wip-us.apache.org/repos/asf/cxf/repo Commit: http://git-wip-us.apache.org/repos/asf/cxf/commit/72f81630 Tree: http://git-wip-us.apache.org/repos/asf/cxf/tree/72f81630 Diff: http://git-wip-us.apache.org/repos/asf/cxf/diff/72f81630 Branch: refs/heads/master Commit: 72f81630fba3c74d03e99e724f03c2cd07e0d3dc Parents: 785955e Author: Sergey Beryozkin Authored: Fri Jun 19 16:24:22 2015 +0100 Committer: Sergey Beryozkin Committed: Fri Jun 19 16:24:22 2015 +0100 ---------------------------------------------------------------------- .../json/JsonMapObjectReaderWriter.java | 9 ++++++++- .../oauth2/grants/jwt/JwtBearerGrant.java | 6 +++--- .../provider/JoseSessionTokenProvider.java | 20 +++++++++++++++----- 3 files changed, 26 insertions(+), 9 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/cxf/blob/72f81630/rt/rs/extensions/providers/src/main/java/org/apache/cxf/jaxrs/provider/json/JsonMapObjectReaderWriter.java ---------------------------------------------------------------------- diff --git a/rt/rs/extensions/providers/src/main/java/org/apache/cxf/jaxrs/provider/json/JsonMapObjectReaderWriter.java b/rt/rs/extensions/providers/src/main/java/org/apache/cxf/jaxrs/provider/json/JsonMapObjectReaderWriter.java index 827d266..e7cfd61 100644 --- a/rt/rs/extensions/providers/src/main/java/org/apache/cxf/jaxrs/provider/json/JsonMapObjectReaderWriter.java +++ b/rt/rs/extensions/providers/src/main/java/org/apache/cxf/jaxrs/provider/json/JsonMapObjectReaderWriter.java @@ -19,6 +19,7 @@ package org.apache.cxf.jaxrs.provider.json; import java.io.IOException; +import java.io.InputStream; import java.io.OutputStream; import java.util.Arrays; import java.util.Collection; @@ -29,6 +30,7 @@ import java.util.List; import java.util.Map; import org.apache.cxf.common.util.StringUtils; +import org.apache.cxf.helpers.IOUtils; @@ -123,6 +125,9 @@ public class JsonMapObjectReaderWriter { out.append("\r\n "); } } + public JsonMapObject fromJsonToJsonObject(InputStream is) throws IOException { + return fromJsonToJsonObject(IOUtils.toString(is)); + } public JsonMapObject fromJsonToJsonObject(String json) { JsonMapObject obj = new JsonMapObject(); fromJson(obj, json); @@ -133,7 +138,9 @@ public class JsonMapObjectReaderWriter { JsonObjectSettable settable = new JsonObjectSettable(obj); readJsonObjectAsSettable(settable, theJson.substring(1, theJson.length() - 1)); } - + public Map fromJson(InputStream is) throws IOException { + return fromJson(IOUtils.toString(is)); + } public Map fromJson(String json) { String theJson = json.trim(); MapSettable nextMap = new MapSettable(); http://git-wip-us.apache.org/repos/asf/cxf/blob/72f81630/rt/rs/security/oauth-parent/oauth2/src/main/java/org/apache/cxf/rs/security/oauth2/grants/jwt/JwtBearerGrant.java ---------------------------------------------------------------------- diff --git a/rt/rs/security/oauth-parent/oauth2/src/main/java/org/apache/cxf/rs/security/oauth2/grants/jwt/JwtBearerGrant.java b/rt/rs/security/oauth-parent/oauth2/src/main/java/org/apache/cxf/rs/security/oauth2/grants/jwt/JwtBearerGrant.java index a528705..f25942a 100644 --- a/rt/rs/security/oauth-parent/oauth2/src/main/java/org/apache/cxf/rs/security/oauth2/grants/jwt/JwtBearerGrant.java +++ b/rt/rs/security/oauth-parent/oauth2/src/main/java/org/apache/cxf/rs/security/oauth2/grants/jwt/JwtBearerGrant.java @@ -24,15 +24,15 @@ public class JwtBearerGrant extends AbstractJwtBearerGrant { private static final long serialVersionUID = -7296527609343431294L; public JwtBearerGrant(String assertion) { - this(assertion, false); + this(assertion, true); } public JwtBearerGrant(String assertion, boolean encoded) { - this(assertion, false, null); + this(assertion, encoded, null); } public JwtBearerGrant(String assertion, String scope) { - this(assertion, false, scope); + this(assertion, true, scope); } public JwtBearerGrant(String assertion, boolean encoded, String scope) { http://git-wip-us.apache.org/repos/asf/cxf/blob/72f81630/rt/rs/security/oauth-parent/oauth2/src/main/java/org/apache/cxf/rs/security/oauth2/provider/JoseSessionTokenProvider.java ---------------------------------------------------------------------- diff --git a/rt/rs/security/oauth-parent/oauth2/src/main/java/org/apache/cxf/rs/security/oauth2/provider/JoseSessionTokenProvider.java b/rt/rs/security/oauth-parent/oauth2/src/main/java/org/apache/cxf/rs/security/oauth2/provider/JoseSessionTokenProvider.java index e9cf678..9ef260c 100644 --- a/rt/rs/security/oauth-parent/oauth2/src/main/java/org/apache/cxf/rs/security/oauth2/provider/JoseSessionTokenProvider.java +++ b/rt/rs/security/oauth-parent/oauth2/src/main/java/org/apache/cxf/rs/security/oauth2/provider/JoseSessionTokenProvider.java @@ -139,11 +139,21 @@ public class JoseSessionTokenProvider implements SessionAuthenticityTokenProvide String[] parts = ModelEncryptionSupport.getParts(stateString); OAuthRedirectionState state = new OAuthRedirectionState(); state.setClientId(parts[0]); - state.setAudience(parts[1]); - state.setClientCodeChallenge(parts[2]); - state.setState(parts[3]); - state.setProposedScope(parts[4]); - state.setRedirectUri(parts[5]); + if (!StringUtils.isEmpty(parts[1])) { + state.setAudience(parts[1]); + } + if (!StringUtils.isEmpty(parts[2])) { + state.setClientCodeChallenge(parts[2]); + } + if (!StringUtils.isEmpty(parts[3])) { + state.setState(parts[3]); + } + if (!StringUtils.isEmpty(parts[4])) { + state.setProposedScope(parts[4]); + } + if (!StringUtils.isEmpty(parts[5])) { + state.setRedirectUri(parts[5]); + } return state; } protected String convertStateToString(OAuthRedirectionState secData) {