Replaced the instances of Keycloak with {{book.project.name}}
This commit is contained in:
parent
87daf5932c
commit
9a0ea41618
13 changed files with 35 additions and 35 deletions
|
@ -1,12 +1,12 @@
|
||||||
== Migration from older versions
|
== Migration from older versions
|
||||||
|
|
||||||
To upgrade to a new version of Keycloak first download and install the new version of Keycloak.
|
To upgrade to a new version of {{book.project.name}} first download and install the new version of {{book.project.name}}.
|
||||||
You then have to migrate the database, keycloak-server.json, providers, themes and applications from the old version.
|
You then have to migrate the database, keycloak-server.json, providers, themes and applications from the old version.
|
||||||
|
|
||||||
=== Migrate database
|
=== Migrate database
|
||||||
|
|
||||||
Keycloak provides automatic migration of the database.
|
{{book.project.name}} provides automatic migration of the database.
|
||||||
It's highly recommended that you backup your database prior to upgrading Keycloak.
|
It's highly recommended that you backup your database prior to upgrading {{book.project.name}}.
|
||||||
|
|
||||||
To enable automatic upgrading of the database if you're using a relational database make sure `databaseSchema` is set to `update` for `connectionsJpa`:
|
To enable automatic upgrading of the database if you're using a relational database make sure `databaseSchema` is set to `update` for `connectionsJpa`:
|
||||||
|
|
||||||
|
@ -54,8 +54,8 @@ If there is you may have to update your themes accordingly.
|
||||||
|
|
||||||
=== Migrate application
|
=== Migrate application
|
||||||
|
|
||||||
If you deploy applications directly to the Keycloak server you should copy them to the new server.
|
If you deploy applications directly to the {{book.project.name}} server you should copy them to the new server.
|
||||||
For any applications including those not deployed directly to the Keycloak server you should upgrade the adapter.
|
For any applications including those not deployed directly to the {{book.project.name}} server you should upgrade the adapter.
|
||||||
The version specific section below will mention if any changes are required to applications.
|
The version specific section below will mention if any changes are required to applications.
|
||||||
|
|
||||||
=== Version specific migration
|
=== Version specific migration
|
||||||
|
@ -68,10 +68,10 @@ We've moved the themes and providers directories from `standalone/configuration/
|
||||||
If you have added custom themes and providers you need to move them to the new location.
|
If you have added custom themes and providers you need to move them to the new location.
|
||||||
You also need to update `keycloak-server.json` as it's changed due to this.
|
You also need to update `keycloak-server.json` as it's changed due to this.
|
||||||
|
|
||||||
===== Adapter Subsystems only bring in dependencies if keycloak is on
|
===== Adapter Subsystems only bring in dependencies if {{book.project.name}} is on
|
||||||
|
|
||||||
Previously, if you had installed our saml or oidc keycloak subsystem adapters into Wildfly or JBoss EAP, we would automatically include Keycloak client jars into EVERY application irregardless if you were using Keycloak or not.
|
Previously, if you had installed our saml or oidc keycloak subsystem adapters into Wildfly or JBoss EAP, we would automatically include {{book.project.name}} client jars into EVERY application irregardless if you were using {{book.project.name}} or not.
|
||||||
These libraries are now only added to your deployment if you have keycloak authentication turned on for that adapter (via the subsystem, or auth-method in web.xml
|
These libraries are now only added to your deployment if you have {{book.project.name}} authentication turned on for that adapter (via the subsystem, or auth-method in web.xml
|
||||||
|
|
||||||
===== Client Registration service endpoints moved
|
===== Client Registration service endpoints moved
|
||||||
|
|
||||||
|
@ -104,7 +104,7 @@ You can turn off this behavior check adapter config switches.
|
||||||
|
|
||||||
===== SAML SP Client Adapter Changes
|
===== SAML SP Client Adapter Changes
|
||||||
|
|
||||||
Keycloak SAML SP Client Adapter now requires a specific endpoint, `/saml` to be registered with your IDP.
|
{{book.project.name}} SAML SP Client Adapter now requires a specific endpoint, `/saml` to be registered with your IDP.
|
||||||
|
|
||||||
==== Migrating to 1.8.0
|
==== Migrating to 1.8.0
|
||||||
|
|
||||||
|
@ -139,11 +139,11 @@ The `Direct Grants Only` flag was removed as if you enable Direct Access Grants
|
||||||
|
|
||||||
We also added builtin client `admin-cli` to each realm.
|
We also added builtin client `admin-cli` to each realm.
|
||||||
This client has `Direct Access Grants` enabled.
|
This client has `Direct Access Grants` enabled.
|
||||||
So if you're using Admin REST API or Keycloak admin-client, you should update your configuration to use `admin-cli` instead of `security-admin-console` as the latter one doesn't have direct access grants enabled anymore by default.
|
So if you're using Admin REST API or {{book.project.name}} admin-client, you should update your configuration to use `admin-cli` instead of `security-admin-console` as the latter one doesn't have direct access grants enabled anymore by default.
|
||||||
|
|
||||||
===== Option 'Update Profile On First Login' moved from Identity provider to Review Profile authenticator
|
===== Option 'Update Profile On First Login' moved from Identity provider to Review Profile authenticator
|
||||||
|
|
||||||
In this version, we added `First Broker Login`, which allows you to specify what exactly should be done when new user is logged through Identity provider (or Social provider), but there is no existing Keycloak user yet linked to the social account.
|
In this version, we added `First Broker Login`, which allows you to specify what exactly should be done when new user is logged through Identity provider (or Social provider), but there is no existing {{book.project.name}} user yet linked to the social account.
|
||||||
As part of this work, we added option `First Login Flow` to identity providers where you can specify the flow and then you can configure this flow under `Authentication` tab in admin console.
|
As part of this work, we added option `First Login Flow` to identity providers where you can specify the flow and then you can configure this flow under `Authentication` tab in admin console.
|
||||||
|
|
||||||
We also removed the option `Update Profile On First Login` from the Identity provider settings and moved it to the configuration of `Review Profile` authenticator.
|
We also removed the option `Update Profile On First Login` from the Identity provider settings and moved it to the configuration of `Review Profile` authenticator.
|
||||||
|
@ -166,8 +166,8 @@ So if you want to have any attribute available in `Review Profile` page, you wou
|
||||||
|
|
||||||
===== Option that refresh tokens are not reusable anymore
|
===== Option that refresh tokens are not reusable anymore
|
||||||
|
|
||||||
Old versions of Keycloak allowed reusing refresh tokens multiple times.
|
Old versions of {{book.project.name}} allowed reusing refresh tokens multiple times.
|
||||||
Keycloak still permits this, but also have an option `Revoke refresh token` to disallow it.
|
{{book.project.name}} still permits this, but also have an option `Revoke refresh token` to disallow it.
|
||||||
Option is in in admin console under token settings.
|
Option is in in admin console under token settings.
|
||||||
When a refresh token is used to obtain a new access token a new refresh token is also included.
|
When a refresh token is used to obtain a new access token a new refresh token is also included.
|
||||||
When option is enabled, then this new refresh token should be used next time the access token is refreshed.
|
When option is enabled, then this new refresh token should be used next time the access token is refreshed.
|
||||||
|
@ -243,7 +243,7 @@ Changes are really minor, but were needed to improve performance of federation.
|
||||||
|
|
||||||
===== WildFly 9.0.0.Final
|
===== WildFly 9.0.0.Final
|
||||||
|
|
||||||
Following on from the distribution changes that was done in the last release the standalone download of Keycloak is now based on WildFly 9.0.0.Final.
|
Following on from the distribution changes that was done in the last release the standalone download of {{book.project.name}} is now based on WildFly 9.0.0.Final.
|
||||||
This als affects the overlay which can only be deployed to WildFly 9.0.0.Final or JBoss EAP 6.4.0.GA.
|
This als affects the overlay which can only be deployed to WildFly 9.0.0.Final or JBoss EAP 6.4.0.GA.
|
||||||
WildFly 8.2.0.Final is no longer supported for the server.
|
WildFly 8.2.0.Final is no longer supported for the server.
|
||||||
|
|
||||||
|
@ -267,11 +267,11 @@ See
|
||||||
|
|
||||||
===== Distribution changes
|
===== Distribution changes
|
||||||
|
|
||||||
Keycloak is now available in 3 downloads: standalone, overlay and demo bundle.
|
{{book.project.name}} is now available in 3 downloads: standalone, overlay and demo bundle.
|
||||||
The standalone is intended for production and non-JEE developers.
|
The standalone is intended for production and non-JEE developers.
|
||||||
Overlay is aimed at adding Keycloak to an existing WildFly 8.2 or EAP 6.4 installation and is mainly for development.
|
Overlay is aimed at adding {{book.project.name}} to an existing WildFly 8.2 or EAP 6.4 installation and is mainly for development.
|
||||||
Finally we have a demo (or dev) bundle that is aimed at developers getting started with Keycloak.
|
Finally we have a demo (or dev) bundle that is aimed at developers getting started with {{book.project.name}}.
|
||||||
This bundle contains a WildFly server, with Keycloak server and adapter included.
|
This bundle contains a WildFly server, with {{book.project.name}} server and adapter included.
|
||||||
It also contains all documentation and examples.
|
It also contains all documentation and examples.
|
||||||
|
|
||||||
===== Database changed
|
===== Database changed
|
||||||
|
@ -336,7 +336,7 @@ Again you don't need to care about migration of database from previous version s
|
||||||
Both configuration of social providers and "social links" to your users will be converted to corresponding Identity providers.
|
Both configuration of social providers and "social links" to your users will be converted to corresponding Identity providers.
|
||||||
|
|
||||||
Only required action from you would be to change allowed `Redirect URI` in the admin console of particular 3rd party social providers.
|
Only required action from you would be to change allowed `Redirect URI` in the admin console of particular 3rd party social providers.
|
||||||
You can first go to the Keycloak admin console and copy Redirect URI from the page where you configure the identity provider.
|
You can first go to the {{book.project.name}} admin console and copy Redirect URI from the page where you configure the identity provider.
|
||||||
Then you can simply paste this as allowed Redirect URI to the admin console of 3rd party provider (IE.
|
Then you can simply paste this as allowed Redirect URI to the admin console of 3rd party provider (IE.
|
||||||
Facebook admin console).
|
Facebook admin console).
|
||||||
|
|
||||||
|
@ -402,7 +402,7 @@ Facebook admin console).
|
||||||
|
|
||||||
* DB Schema has changed. We have added export of the database to Beta 1, but not the ability to import
|
* DB Schema has changed. We have added export of the database to Beta 1, but not the ability to import
|
||||||
the database from older versions. This will be supported in future releases.
|
the database from older versions. This will be supported in future releases.
|
||||||
* For all clients except bearer-only applications, you must specify at least one redirect uri. Keycloak
|
* For all clients except bearer-only applications, you must specify at least one redirect uri. {{book.project.name}}
|
||||||
will not allow you to log in unless you have specified a valid redirect uri for that application.
|
will not allow you to log in unless you have specified a valid redirect uri for that application.
|
||||||
* Direct Grant API
|
* Direct Grant API
|
||||||
+`ON`
|
+`ON`
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
|
|
||||||
For scenarios where one wants to link from one client to another, {{book.project.name}} provides a special redirect endpoint: `/realms/realm_name/clients/\{client-id}/redirect`.
|
For scenarios where one wants to link from one client to another, {{book.project.name}} provides a special redirect endpoint: `/realms/realm_name/clients/\{client-id}/redirect`.
|
||||||
|
|
||||||
If a client accesses this endpoint via an `HTTP GET` request, Keycloak returns the configured base URL for the provided Client and Realm in the form of an `HTTP 307` (Temporary Redirect) via the response's `Location` header.
|
If a client accesses this endpoint via an `HTTP GET` request, {{book.project.name}} returns the configured base URL for the provided Client and Realm in the form of an `HTTP 307` (Temporary Redirect) via the response's `Location` header.
|
||||||
|
|
||||||
Thus, a client only needs to know the Realm name and the Client ID in order to link to them.
|
Thus, a client only needs to know the Realm name and the Client ID in order to link to them.
|
||||||
This indirection helps avoid hard-coding client base URLs.
|
This indirection helps avoid hard-coding client base URLs.
|
||||||
|
|
|
@ -56,7 +56,7 @@ Include AuthnStatement::
|
||||||
Setting this to on will include that statement in the response document.
|
Setting this to on will include that statement in the response document.
|
||||||
|
|
||||||
Sign Documents::
|
Sign Documents::
|
||||||
When turned on, Keycloak will sign the document using the realm's private key.
|
When turned on, {{book.project.name}} will sign the document using the realm's private key.
|
||||||
|
|
||||||
Sign Assertions::
|
Sign Assertions::
|
||||||
The `Sign Documents` switch signs the whole document.
|
The `Sign Documents` switch signs the whole document.
|
||||||
|
|
|
@ -8,7 +8,7 @@ To use this feature you must set the <<fake/../../../clients/client-oidc.adoc#_a
|
||||||
the `Service Accounts Enabled` switch will appear. You need to turn on this switch. Also make sure that you have
|
the `Service Accounts Enabled` switch will appear. You need to turn on this switch. Also make sure that you have
|
||||||
configured your <<fake/../../../clients/oidc/confidential.adoc#_client-credentials, client credentials>>.
|
configured your <<fake/../../../clients/oidc/confidential.adoc#_client-credentials, client credentials>>.
|
||||||
|
|
||||||
To use it you must have registered a valid `confidential` Client and you need to check the switch `Service Accounts Enabled` in Keycloak admin console for this client.
|
To use it you must have registered a valid `confidential` Client and you need to check the switch `Service Accounts Enabled` in {{book.project.name}} admin console for this client.
|
||||||
In tab `Service Account Roles` you can configure the roles available to the service account retrieved on behalf of this client.
|
In tab `Service Account Roles` you can configure the roles available to the service account retrieved on behalf of this client.
|
||||||
Don't forget that you need those roles to be available in Scopes of this client as well (unless you have `Full Scope Allowed` on). As in normal login, roles from access token are intersection of scopes and the service account roles.
|
Don't forget that you need those roles to be available in Scopes of this client as well (unless you have `Full Scope Allowed` on). As in normal login, roles from access token are intersection of scopes and the service account roles.
|
||||||
|
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
|
|
||||||
==== IDP Initiated Login
|
==== IDP Initiated Login
|
||||||
|
|
||||||
IDP Initiated Login is a feature that where you can set up a URL on the Keycloak server that will log you into a specific application/client.
|
IDP Initiated Login is a feature that where you can set up a URL on the {{book.project.name}} server that will log you into a specific application/client.
|
||||||
In the `Settings` tab for your client, you need to specify the `IDP Initiated SSO URL Name`.
|
In the `Settings` tab for your client, you need to specify the `IDP Initiated SSO URL Name`.
|
||||||
This is a simple string with no whitespace in it.
|
This is a simple string with no whitespace in it.
|
||||||
After this you can reference your client at the following URL: `root/auth/realms/{realm}/protocol/saml/clients/{url-name}`
|
After this you can reference your client at the following URL: `root/auth/realms/{realm}/protocol/saml/clients/{url-name}`
|
||||||
|
|
|
@ -22,7 +22,7 @@ The flow itself is configured in admin console under `Authentication` tab.
|
||||||
When you choose `First Broker Login` flow, you will see what authenticators are used by default.
|
When you choose `First Broker Login` flow, you will see what authenticators are used by default.
|
||||||
You can either re-configure existing flow (For example disable some authenticators, mark some of them as `required`, configure some authenticators etc).
|
You can either re-configure existing flow (For example disable some authenticators, mark some of them as `required`, configure some authenticators etc).
|
||||||
Or you can even create new authentication flow and/or write your own Authenticator implementations and use it in your flow.
|
Or you can even create new authentication flow and/or write your own Authenticator implementations and use it in your flow.
|
||||||
See link:{{book.developerguide.link}}[{{book.developerguide.name}} for more details.
|
See link:{{book.developerguide.link}}[{{book.developerguide.name}}] for more details.
|
||||||
|
|
||||||
==== Default First Login Flow
|
==== Default First Login Flow
|
||||||
|
|
||||||
|
|
|
@ -26,11 +26,11 @@ image:../../images/identity_broker_flow.png[]
|
||||||
If valid, it will import and create a new user or just skip that if the user already exists.
|
If valid, it will import and create a new user or just skip that if the user already exists.
|
||||||
If it is a new user, {{book.project.name}} may ask the identity provider for information about the user if that info doesn't already exist in the token.
|
If it is a new user, {{book.project.name}} may ask the identity provider for information about the user if that info doesn't already exist in the token.
|
||||||
This is what we call _identity federation_.
|
This is what we call _identity federation_.
|
||||||
If the user already exists Keycloak may ask him to link the identity returned from the identity provider with his existing account.
|
If the user already exists {{book.project.name}} may ask him to link the identity returned from the identity provider with his existing account.
|
||||||
A process that we call _account linking_.
|
A process that we call _account linking_.
|
||||||
What exactly is done is configurable and can be specified by setup of <<fake/../../identity-broker/first-login-flow.adoc#_identity_broker_first_login,First Login Flow>> . At the end of this step, Keycloak authenticates the user and issues its own token in order to access the requested resource in the service provider.
|
What exactly is done is configurable and can be specified by setup of <<fake/../../identity-broker/first-login-flow.adoc#_identity_broker_first_login,First Login Flow>> . At the end of this step, {{book.project.name}} authenticates the user and issues its own token in order to access the requested resource in the service provider.
|
||||||
. Once the user is locally authenticated, Keycloak redirects the user to the service provider by sending the token previously issued during the local authentication.
|
. Once the user is locally authenticated, {{book.project.name}} redirects the user to the service provider by sending the token previously issued during the local authentication.
|
||||||
. The service provider receives the token from Keycloak and allows access to the protected resource.
|
. The service provider receives the token from {{book.project.name}} and allows access to the protected resource.
|
||||||
|
|
||||||
There are some variations of this flow that we will talk about later.
|
There are some variations of this flow that we will talk about later.
|
||||||
For instance, instead of presenting a list of identity providers, the client application request a specific one.
|
For instance, instead of presenting a list of identity providers, the client application request a specific one.
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
|
|
||||||
=== Available User Session Data
|
=== Available User Session Data
|
||||||
|
|
||||||
After a user logs in from the external IDP, there's some additional user session note data that Keycloak stores that you can access.
|
After a user logs in from the external IDP, there's some additional user session note data that {{book.project.name}} stores that you can access.
|
||||||
This data can be propagated to the client requesting a login via the token or SAML assertion being passed back to it by using an appropriate client mapper.
|
This data can be propagated to the client requesting a login via the token or SAML assertion being passed back to it by using an appropriate client mapper.
|
||||||
|
|
||||||
BROKER_PROVIDER_ID::
|
BROKER_PROVIDER_ID::
|
||||||
|
|
|
@ -18,7 +18,7 @@ Authorization: Bearer {keycloak_access_token}
|
||||||
An application must have authenticated with {{book.project.name}} and have received an access token. This access token
|
An application must have authenticated with {{book.project.name}} and have received an access token. This access token
|
||||||
will need to have the `broker` client-level role `read-token` set. This means that the user must have a role mapping for this role
|
will need to have the `broker` client-level role `read-token` set. This means that the user must have a role mapping for this role
|
||||||
and the client application must have that role within its scope.
|
and the client application must have that role within its scope.
|
||||||
In this case, given that you are accessing an protected service in Keycloak, you need to send the access token issued by Keycloak during the user authentication.
|
In this case, given that you are accessing an protected service in {{book.project.name}}, you need to send the access token issued by {{book.project.name}} during the user authentication.
|
||||||
|
|
||||||
In the broker configuration page you can automatically assign this role to newly imported users by turning on the `Stored Tokens Readable` switch.
|
In the broker configuration page you can automatically assign this role to newly imported users by turning on the `Stored Tokens Readable` switch.
|
||||||
|
|
||||||
|
|
|
@ -26,7 +26,7 @@
|
||||||
* Deployable as a WAR, appliance, or on Openshift. Completely clusterable.
|
* Deployable as a WAR, appliance, or on Openshift. Completely clusterable.
|
||||||
* Multitenancy support. You can host and manage multiple realms for multiple organizations. In the same auth server
|
* Multitenancy support. You can host and manage multiple realms for multiple organizations. In the same auth server
|
||||||
and even within the same deployed application.
|
and even within the same deployed application.
|
||||||
* Identity brokering/chaining. You can make the Keycloak server a child IDP to another SAML 2.0 or OpenID Connect IDP.
|
* Identity brokering/chaining. You can make the {{book.project.name}} server a child IDP to another SAML 2.0 or OpenID Connect IDP.
|
||||||
* Token claim, assertion, and attribute mappings. You can map user attributes, roles, and role names however you want
|
* Token claim, assertion, and attribute mappings. You can map user attributes, roles, and role names however you want
|
||||||
into a OIDC ID Token, Access Token, SAML attribute statements, etc. This feature allows you to basically
|
into a OIDC ID Token, Access Token, SAML attribute statements, etc. This feature allows you to basically
|
||||||
tailor how you want auth responses to look.
|
tailor how you want auth responses to look.
|
||||||
|
|
|
@ -5,7 +5,7 @@ An attacker could use the end-user authorization endpoint and the redirect URI p
|
||||||
An open redirector is an endpoint using a parameter to automatically redirect a user agent to the location specified by the parameter value without any validation.
|
An open redirector is an endpoint using a parameter to automatically redirect a user agent to the location specified by the parameter value without any validation.
|
||||||
An attacker could utilize a user's trust in an authorization server to launch a phishing attack.
|
An attacker could utilize a user's trust in an authorization server to launch a phishing attack.
|
||||||
|
|
||||||
Keycloak requires that all registered applications and clients register at least one redirection uri pattern.
|
{{book.project.name}} requires that all registered applications and clients register at least one redirection uri pattern.
|
||||||
Any time a client asks {{book.project.name}} to perform a redirect (on login or logout for example), {{book.project.name}} will check the redirect uri vs.
|
Any time a client asks {{book.project.name}} to perform a redirect (on login or logout for example), {{book.project.name}} will check the redirect uri vs.
|
||||||
the list of valid registered uri patterns.
|
the list of valid registered uri patterns.
|
||||||
It is important that clients and applications register as specific a URI pattern as possible to mitigate open redirector attacks.
|
It is important that clients and applications register as specific a URI pattern as possible to mitigate open redirector attacks.
|
||||||
|
|
|
@ -6,7 +6,7 @@ OAuth 2.0/OpenID Connect uses access tokens for security.
|
||||||
Without SSL/HTTPS, attackers can sniff your network and obtain an access token.
|
Without SSL/HTTPS, attackers can sniff your network and obtain an access token.
|
||||||
Once they have an access token they can do any operation that the token has been given permission for.
|
Once they have an access token they can do any operation that the token has been given permission for.
|
||||||
|
|
||||||
Keycloak has <<fake/../../realms/ssl.adoc#_ssl_modes,three modes for SSL/HTTPS>>.
|
{{book.project.name}} has <<fake/../../realms/ssl.adoc#_ssl_modes,three modes for SSL/HTTPS>>.
|
||||||
SSL can be hard to set up, so out of the box, {{book.project.name}} allows non-HTTPS communication over private IP addresses like
|
SSL can be hard to set up, so out of the box, {{book.project.name}} allows non-HTTPS communication over private IP addresses like
|
||||||
localhost, 192.168.x.x, and other private IP addresses.
|
localhost, 192.168.x.x, and other private IP addresses.
|
||||||
In production, you should make sure SSL is enabled and required across the board.
|
In production, you should make sure SSL is enabled and required across the board.
|
||||||
|
|
|
@ -57,7 +57,7 @@ When you configure a secured connection URL to your LDAP store(for example `ldap
|
||||||
The important thing is to properly configure a truststore on the {{book.project.name}} server side, because SSL won't work
|
The important thing is to properly configure a truststore on the {{book.project.name}} server side, because SSL won't work
|
||||||
if {{book.project.name}} can't trust the SSL connection with LDAP ({{book.project.name}}.
|
if {{book.project.name}} can't trust the SSL connection with LDAP ({{book.project.name}}.
|
||||||
|
|
||||||
The global truststore for the {{book.project.name}} can be configured with Truststore SPI. Please check out the link:{{book.installguide.link}}[book.installguide.name}} for more detail.
|
The global truststore for the {{book.project.name}} can be configured with Truststore SPI. Please check out the link:{{book.installguide.link}}[book.installguide.name}}] for more detail.
|
||||||
If you don't configure truststore SPI, the truststore will fallback to the default mechanism provided by Java (either the file provided by system property `javax.net.ssl.trustStore`
|
If you don't configure truststore SPI, the truststore will fallback to the default mechanism provided by Java (either the file provided by system property `javax.net.ssl.trustStore`
|
||||||
or the cacerts file from JDK if the system property is not set).
|
or the cacerts file from JDK if the system property is not set).
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue