Skip to content

Commit

Permalink
Admin UI plugin development (#54)
Browse files Browse the repository at this point in the history
* feat: admin-ui plugin development branch

* feat: admin-ui plugin

* feat: adding admin-ui plugin endpoints

* feat: adding license endpoints in admin-ui plugin

* feat: add config file in project

* feat: add config file in project

* feat: add logging endpoints in admin-ui plugin

* feat: add license api

* feat: remove redundant code
  • Loading branch information
duttarnab authored Aug 25, 2021
1 parent 0cece0d commit 30ded6a
Show file tree
Hide file tree
Showing 22 changed files with 1,536 additions and 0 deletions.
29 changes: 29 additions & 0 deletions plugins/admin-ui-plugin/config/auiConfiguration.properties
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
authserver.clientId=2073c8e7-1060-4c09-b0f6-7d46fb6ff8f5
authserver.clientSecret=92bc4d8e-2f4c-4a4d-80ae-1e4eb1f5f463
authserver.authzBaseUrl=https://admin-ui-test.gluu.org/jans-auth/authorize.htm
authserver.scope=openid+profile+email+user_name
authserver.redirectUrl=https://admin-ui-test.gluu.org/admin
authserver.frontChannelLogoutUrl=https://admin-ui-test.gluu.org/admin/logout
authserver.postLogoutRedirectUri=https://admin-ui-test.gluu.org/admin
authserver.tokenEndpoint=https://admin-ui-test.gluu.org/jans-auth/restv1/token
authserver.introspectionEndpoint=https://admin-ui-test.gluu.org/jans-auth/restv1/introspection
authserver.userInfoEndpoint=https://admin-ui-test.gluu.org/jans-auth/restv1/userinfo
authServer.endSessionEndpoint=https://admin-ui-test.gluu.org/jans-auth/restv1/end_session

tokenServer.clientId=b6cc9ada-ca0a-4294-9bbe-22cced29e921
tokenServer.clientSecret=a8d85286-f802-478c-b462-57671a72ee16
tokenServer.authzBaseUrl=https://ce-dev6.gluu.org/oxauth/authorize.htm
tokenServer.scope=openid+profile+email+user_name
tokenServer.redirectUrl=http://localhost:4100/
tokenServer.logoutUrl=http://localhost:4100/
tokenServer.tokenEndpoint=https://ce-dev6.gluu.org/oxauth/restv1/token
tokenServer.introspectionEndpoint=https://ce-dev6.gluu.org/oxauth/restv1/introspection
tokenServer.userInfoEndpoint=https://ce-dev6.gluu.org/oxauth/restv1/userinfo


## licenseSpring details

licenseSpring.apiKey=9816ef29-a5fa-4df7-bba7-b7ae83711d28
licenseSpring.productCode=adminui001
licenseSpring.sharedKey=FW4xYR1nFnY6ISWulhMOYSBqx1Li_10D74RznCZxVtQ
licenseSpring.enabled=false
73 changes: 73 additions & 0 deletions plugins/admin-ui-plugin/pom.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,73 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<parent>
<artifactId>plugins</artifactId>
<groupId>jans.io</groupId>
<version>1.0.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>

<groupId>jans.io</groupId>
<artifactId>admin-ui-plugin</artifactId>

<repositories>
<repository>
<id>jdk-java</id>
<url>https://licensespring-maven.s3.eu-central-1.amazonaws.com/</url>
</repository>
</repositories>

<dependencies>
<!-- license spring-->
<dependency>
<groupId>com.licensespring</groupId>
<artifactId>licensespring-license-client</artifactId>
<version>2.4.5</version>
</dependency>
<dependency>
<groupId>net.java.dev.jna</groupId>
<artifactId>jna</artifactId>
<version>5.8.0</version>
</dependency>
<dependency>
<groupId>net.java.dev.jna</groupId>
<artifactId>jna-platform</artifactId>
<version>5.8.0</version>
</dependency>
<!-- config api -->
<dependency>
<groupId>io.jans</groupId>
<artifactId>jans-config-api-server</artifactId>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>commons-collections</groupId>
<artifactId>commons-collections</artifactId>
<version>3.2.2</version>
</dependency>
</dependencies>

<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-assembly-plugin</artifactId>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
<configuration>
<descriptors>
<descriptor>src/main/assembly/assembly.xml</descriptor>
</descriptors>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</project>
36 changes: 36 additions & 0 deletions plugins/admin-ui-plugin/src/main/assembly/assembly.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
<assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
<id>distribution</id>
<formats>
<format>jar</format>
</formats>
<includeBaseDirectory>false</includeBaseDirectory>
<dependencySets>
<dependencySet>
<unpack>true</unpack>
<outputDirectory>/</outputDirectory>
<useProjectArtifact>false</useProjectArtifact>
<includes>
<include>com.licensespring:licensespring-license-client</include>
<include>com.licensespring:licensespring-core</include>
<include>io.github.openfeign:feign-core</include>
<include>io.github.openfeign:feign-gson</include>
<include>io.github.openfeign:feign-okhttp</include>
<include>io.github.openfeign:feign-slf4j</include>
<include>net.java.dev.jna:jna</include>
<include>net.java.dev.jna:jna-platform</include>
</includes>
<scope>runtime</scope>
</dependencySet>
</dependencySets>
<fileSets>
<fileSet>
<directory>${project.build.directory}/classes</directory>
<outputDirectory>/</outputDirectory>
<includes>
<include>**/*</include>
</includes>
</fileSet>
</fileSets>
</assembly>
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
package io.jans.configapi.plugin.adminui.extensions;

import javax.enterprise.inject.spi.Extension;

public class AdminUIExtension implements Extension {
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,140 @@
package io.jans.configapi.plugin.adminui.model.auth;

import com.fasterxml.jackson.annotation.JsonProperty;

import java.util.List;

public class IntrospectionResponse {

@JsonProperty("active")
private boolean active;

@JsonProperty("scope")
private List<String> scope;

@JsonProperty("client_id")
private String clientId;

@JsonProperty("username")
private String username;

@JsonProperty("token_type")
private String tokenType;

@JsonProperty("exp")
private Integer expiresAt;

@JsonProperty("iat")
private Integer issuedAt;

@JsonProperty("sub")
private String subject;

@JsonProperty("aud")
private String audience;

@JsonProperty("iss")
private String issuer;

@JsonProperty("jti")
private String jti;

@JsonProperty("acr_values")
private String acrValues;

public boolean isActive() {
return active;
}

public void setActive(boolean active) {
this.active = active;
}

public List<String> getScope() {
return scope;
}

public void setScope(List<String> scope) {
this.scope = scope;
}

public String getClientId() {
return clientId;
}

public void setClientId(String clientId) {
this.clientId = clientId;
}

public String getUsername() {
return username;
}

public void setUsername(String username) {
this.username = username;
}

public String getTokenType() {
return tokenType;
}

public void setTokenType(String tokenType) {
this.tokenType = tokenType;
}

public Integer getExpiresAt() {
return expiresAt;
}

public void setExpiresAt(Integer expiresAt) {
this.expiresAt = expiresAt;
}

public Integer getIssuedAt() {
return issuedAt;
}

public void setIssuedAt(Integer issuedAt) {
this.issuedAt = issuedAt;
}

public String getSubject() {
return subject;
}

public void setSubject(String subject) {
this.subject = subject;
}

public String getAudience() {
return audience;
}

public void setAudience(String audience) {
this.audience = audience;
}

public String getIssuer() {
return issuer;
}

public void setIssuer(String issuer) {
this.issuer = issuer;
}

public String getJti() {
return jti;
}

public void setJti(String jti) {
this.jti = jti;
}

public String getAcrValues() {
return acrValues;
}

public void setAcrValues(String acrValues) {
this.acrValues = acrValues;
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
package io.jans.configapi.plugin.adminui.model.auth;

public class LicenseRequest {
private String licenseKey;

public String getLicenseKey() {
return licenseKey;
}

public void setLicenseKey(String licenseKey) {
this.licenseKey = licenseKey;
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,87 @@
package io.jans.configapi.plugin.adminui.model.auth;

public class OAuth2ConfigResponse {

private String authzBaseUrl;
private String clientId;
private String responseType;
private String scope;
private String redirectUrl;
private String acrValues;
private String frontChannelLogoutUrl;
private String postLogoutRedirectUri;
private String endSessionEndpoint;

public String getAuthzBaseUrl() {
return authzBaseUrl;
}

public void setAuthzBaseUrl(String authzBaseUrl) {
this.authzBaseUrl = authzBaseUrl;
}

public String getClientId() {
return clientId;
}

public void setClientId(String clientId) {
this.clientId = clientId;
}

public String getResponseType() {
return responseType;
}

public void setResponseType(String responseType) {
this.responseType = responseType;
}

public String getScope() {
return scope;
}

public void setScope(String scope) {
this.scope = scope;
}

public String getRedirectUrl() {
return redirectUrl;
}

public void setRedirectUrl(String redirectUrl) {
this.redirectUrl = redirectUrl;
}

public String getAcrValues() {
return acrValues;
}

public void setAcrValues(String acrValues) {
this.acrValues = acrValues;
}

public String getFrontChannelLogoutUrl() {
return frontChannelLogoutUrl;
}

public void setFrontChannelLogoutUrl(String frontChannelLogoutUrl) {
this.frontChannelLogoutUrl = frontChannelLogoutUrl;
}

public String getPostLogoutRedirectUri() {
return postLogoutRedirectUri;
}

public void setPostLogoutRedirectUri(String postLogoutRedirectUri) {
this.postLogoutRedirectUri = postLogoutRedirectUri;
}

public String getEndSessionEndpoint() {
return endSessionEndpoint;
}

public void setEndSessionEndpoint(String endSessionEndpoint) {
this.endSessionEndpoint = endSessionEndpoint;
}

}
Loading

0 comments on commit 30ded6a

Please sign in to comment.