From fc9db571d3e96fbfee0bf52c0bed1005f3738e28 Mon Sep 17 00:00:00 2001 From: mposolda Date: Thu, 25 Oct 2018 21:39:26 +0200 Subject: [PATCH] KEYCLOAK-8484 Audience changes due removing client scope template --- .../audience_client-scope-creating.png | Bin 50468 -> 0 bytes .../audience_client-scope-creating.png | Bin 44130 -> 0 bytes .../topics/clients/oidc/audience.adoc | 62 ++++++++++-------- upgrading/topics/keycloak/changes.adoc | 5 +- 4 files changed, 38 insertions(+), 29 deletions(-) delete mode 100644 server_admin/keycloak-images/audience_client-scope-creating.png delete mode 100644 server_admin/rhsso-images/audience_client-scope-creating.png diff --git a/server_admin/keycloak-images/audience_client-scope-creating.png b/server_admin/keycloak-images/audience_client-scope-creating.png deleted file mode 100644 index 40a638517108c82c7a9e9f4c90f84a6aef9c598b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 50468 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

+5botvR?ufP6yKP8!r*gUJ9@ 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 Gdj1Cv-u{>X diff --git a/server_admin/topics/clients/oidc/audience.adoc b/server_admin/topics/clients/oidc/audience.adoc index 3266fed7e6..1c3ae678f8 100644 --- a/server_admin/topics/clients/oidc/audience.adoc +++ b/server_admin/topics/clients/oidc/audience.adoc @@ -70,22 +70,43 @@ To properly set up audience checking: in the adapter configuration. See link:{adapterguide_link}#_java_adapter_config[Adapter configuration] for details. * Ensure that when an access token is issued by {project_name}, it contains all requested audiences and does not contain any - audiences that are not needed. This is described below in more details. + audiences that are not needed. The audience can be either automatically added due the client roles as described + in the <<_audience_resolve, next section>> or it can be hardcoded as described <<_audience_hardcoded, below>>. -As an example, let us assume that you have a bearer-only client `good-service`. Set up {project_name} for audience support like this: +[[_audience_resolve]] +===== Automatically add audience -* Log in to the admin console. Go to the _Client Scopes_ tab on the left and click _Create_. +In the default client scope _roles_, there is an _Audience Resolve_ +protocol mapper defined. This protocol mapper will check all the clients for which current token has at least one client role +available. Then the client ID of each of those clients will be added as an audience automatically. This is especially useful if +your service (usually bearer-only) clients rely on client roles. -* Choose the _Audience template_. +As an example, let us assume that you have a bearer-only client `good-service` and the confidential client `my-app`, which you want +to authenticate and then use the access token issued for the `my-app` to invoke the `good-service` REST service. If the following +are true: -* Select `good-service` as the requested audience +* The `good-service` client has any client roles defined on itself -.Creating Audience Client Scope -image:{project_images}/audience_client-scope-creating.png[] +* Target user has at least one of those client roles assigned -* When the client scope is created, you should confirm that it contains: -** An audience protocol mapper, which is used for adding the `good-service` as an audience to the access token. See the figure below. -** Role scope mappings for all the client roles of `good-service` client. +* Client `my-app` has the role scope mappings for the assigned role + +then the `good-service` will be automatically added as an audience to the access token issued for the `my-app`. + +NOTE: If you want to ensure that audience is not added automatically, do not configure role scope mappings directly +on the `my-app` client, but instead create a dedicated client scope, for example called `good-service`, which will contain the role scope mappings +for the client roles of the `good-service` client. Assuming that this client scope will be added as an optional client scope to +the `my-app` client, the client roles and audience will be added to the token just if explicitly requested by the `scope=good-service` parameter. + +[[_audience_hardcoded]] +===== Hardcoded audience + +For the case when your service relies on realm roles or does not rely on the roles in the token at all, it can be useful to use hardcoded +audience. This is a protocol mapper, which will add client ID of the specified service client as an audience to the token. +You can even use any custom value, for example some URL, if you want different audience than client ID. + +You can add protocol mapper directly to the frontend client, however than the audience will be always added. If you want more fine-grain +control, you can create protocol mapper on the dedicated client scope, which will be called for example `good-service`. .Audience Protocol Mapper image:{project_images}/audience_mapper.png[] @@ -108,25 +129,12 @@ image:{project_images}/audience_mapper.png[] adapter, or the link:{adapterguide_link}#_javascript_adapter[javascript adapter section], if your application uses the javascript adapter. -[[_audience_resolve]] -===== Automatically add audience - -There is another way that the audience can be added to the token. In the default client scope _roles_, there is an _Audience Resolve_ -protocol mapper defined. This protocol mapper will check all the clients for which current token has at least one client role -available. Then the client ID of each of those clients will be added as an audience automatically. This is especially useful if -your service (usually bearer-only) clients rely on client roles. In the example in previous section, if all of those are true: - -* The `good-service` client has any client role defined on itself - -* Target user has this client role assigned - -* Client `my-app` has the role scope mappings for this role - -then the `good-service` will be automatically added as an audience. In this case, you do not need to set up the audience client -scope as described in the previous section. - NOTE: If you are unsure what the correct audience and roles in the token will be, it is always a good idea to <<_client_scopes_evaluate, Evaluate Client Scopes>> in the admin console and do some testing around it. +NOTE: Both the _Audience_ and _Audience Resolve_ protocol mappers add the audiences just to the access token by default. The ID Token +typically contains only single audience, which is the client ID of the client for which the token was issued. This is a requirement +of the OpenID Connect specification. On the other hand, the access token does not necessarily have the client ID of the client, +which was the token issued for, unless any of the audience mappers added it. diff --git a/upgrading/topics/keycloak/changes.adoc b/upgrading/topics/keycloak/changes.adoc index c3ecc03316..a7b2f1fb41 100644 --- a/upgrading/topics/keycloak/changes.adoc +++ b/upgrading/topics/keycloak/changes.adoc @@ -11,14 +11,15 @@ migration is finished. ===== Protocol mapper SPI addition Related to this, there is a small addition in the (unsupported) Protocol Mappers SPI. You can be affected only if you -implemented a custom ProtocolMapper. There is a new `getPriority()`` method on the ProtocolMapper interface. The method has the +implemented a custom ProtocolMapper. There is a new `getPriority()` method on the ProtocolMapper interface. The method has the default implementation set to return 0. If your protocol mapper implementation relies on the roles in the access token `realmAccess` or `resourceAccess` properties, you may need to increase the priority of your mapper. ===== Audience resolving Audiences of all the clients, for which authenticated user has at least one client role in the token, are automatically added -to the `aud` claim in the access token now. +to the `aud` claim in the access token now. On the other hand, an access token may not automatically contain the audience of the +frontend client, for which it was issued. Read the link:{adminguide_link}#_audience[{adminguide_name}] for more details. ==== JavaScipt Adapter Promise