@POST @Consumes(MediaType.APPLICATION_JSON) public Response createOAuthClient( final @Context UriInfo uriInfo, final OAuthClientRepresentation rep) { auth.requireManage(); OAuthClientManager resourceManager = new OAuthClientManager(realm); OAuthClientModel oauth = resourceManager.create(rep); return Response.created(uriInfo.getAbsolutePathBuilder().path(oauth.getId()).build()).build(); }
public void update(OAuthClientRepresentation rep, OAuthClientModel model) { if (rep.getName() != null) model.setClientId(rep.getName()); if (rep.isEnabled() != null) model.setEnabled(rep.isEnabled()); if (rep.isPublicClient() != null) model.setPublicClient(rep.isPublicClient()); if (rep.getClaims() != null) { ClaimManager.setClaims(model, rep.getClaims()); } if (rep.getNotBefore() != null) { model.setNotBefore(rep.getNotBefore()); } if (rep.getSecret() != null) model.setSecret(rep.getSecret()); List<String> redirectUris = rep.getRedirectUris(); if (redirectUris != null) { model.setRedirectUris(new HashSet<String>(redirectUris)); } List<String> webOrigins = rep.getWebOrigins(); if (webOrigins != null) { model.setWebOrigins(new HashSet<String>(webOrigins)); } if (rep.getClaims() != null) { ClaimManager.setClaims(model, rep.getClaims()); } if (rep.getNotBefore() != null) { model.setNotBefore(rep.getNotBefore()); } }
@GET @Produces(MediaType.APPLICATION_JSON) @NoCache public List<OAuthClientRepresentation> getOAuthClients() { List<OAuthClientRepresentation> rep = new ArrayList<OAuthClientRepresentation>(); List<OAuthClientModel> oauthModels = realm.getOAuthClients(); boolean view = auth.hasView(); for (OAuthClientModel oauth : oauthModels) { if (view) { rep.add(OAuthClientManager.toRepresentation(oauth)); } else { OAuthClientRepresentation client = new OAuthClientRepresentation(); client.setName(oauth.getClientId()); rep.add(client); } } return rep; }
public InstallationAdapterConfig toInstallationRepresentation( RealmModel realmModel, OAuthClientModel model, URI baseUri) { InstallationAdapterConfig rep = new InstallationAdapterConfig(); rep.setRealm(realmModel.getName()); rep.setRealmKey(realmModel.getPublicKeyPem()); rep.setSslNotRequired(realmModel.isSslNotRequired()); rep.setAuthServerUrl(baseUri.toString()); if (model.isPublicClient()) rep.setPublicClient(true); rep.setResource(model.getClientId()); if (!model.isPublicClient()) { Map<String, String> creds = new HashMap<String, String>(); creds.put(CredentialRepresentation.SECRET, model.getSecret()); rep.setCredentials(creds); } return rep; }
public static OAuthClientRepresentation toRepresentation(OAuthClientModel model) { OAuthClientRepresentation rep = new OAuthClientRepresentation(); rep.setId(model.getId()); rep.setName(model.getClientId()); rep.setEnabled(model.isEnabled()); rep.setPublicClient(model.isPublicClient()); Set<String> redirectUris = model.getRedirectUris(); if (redirectUris != null) { rep.setRedirectUris(new LinkedList<String>(redirectUris)); } Set<String> webOrigins = model.getWebOrigins(); if (webOrigins != null) { rep.setWebOrigins(new LinkedList<String>(webOrigins)); } rep.setNotBefore(model.getNotBefore()); return rep; }
public UserCredentialModel generateSecret(OAuthClientModel app) { UserCredentialModel secret = UserCredentialModel.generateSecret(); app.setSecret(secret.getValue()); return secret; }