Skip to content

Commit 30bfa16

Browse files
authored
Merge pull request #983 from wultra/develop
Merge develop to master
2 parents 5a13522 + 5937454 commit 30bfa16

File tree

379 files changed

+13324
-10716
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

379 files changed

+13324
-10716
lines changed

.github/dependabot.yml

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
# To get started with Dependabot version updates, you'll need to specify which
2+
# package ecosystems to update and where the package manifests are located.
3+
# Please see the documentation for all configuration options:
4+
# https://docs.github.com/github/administering-a-repository/configuration-options-for-dependency-updates
5+
6+
version: 2
7+
updates:
8+
- package-ecosystem: "maven"
9+
directory: "/"
10+
schedule:
11+
interval: "weekly"

.github/workflows/codeql-analysis.yml

Lines changed: 12 additions & 58 deletions
Original file line numberDiff line numberDiff line change
@@ -1,67 +1,21 @@
1-
# For most projects, this workflow file will not need changing; you simply need
2-
# to commit it to your repository.
3-
#
4-
# You may wish to alter this file to override the set of languages analyzed,
5-
# or to provide custom queries or build logic.
6-
#
7-
# ******** NOTE ********
8-
# We have attempted to detect the languages in your repository. Please check
9-
# the `language` matrix defined below to confirm you have the correct set of
10-
# supported CodeQL languages.
11-
#
121
name: "CodeQL"
132

143
on:
4+
workflow_dispatch:
155
push:
16-
branches: [ develop, master ]
6+
branches: [ 'develop', 'master', 'releases/**' ]
177
pull_request:
188
# The branches below must be a subset of the branches above
19-
branches: [ develop ]
9+
branches: [ 'develop', 'master', 'releases/**' ]
2010
schedule:
21-
- cron: '19 8 * * 5'
11+
- cron: '0 2 * * 4'
2212

2313
jobs:
24-
analyze:
25-
name: Analyze
26-
runs-on: ubuntu-latest
27-
28-
strategy:
29-
fail-fast: false
30-
matrix:
31-
language: [ 'java', 'javascript' ]
32-
# CodeQL supports [ 'cpp', 'csharp', 'go', 'java', 'javascript', 'python' ]
33-
# Learn more:
34-
# https://docs.github.com/en/free-pro-team@latest/github/finding-security-vulnerabilities-and-errors-in-your-code/configuring-code-scanning#changing-the-languages-that-are-analyzed
35-
36-
steps:
37-
- name: Checkout repository
38-
uses: actions/checkout@v2
39-
40-
# Initializes the CodeQL tools for scanning.
41-
- name: Initialize CodeQL
42-
uses: github/codeql-action/init@v1
43-
with:
44-
languages: ${{ matrix.language }}
45-
# If you wish to specify custom queries, you can do so here or in a config file.
46-
# By default, queries listed here will override any specified in a config file.
47-
# Prefix the list here with "+" to use these queries and those in the config file.
48-
# queries: ./path/to/local/query, your-org/your-repo/queries@main
49-
50-
# Autobuild attempts to build any compiled languages (C/C++, C#, or Java).
51-
# If this step fails, then you should remove it and run the build manually (see below)
52-
- name: Autobuild
53-
uses: github/codeql-action/autobuild@v1
54-
55-
# ℹ️ Command-line programs to run using the OS shell.
56-
# 📚 https://git.io/JvXDl
57-
58-
# ✏️ If the Autobuild fails above, remove it and uncomment the following three lines
59-
# and modify them (or add more) to build your code if your project
60-
# uses a compiled language
61-
62-
#- run: |
63-
# make bootstrap
64-
# make release
65-
66-
- name: Perform CodeQL Analysis
67-
uses: github/codeql-action/analyze@v1
14+
codeql-analysis:
15+
uses: wultra/wultra-infrastructure/.github/workflows/codeql-analysis.yml@develop
16+
secrets: inherit
17+
with:
18+
languages: "['java', 'javascript']"
19+
# CodeQL supports [ 'cpp', 'csharp', 'go', 'java', 'javascript', 'python', 'ruby' ]
20+
# Use only 'java' to analyze code written in Java, Kotlin or both
21+
# Use only 'javascript' to analyze code written in JavaScript, TypeScript or both

.github/workflows/owas-dependecy-check.yml

Lines changed: 0 additions & 12 deletions
This file was deleted.

.run/PowerAuthAdminApplication.run.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
<component name="ProjectRunConfigurationManager">
22
<configuration default="false" name="PowerAuthAdminApplication" type="SpringBootApplicationConfigurationType" factoryName="Spring Boot">
3-
<option name="ACTIVE_PROFILES" />
3+
<option name="ACTIVE_PROFILES" value="dev" />
44
<option name="DEBUG_MODE" value="true" />
55
<module name="powerauth-admin" />
66
<option name="SPRING_BOOT_MAIN_CLASS" value="io.getlime.security.app.admin.PowerAuthAdminApplication" />
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,14 @@
11
<component name="ProjectRunConfigurationManager">
22
<configuration default="false" name="PowerAuthServerApplication" type="SpringBootApplicationConfigurationType" factoryName="Spring Boot">
3+
<option name="ACTIVE_PROFILES" value="dev" />
4+
<option name="DEBUG_MODE" value="true" />
35
<module name="powerauth-java-server" />
46
<option name="SPRING_BOOT_MAIN_CLASS" value="io.getlime.security.powerauth.app.server.Application" />
57
<option name="VM_PARAMETERS" value="-Dserver.servlet.context-path=/powerauth-java-server" />
8+
<option name="WORKING_DIRECTORY" value="file://$MODULE_WORKING_DIR$" />
69
<method v="2">
710
<option name="Make" enabled="true" />
11+
<option name="Maven.BeforeRunTask" enabled="true" file="$PROJECT_DIR$/powerauth-java-server/pom.xml" goal="process-resources" />
812
</method>
913
</configuration>
1014
</component>

docs-private/Developer-How-To-Start.md

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,19 @@
1111
- Open [http://localhost:8080/powerauth-java-server/actuator/health](http://localhost:8080/powerauth-java-server/actuator/health) and you should get `{"status":"UP"}`
1212

1313

14+
### Database
15+
16+
Database changes are driven by Liquibase.
17+
18+
This is an example how to manually check the Liquibase status.
19+
Important and fixed parameter is `changelog-file`.
20+
Others (like URL, username, password) depend on your environment.
21+
22+
```shell
23+
liquibase --changelog-file=./docs/db/changelog/changesets/powerauth-java-server/db.changelog-module.xml --url=jdbc:postgresql://localhost:5432/powerauth --username=powerauth status
24+
```
25+
26+
1427
## PowerAuth Admin Server
1528

1629

docs/Activation-Recovery.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
# Configuration of Activation Recovery
22

3-
PowerAuth Server supports activation recovery in case user loses mobile device or it gets stolen. Activation recovery
3+
PowerAuth Server supports activation recovery in case user loses mobile device, or it gets stolen. Activation recovery
44
can be enabled using PowerAuth Admin.
55

66
## Enabling Activation Recovery
77

8-
By default activation recovery is disabled, which means that if the user loses the mobile device a new activation needs
8+
By default, activation recovery is disabled, which means that if the user loses the mobile device a new activation needs
99
to be created.
1010

1111
Activation recovery allows recovering the activation using a recovery code and recovery PUK without going through
@@ -26,7 +26,7 @@ You can enable Activation Recovery for Activations using following steps in Powe
2626
- Enable the `Activation Recovery Enabled` checkbox
2727

2828
From now on the PowerAuth Server will generate recovery codes and PUKs for new activations. Users will be asked
29-
to write down the recovery code and PUK during an activation and they can use these details to recover an activation
29+
to write down the recovery code and PUK during an activation, and they can use these details to recover an activation
3030
later on.
3131

3232
### Enabling Activation Recovery using Recovery Postcard
@@ -39,14 +39,14 @@ You can enable Activation Recovery using Recovery Postcard using following steps
3939
- Enabled the `Recovery Postcard Enabled` checkbox
4040

4141
The `Recovery Postcard Public Key` value contains public key for key exchange with Recovery Postcard printing center which represents PowerAuth server.
42-
This key needs to be entered into the Recovery Postcard Printing Center application and it enables secure sharing of recovery code and PUK data.
42+
This key needs to be entered into the Recovery Postcard Printing Center application, and it enables secure sharing of recovery code and PUK data.
4343

4444
You need to configure the `Recovery Postcard Printing Center Public Key` which represents the Recovery Postcard printing center.
4545
This key is provided by the Recovery Postcard Printing Center application and is also required for secure sharing of recovery code and PUK data.
4646

4747
The checkbox `Allow Multiple Recovery Codes for User` is used to configure whether existing recovery codes for the user need to be revoked before
4848
creating another recovery code. In case the checkbox is enabled, it is not necessary to revoke existing codes and multiple recovery postcards can exist.
49-
Otherwise revoking recovery code is necessary before creating a new recovery code.
49+
Otherwise, revoking recovery code is necessary before creating a new recovery code.
5050

5151
Once activation recovery using recovery postcard is configured it is possible to create recovery postcards with
5252
recovery codes and PUKs and distribute them securely to users.

docs/Configuration-Properties.md

Lines changed: 24 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -26,24 +26,33 @@ The PowerAuth Server uses the following public configuration properties:
2626

2727
## Activation and Cryptography Configuration
2828

29-
| Property | Default | Note |
30-
|---|---|---|
31-
| `powerauth.service.crypto.activationValidityInMilliseconds` | `120000` | Default activation validity period in miliseconds |
32-
| `powerauth.service.crypto.signatureMaxFailedAttempts` | `5` | Maximum failed attempts for signature verification |
33-
| `powerauth.service.token.timestamp.validity` | `7200000` |PowerAuth MAC token timestamp validity in miliseconds |
34-
| `powerauth.service.recovery.maxFailedAttempts` | `5` | Maximum failed attempts for activation recovery |
35-
| `powerauth.service.secureVault.enableBiometricAuthentication` | `false` | Whether biometric authentication is enabled when accessing Secure Vault |
36-
| `powerauth.server.db.master.encryption.key` | `_empty_` | Master DB encryption key for decryption of server private key in database |
29+
| Property | Default | Note |
30+
|--------------------------------------------------------------------|-----------|-----------------------------------------------------------------------------------------|
31+
| `powerauth.service.crypto.activationValidityInMilliseconds` | `120000` | Default activation validity period in miliseconds |
32+
| `powerauth.service.crypto.signatureMaxFailedAttempts` | `5` | Maximum failed attempts for signature verification |
33+
| `powerauth.service.crypto.requestExpirationInMilliseconds` | `60000` | Expiration for ECIES and MAC token requests. |
34+
| `powerauth.service.crypto.requestExpirationInMillisecondsExtended` | `7200000` | Expiration for ECIES and MAC token requests for protocol versions 3.1 and older. |
35+
| `powerauth.service.crypto.replayVerificationService` | `default` | Request replay verification service, options: `default`, `none` |
36+
| `powerauth.service.token.timestamp.validity` | `7200000` | PowerAuth MAC token timestamp validity in miliseconds |
37+
| `powerauth.service.recovery.maxFailedAttempts` | `5` | Maximum failed attempts for activation recovery |
38+
| `powerauth.service.secureVault.enableBiometricAuthentication` | `false` | Whether biometric authentication is enabled when accessing Secure Vault |
39+
| `powerauth.server.db.master.encryption.key` | `_empty_` | Master DB encryption key for decryption of server private key in database |
40+
| `powerauth.service.proximity-check.otp.length` | `8` | Length of OTP generated for proximity check |
41+
| `powerauth.service.pagination.default-page-size` | `100` | The default number of records per page when paginated results are requested |
42+
| `powerauth.service.pagination.default-page-number` | `0` | The default page number when paginated results are requested. Page numbers start from 0 |
3743

3844
## HTTP Configuration
3945

40-
| Property | Default | Note |
41-
|---|---|---|
42-
| `powerauth.service.http.proxy.enabled` | `false` | Whether proxy is enabled for outgoing HTTP requests |
43-
| `powerauth.service.http.proxy.host` | `127.0.0.1` | Proxy host for outgoing HTTP requests |
44-
| `powerauth.service.http.proxy.port` | `8080` | Proxy port for outgoing HTTP requests |
45-
| `powerauth.service.http.proxy.username` | `_emtpy_` | Proxy username for outgoing HTTP requests |
46-
| `powerauth.service.http.proxy.password` | `_empty_` | Proxy password for outgoing HTTP requests |
46+
| Property | Default | Note |
47+
|---------------------------------------------------|-------------|-----------------------------------------------------|
48+
| `powerauth.service.http.proxy.enabled` | `false` | Whether proxy is enabled for outgoing HTTP requests |
49+
| `powerauth.service.http.proxy.host` | `127.0.0.1` | Proxy host for outgoing HTTP requests |
50+
| `powerauth.service.http.proxy.port` | `8080` | Proxy port for outgoing HTTP requests |
51+
| `powerauth.service.http.proxy.username` | `_emtpy_` | Proxy username for outgoing HTTP requests |
52+
| `powerauth.service.http.proxy.password` | `_empty_` | Proxy password for outgoing HTTP requests |
53+
| `powerauth.service.http.connection.timeout` | `5s` | HTTP connection timeout |
54+
| `powerauth.service.http.response.timeout` | `60s` | HTTP response timeout |
55+
| `powerauth.service.http.connection.max-idle-time` | `200s` | HTTP max idle time |
4756

4857
## Spring Vault Configuration
4958

0 commit comments

Comments
 (0)