Package com.nimbusds.oauth2.sdk.auth

Examples of com.nimbusds.oauth2.sdk.auth.JWTAuthentication


   
    // Parse required claims
    Issuer iss = new Issuer(JSONObjectUtils.getString(jsonObject, "iss"));
    Subject sub = new Subject(JSONObjectUtils.getString(jsonObject, "sub"));

    Audience aud;

    if (jsonObject.get("aud") instanceof String) {

      aud = new Audience(JSONObjectUtils.getString(jsonObject, "aud"));

    } else {
      String[] audList = JSONObjectUtils.getStringArray(jsonObject, "aud");

      if (audList.length > 1)
        throw new ParseException("Multiple audiences (aud) not supported");

      aud = new Audience(audList[0]);
    }

    Date exp = DateUtils.fromSecondsSinceEpoch(JSONObjectUtils.getLong(jsonObject, "exp"));

View Full Code Here


   *
   * @return The client identifier.
   */
  public ClientID getClientID() {

    return new ClientID(iss.getValue());
  }
View Full Code Here

    // Check client ID

    if (! iss.getValue().equals(sub.getValue()))
      throw new ParseException("JWT issuer and subject must have the same client ID");

    ClientID clientID = new ClientID(iss.getValue());

    return new JWTAuthenticationClaimsSet(clientID, aud, exp, nbf, iat, jti);
  }
View Full Code Here

    String secretValue = params.get("client_secret");
   
    if (secretValue == null)
      throw new ParseException("Missing \"client_secret\" parameter");
   
    return new ClientSecretPost(new ClientID(clientIDString), new Secret(secretValue));
  }
View Full Code Here

      throw new ParseException(e.getMessage(), e);
    }

    // Check that the top level client_id matches the assertion subject + issuer

    ClientID clientID = JWTAuthentication.parseClientID(params);

    if (clientID != null) {

      if (! clientID.equals(privateKeyJWT.getClientID()))
        throw new ParseException("The client identifier doesn't match the client assertion subject / issuer");
    }

    return privateKeyJWT;
  }
View Full Code Here

    if (clientAuth == null && grant.getType().requiresClientAuthentication()) {
      throw new ParseException("Missing client authentication", OAuth2Error.INVALID_CLIENT);
    }

    // Parse client id
    ClientID clientID = null;

    if (clientAuth == null) {

      // Parse optional client ID
      String clientIDString = params.get("client_id");

      if (clientIDString != null && clientIDString.trim().length() > 0)
        clientID = new ClientID(clientIDString);

      if (clientID == null && grant.getType().requiresClientID()) {
        throw new ParseException("Missing required \"client_id\" parameter", OAuth2Error.INVALID_REQUEST);
      }
    }
View Full Code Here

      throw new ParseException(e.getMessage(), e);
    }

    // Check that the top level client_id matches the assertion subject + issuer
   
    ClientID clientID = JWTAuthentication.parseClientID(params);

    if (clientID != null) {

      if (! clientID.equals(clientSecretJWT.getClientID()))
        throw new ParseException("The client identifier doesn't match the client assertion subject / issuer");
    }

    return clientSecretJWT;
  }
View Full Code Here

      throw new IllegalArgumentException("Missing issuer in client JWT assertion");

    if (!subjectValue.equals(issuerValue))
      throw new IllegalArgumentException("Issuer and subject in client JWT assertion must designate the same client identifier");

    return new ClientID(subjectValue);
  }
View Full Code Here

    if (StringUtils.isBlank(v))
      throw new ParseException("Missing \"client_id\" parameter",
        OAuth2Error.INVALID_REQUEST);

    ClientID clientID = new ClientID(v);


    // Parse optional redirection URI second
    v = params.get("redirect_uri");
View Full Code Here

    if (clientIDString == null)
      return null;

    else
      return new ClientID(clientIDString);
  }
View Full Code Here

TOP

Related Classes of com.nimbusds.oauth2.sdk.auth.JWTAuthentication

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.