瀏覽代碼

dependency updates

Jason Rivard 4 年之前
父節點
當前提交
644a4221ec

+ 6 - 5
build/checkstyle.xml

@@ -46,6 +46,12 @@
         <property name="fileExtensions" value="jsp,java"/>
     </module>
 
+    <module name="LineLength">
+        <property name="max" value="180" />
+        <property name="ignorePattern" value="@version|@see|@todo|TODO"/>
+        <property name="fileExtensions" value="java"/>
+    </module>
+
     <!-- Checks for Headers                              -->
     <!-- See http://checkstyle.sf.net/config_header.html -->
     <!--
@@ -80,11 +86,6 @@
             <property name="allowNonPrintableEscapes" value="true"/>
         </module>
 
-        <module name="LineLength">
-            <property name="max" value="180" />
-            <property name="ignorePattern" value="@version|@see|@todo|TODO"/>
-        </module>
-
         <module name="EmptyBlock">
             <property name="option" value="TEXT"/>
             <property name="tokens" value="LITERAL_TRY, LITERAL_FINALLY, LITERAL_IF, LITERAL_ELSE, LITERAL_SWITCH"/>

+ 3 - 0
build/spotbugs-exclude.xml

@@ -31,4 +31,7 @@
         <!-- due to bug with java 11 -->
         <Bug pattern="RCN_REDUNDANT_NULLCHECK_WOULD_HAVE_BEEN_A_NPE"/>
     </Match>
+    <Match>
+        <Bug pattern="DMI_RANDOM_USED_ONLY_ONCE"/>
+    </Match>
 </FindBugsFilter>

+ 19 - 17
client/package.json

@@ -8,27 +8,28 @@
         "npm": ">=3.9"
     },
     "scripts": {
-        "build": "webpack --mode=production",
+        "build": "webpack --mode=development",
         "clean": "rimraf dist/",
         "test": "karma start test/karma.conf.js",
         "test-single-run": "karma start test/karma.conf.js --singleRun --no-auto-watch",
-        "start": "webpack-dev-server --mode=development --port 4000 --history-api-fallback --colors"
+        "start": "webpack-dev-server --mode=development --port 4000 --history-api-fallback --colors --progress"
     },
     "author": "",
     "license": "ISC",
     "dependencies": {
-        "@microfocus/ias-icons": "1.0.1",
-        "@microfocus/ng-ias": "1.0.0-alpha.2",
-        "@microfocus/ux-ias": "1.0.0-rc",
+        "@microfocus/ias-icons": "1.0.4",
+        "@microfocus/ng-ias": "1.0.1",
+        "@microfocus/ux-ias": "1.1.2",
         "@uirouter/angularjs": "1.0.15",
-        "angular": "1.6.9",
-        "angular-aria": "1.6.9",
-        "angular-sanitize": "1.6.9",
-        "angular-translate": "2.17.0",
+        "angular": "^1.7.9",
+        "angular-aria": "1.7.8",
+        "angular-sanitize": "1.7.9",
+        "angular-translate": "2.18.1",
+        "core-js": "3.5.0",
         "textangular": "1.5.16"
     },
     "devDependencies": {
-        "@types/angular": "1.6.43",
+        "@types/angular": "^1.8.1",
         "@types/angular-mocks": "1.5.11",
         "@types/angular-translate": "2.15.2",
         "@types/angular-ui-router": "1.1.40",
@@ -36,8 +37,8 @@
         "@types/node": "9.4.7",
         "angular-mocks": "1.6.9",
         "autoprefixer": "8.1.0",
-        "copy-webpack-plugin": "4.5.1",
-        "css-loader": "0.28.10",
+        "copy-webpack-plugin": "^5.1.1",
+        "css-loader": "^3.3.2",
         "file-loader": "1.1.11",
         "html-loader": "0.5.5",
         "html-webpack-plugin": "3.0.6",
@@ -45,10 +46,10 @@
         "imports-loader": "0.8.0",
         "jasmine": "3.2.0",
         "jasmine-core": "3.2.1",
-        "jshint": "2.9.5",
+        "jshint": "^2.13.0",
         "jshint-loader": "0.8.4",
         "json-loader": "0.5.7",
-        "karma": "3.1.1",
+        "karma": "^4.4.1",
         "karma-chrome-launcher": "2.2.0",
         "karma-jasmine": "1.1.2",
         "karma-jasmine-html-reporter": "1.3.1",
@@ -58,7 +59,7 @@
         "karma-webpack": "3.0.5",
         "moment": "2.21.0",
         "ngtemplate-loader": "2.0.1",
-        "node-sass": "4.7.2",
+        "node-sass": "^6.0.1",
         "phantomjs": "2.1.7",
         "phantomjs-prebuilt": "2.1.16",
         "postcss-loader": "2.1.1",
@@ -67,6 +68,7 @@
         "sass-loader": "6.0.7",
         "string-replace-loader": "2.1.1",
         "style-loader": "0.20.3",
+        "trim-newlines": ">=3.0.1",
         "ts-loader": "4.0.1",
         "ts-mockito": "2.3.1",
         "tslint": "5.9.1",
@@ -74,8 +76,8 @@
         "typescript": "2.7.2",
         "uglifyjs-webpack-plugin": "1.2.3",
         "url-loader": "1.0.1",
-        "webpack": "4.1.1",
-        "webpack-cli": "2.0.12",
+        "webpack": "^4.46.0",
+        "webpack-cli": "^3.3.10",
         "webpack-dev-server": "3.1.14",
         "webpack-merge": "4.1.2",
         "write-file-webpack-plugin": "4.2.0"

+ 7 - 5
client/pom.xml

@@ -16,6 +16,8 @@
 
     <properties>
         <project.root.basedir>${project.basedir}/..</project.root.basedir>
+        <node.version>v14.17.2</node.version>
+        <npm.version>6.14.13</npm.version>
     </properties>
 
     <profiles>
@@ -79,11 +81,11 @@
             <plugin>
                 <groupId>com.github.eirslett</groupId>
                 <artifactId>frontend-maven-plugin</artifactId>
-                <version>1.7.6</version>
+                <version>1.12.0</version>
                 <configuration>
-                    <nodeVersion>v8.9.4</nodeVersion>
-                    <npmVersion>5.6.0</npmVersion>
-                    <installDirectory>.node</installDirectory>
+                    <nodeVersion>${node.version}</nodeVersion>
+                    <npmVersion>${npm.version}</npmVersion>
+                    <installDirectory>${settings.localRepository}/frontend-maven-plugin/node-${node.version}</installDirectory>
                 </configuration>
                 <executions>
                     <execution>
@@ -115,7 +117,7 @@
             <plugin>
                 <groupId>org.apache.maven.plugins</groupId>
                 <artifactId>maven-jar-plugin</artifactId>
-                <version>3.1.0</version>
+                <version>3.2.0</version>
                 <configuration>
                     <archive>
                         <manifestEntries>

+ 1 - 1
client/src/modules/helpdesk/main.ts

@@ -24,7 +24,7 @@ import 'angular-sanitize';
 import '@microfocus/ng-ias/dist/ng-ias';
 
 // Add a polyfill for Set() for IE11, since it's used in peoplesearch-base.component.ts
-import 'core-js/es6/set';
+import 'core-js/es/set';
 
 import { bootstrap, module } from 'angular';
 import helpDeskModule from './helpdesk.module';

+ 1 - 1
client/src/modules/peoplesearch/main.ts

@@ -23,7 +23,7 @@ import 'angular-translate';
 import '@microfocus/ng-ias/dist/ng-ias';
 
 // Add a polyfill for Set() for IE11, since it's used in peoplesearch-base.component.ts
-import 'core-js/es6/set';
+import 'core-js/es/set';
 
 import { bootstrap, module } from 'angular';
 import ConfigService from '../../services/peoplesearch-config.service';

+ 6 - 6
data-service/pom.xml

@@ -122,17 +122,17 @@
         <dependency>
             <groupId>commons-net</groupId>
             <artifactId>commons-net</artifactId>
-            <version>3.6</version>
+            <version>3.8.0</version>
         </dependency>
         <dependency>
             <groupId>org.apache.commons</groupId>
             <artifactId>commons-csv</artifactId>
-            <version>1.7</version>
+            <version>1.9.0</version>
         </dependency>
         <dependency>
             <groupId>org.apache.commons</groupId>
             <artifactId>commons-lang3</artifactId>
-            <version>3.9</version>
+            <version>3.12.0</version>
         </dependency>
         <dependency>
             <groupId>com.sun.mail</groupId>
@@ -142,7 +142,7 @@
         <dependency>
             <groupId>org.apache.httpcomponents</groupId>
             <artifactId>httpclient</artifactId>
-            <version>4.5.9</version>
+            <version>4.5.13</version>
         </dependency>
         <dependency>
             <groupId>log4j</groupId>
@@ -157,12 +157,12 @@
         <dependency>
             <groupId>com.google.code.gson</groupId>
             <artifactId>gson</artifactId>
-            <version>2.8.5</version>
+            <version>2.8.7</version>
         </dependency>
         <dependency>
             <groupId>org.jetbrains.xodus</groupId>
             <artifactId>xodus-environment</artifactId>
-            <version>1.3.0</version>
+            <version>1.3.232</version>
         </dependency>
     </dependencies>
 </project>

+ 12 - 7
docker/pom.xml

@@ -34,7 +34,7 @@
             <plugin>
                 <groupId>com.google.cloud.tools</groupId>
                 <artifactId>jib-maven-plugin</artifactId>
-                <version>1.2.0</version>
+                <version>3.1.2</version>
                 <executions>
                     <execution>
                         <id>make-docker-image</id>
@@ -44,10 +44,12 @@
                         </goals>
                         <configuration>
                             <skip>${skipDocker}</skip>
-                            <jib.console>plain</jib.console>
                             <from>
                                 <image>adoptopenjdk/openjdk11:jre</image>
                             </from>
+                            <outputPaths>
+                                <tar>target/pwm-docker-image-${project.version}.tar</tar>
+                            </outputPaths>
                             <to>
                                 <image>${dockerImageTag}</image>
                             </to>
@@ -55,14 +57,17 @@
                                 <entrypoint>
                                     <arg>/app/startup.sh</arg>
                                 </entrypoint>
-                                <format>docker</format>
-                                <ports>8443</ports>
+                                <ports>
+                                    <port>8443</port>
+                                </ports>
                                 <volumes>
                                     <volume>/config</volume>
                                 </volumes>
                             </container>
-                            <extraDirectory>
-                                <path>${project.basedir}/src/main/image-files</path>
+                            <extraDirectories>
+                                <paths>
+                                    <path>${project.basedir}/src/main/image-files</path>
+                                </paths>
                                 <permissions>
                                     <permission>
                                         <file>/app/startup.sh</file>
@@ -73,7 +78,7 @@
                                         <mode>755</mode>
                                     </permission>
                                 </permissions>
-                            </extraDirectory>
+                            </extraDirectories>
                         </configuration>
                     </execution>
                 </executions>

+ 2 - 2
onejar/pom.xml

@@ -17,7 +17,7 @@
 
     <properties>
         <project.root.basedir>${project.basedir}/..</project.root.basedir>
-        <tomcat.version>9.0.22</tomcat.version>
+        <tomcat.version>9.0.52</tomcat.version>
     </properties>
 
     <build>
@@ -26,7 +26,7 @@
                 <!-- prevent normal jar from being built -->
                 <groupId>org.apache.maven.plugins</groupId>
                 <artifactId>maven-jar-plugin</artifactId>
-                <version>3.1.0</version>
+                <version>3.2.0</version>
                 <executions>
                     <execution>
                         <id>default-jar</id>

+ 18 - 14
pom.xml

@@ -167,12 +167,12 @@
             <plugin>
                 <groupId>org.apache.maven.plugins</groupId>
                 <artifactId>maven-checkstyle-plugin</artifactId>
-                <version>3.1.0</version>
+                <version>3.1.2</version>
                 <dependencies>
                     <dependency>
                         <groupId>com.puppycrawl.tools</groupId>
                         <artifactId>checkstyle</artifactId>
-                        <version>8.21</version>
+                        <version>8.45.1</version>
                     </dependency>
                 </dependencies>
                 <executions>
@@ -242,12 +242,12 @@
             <plugin>
                 <groupId>com.github.spotbugs</groupId>
                 <artifactId>spotbugs-maven-plugin</artifactId>
-                <version>3.1.11</version>
+                <version>4.2.3</version>
                 <dependencies>
                     <dependency>
                         <groupId>com.github.spotbugs</groupId>
                         <artifactId>spotbugs</artifactId>
-                        <version>4.0.0-beta2</version>
+                        <version>4.2.3</version>
                     </dependency>
                 </dependencies>
                 <configuration>
@@ -268,7 +268,7 @@
             <plugin> <!-- checks owsp vulnerability database -->
                 <groupId>org.owasp</groupId>
                 <artifactId>dependency-check-maven</artifactId>
-                <version>5.0.0-M3</version>
+                <version>6.2.2</version>
                 <executions>
                     <execution>
                         <goals>
@@ -276,6 +276,10 @@
                         </goals>
                     </execution>
                 </executions>
+                <configuration>
+                    <yarnAuditAnalyzerEnabled>false</yarnAuditAnalyzerEnabled>
+                    <nodeAnalyzerEnabled>false</nodeAnalyzerEnabled>
+                </configuration>
             </plugin>
         </plugins>
     </build>
@@ -285,13 +289,13 @@
         <dependency>
             <groupId>org.projectlombok</groupId>
             <artifactId>lombok</artifactId>
-            <version>1.18.8</version>
+            <version>1.18.20</version>
             <scope>provided</scope>
         </dependency>
         <dependency>
             <groupId>com.github.spotbugs</groupId>
             <artifactId>spotbugs-annotations</artifactId>
-            <version>4.0.0-beta2</version>
+            <version>4.3.0</version>
             <scope>provided</scope>
         </dependency>
 
@@ -299,43 +303,43 @@
         <dependency>
             <groupId>junit</groupId>
             <artifactId>junit</artifactId>
-            <version>4.12</version>
+            <version>4.13.2</version>
             <scope>test</scope>
         </dependency>
         <dependency>
             <groupId>org.mockito</groupId>
             <artifactId>mockito-core</artifactId>
-            <version>2.28.2</version>
+            <version>3.11.2</version>
             <scope>test</scope>
         </dependency>
         <dependency>
             <groupId>org.assertj</groupId>
             <artifactId>assertj-core</artifactId>
-            <version>3.12.2</version>
+            <version>3.20.2</version>
             <scope>test</scope>
         </dependency>
         <dependency>
             <groupId>com.github.tomakehurst</groupId>
             <artifactId>wiremock</artifactId>
-            <version>2.23.2</version>
+            <version>2.27.2</version>
             <scope>test</scope>
         </dependency>
         <dependency>
             <groupId>org.reflections</groupId>
             <artifactId>reflections</artifactId>
-            <version>0.9.11</version>
+            <version>0.9.12</version>
             <scope>test</scope>
         </dependency>
         <dependency>
             <groupId>org.openjdk.jmh</groupId>
             <artifactId>jmh-core</artifactId>
-            <version>1.21</version>
+            <version>1.33</version>
             <scope>test</scope>
         </dependency>
         <dependency>
             <groupId>org.openjdk.jmh</groupId>
             <artifactId>jmh-generator-annprocess</artifactId>
-            <version>1.21</version>
+            <version>1.33</version>
             <scope>test</scope>
         </dependency>
 

+ 4 - 4
pwm-cr/pom.xml

@@ -25,7 +25,7 @@
         <dependency>
             <groupId>com.google.code.gson</groupId>
             <artifactId>gson</artifactId>
-            <version>2.8.5</version>
+            <version>2.8.7</version>
         </dependency>
         <dependency>
             <groupId>org.jdom</groupId>
@@ -45,14 +45,14 @@
         <dependency>
             <groupId>org.bouncycastle</groupId>
             <artifactId>bcpkix-jdk15on</artifactId>
-            <version>1.62</version>
+            <version>1.69</version>
         </dependency>
 
         <!-- Test dependencies -->
         <dependency>
             <groupId>junit</groupId>
             <artifactId>junit</artifactId>
-            <version>4.12</version>
+            <version>4.13.2</version>
             <scope>test</scope>
         </dependency>
     </dependencies>
@@ -72,7 +72,7 @@
             <plugin>
                 <groupId>org.apache.maven.plugins</groupId>
                 <artifactId>maven-jar-plugin</artifactId>
-                <version>3.1.0</version>
+                <version>3.2.0</version>
                 <configuration>
                     <archive>
                         <manifestEntries>

+ 1 - 1
rest-test-service/pom.xml

@@ -78,7 +78,7 @@
         <dependency>
             <groupId>com.google.code.gson</groupId>
             <artifactId>gson</artifactId>
-            <version>2.8.5</version>
+            <version>2.8.7</version>
         </dependency>
         <dependency>
             <groupId>org.apache.commons</groupId>

+ 17 - 17
server/pom.xml

@@ -105,7 +105,7 @@
             <plugin>
                 <groupId>org.apache.maven.plugins</groupId>
                 <artifactId>maven-jar-plugin</artifactId>
-                <version>3.1.0</version>
+                <version>3.2.0</version>
                 <configuration>
                     <archive>
                         <manifestEntries>
@@ -192,22 +192,22 @@
         <dependency>
             <groupId>com.github.ldapchai</groupId>
             <artifactId>ldapchai</artifactId>
-            <version>0.7.5</version>
+            <version>0.8.1</version>
         </dependency>
         <dependency>
             <groupId>commons-net</groupId>
             <artifactId>commons-net</artifactId>
-            <version>3.6</version>
+            <version>3.8.0</version>
         </dependency>
         <dependency>
             <groupId>org.apache.commons</groupId>
             <artifactId>commons-text</artifactId>
-            <version>1.6</version>
+            <version>1.9</version>
         </dependency>
         <dependency>
             <groupId>org.apache.commons</groupId>
             <artifactId>commons-csv</artifactId>
-            <version>1.7</version>
+            <version>1.9.0</version>
         </dependency>
         <dependency>
             <groupId>commons-fileupload</groupId>
@@ -217,12 +217,12 @@
         <dependency>
             <groupId>org.apache.commons</groupId>
             <artifactId>commons-lang3</artifactId>
-            <version>3.9</version>
+            <version>3.12.0</version>
         </dependency>
         <dependency>
             <groupId>commons-validator</groupId>
             <artifactId>commons-validator</artifactId>
-            <version>1.6</version>
+            <version>1.7</version>
         </dependency>
         <dependency>
             <groupId>com.sun.mail</groupId>
@@ -232,7 +232,7 @@
         <dependency>
             <groupId>org.apache.httpcomponents</groupId>
             <artifactId>httpclient</artifactId>
-            <version>4.5.9</version>
+            <version>4.5.13</version>
         </dependency>
         <dependency>
             <groupId>org.graylog2</groupId>
@@ -247,7 +247,7 @@
         <dependency>
             <groupId>org.jasig.cas.client</groupId>
             <artifactId>cas-client-core</artifactId>
-            <version>3.5.1</version>
+            <version>3.6.2</version>
         </dependency>
         <dependency>
             <groupId>net.glxn</groupId>
@@ -257,12 +257,12 @@
         <dependency>
             <groupId>org.bouncycastle</groupId>
             <artifactId>bcprov-jdk15on</artifactId>
-            <version>1.62</version>
+            <version>1.69</version>
         </dependency>
         <dependency>
             <groupId>org.bouncycastle</groupId>
             <artifactId>bcpkix-jdk15on</artifactId>
-            <version>1.62</version>
+            <version>1.69</version>
         </dependency>
         <dependency>
             <groupId>jaxen</groupId>
@@ -287,17 +287,17 @@
         <dependency>
             <groupId>com.google.code.gson</groupId>
             <artifactId>gson</artifactId>
-            <version>2.8.5</version>
+            <version>2.8.7</version>
         </dependency>
         <dependency>
             <groupId>com.blueconic</groupId>
             <artifactId>browscap-java</artifactId>
-            <version>1.2.9</version>
+            <version>1.3.6</version>
         </dependency>
         <dependency>
             <groupId>org.jetbrains.xodus</groupId>
             <artifactId>xodus-environment</artifactId>
-            <version>1.3.0</version>
+            <version>1.3.232</version>
         </dependency>
         <dependency>
             <groupId>org.slf4j</groupId>
@@ -307,17 +307,17 @@
         <dependency>
             <groupId>org.webjars</groupId>
             <artifactId>webjars-locator-core</artifactId>
-            <version>0.37</version>
+            <version>0.47</version>
         </dependency>
         <dependency>
             <groupId>com.github.ben-manes.caffeine</groupId>
             <artifactId>caffeine</artifactId>
-            <version>2.7.0</version>
+            <version>3.0.3</version>
         </dependency>
         <dependency>
             <groupId>com.nulab-inc</groupId>
             <artifactId>zxcvbn</artifactId>
-            <version>1.2.5</version>
+            <version>1.5.2</version>
         </dependency>
         <dependency>
             <groupId>com.github.ziplet</groupId>

+ 0 - 18
server/src/main/java/password/pwm/cr/CrChallengeItemBean.java

@@ -39,24 +39,6 @@ public class CrChallengeItemBean implements Serializable, Challenge
     private int maxQuestionCharsInAnswer;
     private boolean enforceWordlist;
 
-    @Override
-    public boolean isLocked()
-    {
-        return true;
-    }
-
-    @Override
-    public void lock()
-    {
-
-    }
-
-    @Override
-    public void setChallengeText( final String challengeText )
-    {
-        throw new IllegalStateException();
-    }
-
     @Override
     public ChallengeBean asChallengeBean()
     {

+ 0 - 11
server/src/main/java/password/pwm/cr/CrChallengePolicyBean.java

@@ -96,17 +96,6 @@ public class CrChallengePolicyBean implements Serializable, ChallengeSet
         return mininimumResponses;
     }
 
-    @Override
-    public boolean isLocked()
-    {
-        return true;
-    }
-
-    @Override
-    public void lock()
-    {
-
-    }
 
     @Override
     public String getIdentifier()

+ 16 - 3
server/src/main/java/password/pwm/http/servlet/SetupResponsesServlet.java

@@ -21,6 +21,7 @@
 package password.pwm.http.servlet;
 
 import com.novell.ldapchai.ChaiUser;
+import com.novell.ldapchai.cr.ChaiChallenge;
 import com.novell.ldapchai.cr.ChaiCrFactory;
 import com.novell.ldapchai.cr.ChaiResponseSet;
 import com.novell.ldapchai.cr.Challenge;
@@ -475,18 +476,30 @@ public class SetupResponsesServlet extends ControlledPwmServlet
                 final Challenge loopChallenge = setupData.getIndexedChallenges().get( indexKey );
                 if ( loopChallenge.isRequired() || !setupData.isSimpleMode() )
                 {
-
+                    final Challenge newChallenge;
                     if ( !loopChallenge.isAdminDefined() )
                     {
                         final String questionText = inputMap.get( PwmConstants.PARAM_QUESTION_PREFIX + indexKey );
-                        loopChallenge.setChallengeText( questionText );
+                        newChallenge = new ChaiChallenge(
+                                loopChallenge.isRequired(),
+                                questionText,
+                                loopChallenge.getMinLength(),
+                                loopChallenge.getMaxLength(),
+                                loopChallenge.isAdminDefined(),
+                                loopChallenge.getMaxQuestionCharsInAnswer(),
+                                loopChallenge.isEnforceWordlist()
+                        );
+                    }
+                    else
+                    {
+                        newChallenge = loopChallenge;
                     }
 
                     final String answer = inputMap.get( PwmConstants.PARAM_RESPONSE_PREFIX + indexKey );
 
                     if ( answer != null && answer.length() > 0 )
                     {
-                        readResponses.put( loopChallenge, answer );
+                        readResponses.put( newChallenge, answer );
                     }
                 }
             }

+ 1 - 2
server/src/main/java/password/pwm/http/servlet/resource/ResourceFileRequest.java

@@ -51,8 +51,7 @@ class ResourceFileRequest
     private static final PwmLogger LOGGER = PwmLogger.forClass( ResourceFileRequest.class );
 
     private static final Map<String, String> WEB_JAR_VERSION_MAP = Collections.unmodifiableMap( new HashMap<>( new WebJarAssetLocator().getWebJars() ) );
-    private static final Collection<String> WEB_JAR_ASSET_LIST = Collections.unmodifiableCollection( new ArrayList<>( new WebJarAssetLocator().getFullPathIndex().values() ) );
-
+    private static final Collection<String> WEB_JAR_ASSET_LIST = Collections.unmodifiableCollection( new ArrayList<>( new WebJarAssetLocator().listAssets() ) );
     private final HttpServletRequest httpServletRequest;
     private final Configuration configuration;
     private final ResourceServletConfiguration resourceServletConfiguration;

+ 10 - 6
server/src/main/java/password/pwm/svc/report/ReportSettings.java

@@ -78,19 +78,23 @@ class ReportSettings implements Serializable
     {
         final ReportSettings.ReportSettingsBuilder builder = ReportSettings.builder();
         builder.maxCacheAge( TimeDuration.of( Long.parseLong( config.readAppProperty( AppProperty.REPORTING_MAX_REPORT_AGE_SECONDS ) ), TimeDuration.Unit.SECONDS ) );
-        builder.searchFilter( config.readSettingAsUserPermission( PwmSetting.REPORTING_USER_MATCH ) );
         builder.maxSearchSize ( ( int ) config.readSettingAsLong( PwmSetting.REPORTING_MAX_QUERY_SIZE ) );
         builder.dailyJobEnabled( config.readSettingAsBoolean( PwmSetting.REPORTING_ENABLE_DAILY_JOB ) );
 
-        if ( builder.searchFilter == null || builder.searchFilter.isEmpty() )
         {
-            builder.searchFilter = null;
+            final List<UserPermission> searchFilter = config.readSettingAsUserPermission( PwmSetting.REPORTING_USER_MATCH );
+            if ( searchFilter != null && !searchFilter.isEmpty() )
+            {
+                builder.searchFilter( searchFilter );
+            }
         }
 
-        builder.jobOffsetSeconds = ( int ) config.readSettingAsLong( PwmSetting.REPORTING_JOB_TIME_OFFSET );
-        if ( builder.jobOffsetSeconds > 60 * 60 * 24 )
         {
-            builder.jobOffsetSeconds = 0;
+            final int jobOffsetSeconds = ( int ) config.readSettingAsLong( PwmSetting.REPORTING_JOB_TIME_OFFSET );
+            if ( jobOffsetSeconds <= 60 * 60 * 24 )
+            {
+                builder.jobOffsetSeconds( jobOffsetSeconds );
+            }
         }
 
         builder.trackDays( parseDayIntervalStr( config ) );

+ 1 - 2
server/src/main/java/password/pwm/util/operations/cr/CrOperator.java

@@ -35,7 +35,6 @@ import password.pwm.config.option.DataStorageMethod;
 import password.pwm.error.PwmUnrecoverableException;
 import password.pwm.util.logging.PwmLogger;
 
-import java.time.Instant;
 import java.util.LinkedHashMap;
 import java.util.List;
 import java.util.Map;
@@ -119,7 +118,7 @@ public interface CrOperator
             );
             responseInfoBean.setTimestamp( responseSet.getTimestamp() == null
                     ? null
-                    : Instant.ofEpochMilli( responseSet.getTimestamp().getTime() )
+                    : responseSet.getTimestamp()
             );
             return responseInfoBean;
         }

+ 1 - 2
server/src/main/java/password/pwm/util/operations/cr/NMASCrOperator.java

@@ -101,7 +101,6 @@ import java.security.Security;
 import java.time.Instant;
 import java.util.ArrayList;
 import java.util.Collections;
-import java.util.Date;
 import java.util.HashMap;
 import java.util.List;
 import java.util.Locale;
@@ -620,7 +619,7 @@ public class NMASCrOperator implements CrOperator
         }
 
         @Override
-        public Date getTimestamp( ) throws ChaiUnavailableException, IllegalStateException, ChaiOperationException
+        public Instant getTimestamp( ) throws ChaiUnavailableException, IllegalStateException, ChaiOperationException
         {
             return null;
         }

+ 5 - 5
webapp/pom.xml

@@ -181,7 +181,7 @@
                 <!-- builds xml file of dependencies and licenses for use in about page -->
                 <groupId>com.github.jinnovations</groupId>
                 <artifactId>attribution-maven-plugin</artifactId>
-                <version>0.9.5</version>
+                <version>0.9.8</version>
                 <executions>
                     <execution>
                         <goals>
@@ -285,22 +285,22 @@
         <dependency>
             <groupId>org.webjars.npm</groupId>
             <artifactId>dojo</artifactId>
-            <version>1.15.0</version>
+            <version>1.16.4</version>
         </dependency>
         <dependency>
             <groupId>org.webjars.npm</groupId>
             <artifactId>dijit</artifactId>
-            <version>1.15.0</version>
+            <version>1.16.4</version>
         </dependency>
         <dependency>
             <groupId>org.webjars.npm</groupId>
             <artifactId>dojox</artifactId>
-            <version>1.15.0</version>
+            <version>1.16.4</version>
         </dependency>
         <dependency>
             <groupId>org.webjars.npm</groupId>
             <artifactId>dgrid</artifactId>
-            <version>1.2.1</version>
+            <version>1.3.3</version>
         </dependency>
         <dependency>
             <groupId>org.webjars.bower</groupId>

+ 2 - 0
webapp/src/build/assembly/source-reference.xml

@@ -73,6 +73,8 @@
                 <exclude>.node/**</exclude>
                 <exclude>dist/**</exclude>
                 <exclude>node_modules/**</exclude>
+                <exclude>angular/dist/**</exclude>
+                <exclude>angular/node_modules/**</exclude>
             </excludes>
         </fileSet>
         <fileSet>