From a6f6080af43c0b226610c3c864c693da05574aff Mon Sep 17 00:00:00 2001 From: Pedro Igor Date: Fri, 3 Jun 2016 01:05:18 -0300 Subject: [PATCH] Initial getting started tutorials --- SUMMARY.adoc | 4 +- images/gs-authz-hello-rs-created-page.png | Bin 0 -> 75475 bytes images/gs-keycloak-authz-create-rs-page.png | Bin 0 -> 67888 bytes images/gs-keycloak-authz-page.png | Bin 0 -> 43935 bytes images/gs-keycloak-console-page.png | Bin 0 -> 65106 bytes topics/getting-started/getting-started.adoc | 12 + .../hello-world-create-realm.adoc | 202 ++++++++++ .../hello-world-entitlement.adoc | 1 + topics/getting-started/hello-world-uma.adoc | 126 +++++++ topics/getting-started/hello-world.adoc | 350 ++++++++++++++++++ 10 files changed, 694 insertions(+), 1 deletion(-) create mode 100644 images/gs-authz-hello-rs-created-page.png create mode 100644 images/gs-keycloak-authz-create-rs-page.png create mode 100644 images/gs-keycloak-authz-page.png create mode 100644 images/gs-keycloak-console-page.png create mode 100755 topics/getting-started/getting-started.adoc create mode 100755 topics/getting-started/hello-world-create-realm.adoc create mode 100755 topics/getting-started/hello-world-entitlement.adoc create mode 100755 topics/getting-started/hello-world-uma.adoc create mode 100755 topics/getting-started/hello-world.adoc diff --git a/SUMMARY.adoc b/SUMMARY.adoc index 4d143a7fcc..bec52f8634 100755 --- a/SUMMARY.adoc +++ b/SUMMARY.adoc @@ -2,7 +2,9 @@ . link:topics/overview/overview.adoc[Overview] .. link:topics/overview/architecture.adoc[Architecture] - .. link:topics/overview/terminology.adoc[Terminology] + .. link:topics/overview/terminology.adoc[Terminology] + . link:topics/getting-started/getting-started.adoc[Getting Started] + .. link:topics/getting-started/hello-world.adoc[Hello Authorization World] . link:topics/resource-server/overview.adoc[Managing Resource Servers] .. link:topics/resource-server/view.adoc[Viewing Resource Servers] .. link:topics/resource-server/create.adoc[Creating Resource Servers] diff --git a/images/gs-authz-hello-rs-created-page.png b/images/gs-authz-hello-rs-created-page.png new file mode 100644 index 0000000000000000000000000000000000000000..77ffda8a7ef4cb4fc25bc1333ab9383c19a62672 GIT binary patch literal 75475 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

M*jknU%S6y4lf#Sg6=zRe0i#9s5(S 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 aV~9^4+Z%z)jeBSPeXgvbRQ}h?*Z&`8Tgqnu literal 0 HcmV?d00001 diff --git a/images/gs-keycloak-authz-page.png b/images/gs-keycloak-authz-page.png new file mode 100644 index 0000000000000000000000000000000000000000..c72b923ecc1200cdc53927673cc2e6ae526eab1e GIT binary patch literal 43935 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 z%0D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 literal 0 HcmV?d00001 diff --git a/topics/getting-started/getting-started.adoc b/topics/getting-started/getting-started.adoc new file mode 100755 index 0000000000..412b84ede0 --- /dev/null +++ b/topics/getting-started/getting-started.adoc @@ -0,0 +1,12 @@ +== Getting Started + +The purpose of this guide is to get you up and running as quickly as possible so that you can play with and test drive various authorization features that {{book.project.name}} has. It will help +you to understand the basic steps to enable fine-grained authorization to an application and how to interact with the Authorization Services provided by {{book.project.name}}. + +[NOTE] +This guide assume that you are able to install and boot a {{book.project.name}} Server. For more information, please follow the intrusctions https://keycloak.gitbooks.io/getting-started-tutorials/content/[here]. + +Make sure you have a {{book.project.name}} instance up and running on http://localhost:8080/auth[http://localhost:8080/auth]. If everything is OK, you would be able to login to the +_Administration Console_ and get a page like that: + +image:../../images/gs-keycloak-console-page.png[alt="Keycloak Administration Console"] \ No newline at end of file diff --git a/topics/getting-started/hello-world-create-realm.adoc b/topics/getting-started/hello-world-create-realm.adoc new file mode 100755 index 0000000000..0962c385a7 --- /dev/null +++ b/topics/getting-started/hello-world-create-realm.adoc @@ -0,0 +1,202 @@ +=== Creating the Hello World AuthZ Realm + +For this guide, we are going to create a *hello-world-authz* realm. Just import the following JSON file to create the new realm: + +```json +{ + "realm" : "hello-world-authz", + "enabled" : true, + "privateKey" : "MIIEpQIBAAKCAQEAzMhNM9HXNQWhVf1m64zS67SIyQjj+tV5GR+MqlRTWDXdo8GAWHd+alY1urRhfRoqMy4F499+8wh2REKFykNt0ng6s6wWnEaKDboS3SAUV6lybcOAkwIOCtCZj1ItddKG3m64fzxDDQrcpkbiAvw3S8KJ4UJK+pyh9iX01duSDtM/HhPawsPdY8JSMfuo1IxQ2Vxw+8RKwbbdUeew6cyYGYAeFYwA66mlM3otB0RBHh4bjwg8297+2g53TdwM2rbCHRbrorMQD3031OTyFSp7lXCtoMLWRfAFnOP/2yZWZMXbiJheC0R3sLbU7Ef0/cUbYyk4Ckfq6pcYDR+VZBF7AwIDAQABAoIBAAwa4wVnKBOIS6srmYPfBTDNsTBBCEjxiYEErmn7JhoWxQ1DCPUxyxU6F177/q9Idqoj1FFOCtEO9P6/9+ym470HQmEQkR2Xxd1d3HOZy9oKuCro3ZbTDkVxY0JnlyxZz4MihGFxDH2e4MArfHy0sAgYbdIU+x2pWKGWSMzDd/TMSOExhc/sIQAg6ljbPCLLXCPQFAncoHRyGPrkRZs6UTZi5SJuCglVa2/3G+0drDdPuA83/mwsZfIBqQgbGbFgtq5T5C6CKMkPOQ42Rcclm7kEr6riTkJRo23EO1iOJVpxzI0tbxZsJAsW7zeqv0wWRyUgVfQAje6OdsNexp5aCtECgYEA6nMHCQ9xXvufCyzpIbYGxdAGqH6m1AR5gXerHqRiGNx+8UUt/E9cy/HTOhmZDK/eC4BT9tImeF01l1oSU/+wGKfux0SeAQchBhhq8GD6jmrtgczKAfZHp0Zrht7o9qu9KE7ZNWRmY1foJN9yNYmzY6qqHEy+zNo9amcqT7UZKO8CgYEA35sp9fMpMqkJE+NEJ9Ph/t2081BEkC0DYIuETZRSi+Ek5AliWTyEkg+oisTbWzi6fMQHS7W+M1SQP6djksLQNPP+353DKgup5gtKS+K/y2xNd7fSsNmkjW1bdJJpID7WzwwmwdahHxpcnFFuEXi5FkG3Vqmtd3cD0TYL33JlRy0CgYEA0+a3eybsDy9Zpp4m8IM3R98nxW8DlimdMLlafs2QpGvWiHdAgwWwF90wTxkHzgG+raKFQVbb0npcj7mnSyiUnxRZqt2H+eHZpUq4jR76F3LpzCGui2tvg+8QDMy4vwqmYyIxDCL8r9mqRnl3HpChBPoh2oY7BahTTjKEeZpzbR0CgYEAoNnVjX+mGzNNvGi4Fo5s/BIwoPcU20IGM+Uo/0W7O7Rx/Thi7x6BnzB0ZZ7GzRA51paNSQEsGXCzc5bOIjzR2cXLisDKK+zIAxwMDhrHLWZzM7OgdGeb38DTEUBhLzkE/VwYZUgoD1+/TxOkwhy9yCzt3gGhL1cF//GJCOwZvuECgYEAgsO4rdYScgCpsyePnHsFk+YtqtdORnmttF3JFcL3w2QneXuRwg2uW2Kfz8CVphrR9eOU0tiw38w6QTHIVeyRY8qqlHtiXj6dEYz7frh/k4hI29HwFx43rRpnAnN8kBEJYBYdbjaQ35Wsqkfu1tvHJ+6fxSwvQu/TVdGp0OfilAY=", + "publicKey" : "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAzMhNM9HXNQWhVf1m64zS67SIyQjj+tV5GR+MqlRTWDXdo8GAWHd+alY1urRhfRoqMy4F499+8wh2REKFykNt0ng6s6wWnEaKDboS3SAUV6lybcOAkwIOCtCZj1ItddKG3m64fzxDDQrcpkbiAvw3S8KJ4UJK+pyh9iX01duSDtM/HhPawsPdY8JSMfuo1IxQ2Vxw+8RKwbbdUeew6cyYGYAeFYwA66mlM3otB0RBHh4bjwg8297+2g53TdwM2rbCHRbrorMQD3031OTyFSp7lXCtoMLWRfAFnOP/2yZWZMXbiJheC0R3sLbU7Ef0/cUbYyk4Ckfq6pcYDR+VZBF7AwIDAQAB", + "certificate" : "MIICsTCCAZkCBgFVETX4AzANBgkqhkiG9w0BAQsFADAcMRowGAYDVQQDDBFIZWxsbyBXb3JsZCBBdXRoWjAeFw0xNjA2MDIxMzAxMzdaFw0yNjA2MDIxMzAzMTdaMBwxGjAYBgNVBAMMEUhlbGxvIFdvcmxkIEF1dGhaMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAzMhNM9HXNQWhVf1m64zS67SIyQjj+tV5GR+MqlRTWDXdo8GAWHd+alY1urRhfRoqMy4F499+8wh2REKFykNt0ng6s6wWnEaKDboS3SAUV6lybcOAkwIOCtCZj1ItddKG3m64fzxDDQrcpkbiAvw3S8KJ4UJK+pyh9iX01duSDtM/HhPawsPdY8JSMfuo1IxQ2Vxw+8RKwbbdUeew6cyYGYAeFYwA66mlM3otB0RBHh4bjwg8297+2g53TdwM2rbCHRbrorMQD3031OTyFSp7lXCtoMLWRfAFnOP/2yZWZMXbiJheC0R3sLbU7Ef0/cUbYyk4Ckfq6pcYDR+VZBF7AwIDAQABMA0GCSqGSIb3DQEBCwUAA4IBAQANm5gIT/c50lwjawM686gNXpppLA928WsCOn9NIIWjSKekP8Bf9S73kf7vWcsEppm5B8rRyRxolXmzwghv74L7uVDg8Injjgj+XbPVQP+cJqWpSaMZHF7UfWe0/4M945Xcbmsl5q+m9PmrPG0AaaZhqXHcp4ehB1H+awyRqiERpJUuwZNycw2+2kjDADpsFf8hZVUd1F6ReYyOkqUyUjbL+jYTC7ZBNa7Ok+w6HCXWgkgVATAgQXJRM3w14IOc5MH/vfMCrCl/eNQLbjGl9y7u8PKwh3MXHDO2OLqtg6hOTSrOGUPJZGmGtUAl+2/R7FzoWkML/BNe2hjsL6UJwg91", + "requiredCredentials" : [ "password" ], + "roles" : { + "realm" : [ + { + "name" : "uma_protection" + } + ] + }, + "users" : + [ + { + "username" : "alice", + "enabled" : true, + "credentials" : [ { + "type" : "password", + "value" : "password" + } ], + "clientRoles" : { + "hello-world-authz-service" : [ "uma_authorization" ] + } + }, + { + "username" : "jdoe", + "enabled" : true, + "credentials" : [ { + "type" : "password", + "value" : "password" + } ], + "clientRoles" : { + "hello-world-authz-service" : [ "uma_authorization" ] + } + }, + { + "username" : "service-account-hello-world-authz-service", + "enabled" : true, + "serviceAccountClientId" : "hello-world-authz-service", + "realmRoles" : [ "uma_protection"] + } + ], + "clients" : [ + { + "clientId" : "hello-world-authz-service", + "secret" : "password", + "serviceAccountsEnabled" : true, + "enabled" : true, + "redirectUris" : [ "http://localhost:8080/hello-world-authz-service" ], + "directAccessGrantsEnabled" : true, + "publicClient" : false + } + ] +} +``` +The realm *hello-world-authz* consists of: + +** Two users: _alice_ and _jdoe_ +** One client application: _hello-world-authz-service_ +** One global role: _uma_protection_ +** One client role: _uma_authorization_ + +The _hello-world-authz-service_ is the application with the resources we want to protect. In other words, it will act as a link:../overview/terminology.html[Resource Server]. + +In {{book.project.name}} a resource server is just a regular client application with some specific characteristics. It _must_ be a *confidential* client application as defined by: + +```json +"publicClient" : false +``` + +It must have a *client_id*, *client_secret* and *Service Account* enabled: + +```json +"clients" : [ + { + "clientId" : "hello-world-authz-service", + "secret" : "7801be7c-437a-44ae-be34-67da32f024eb", + "serviceAccountsEnabled" : true, + ... + } +] +``` + +And finally, an user mapping to the client's service account: + +```json +{ + "username" : "service-account-my-resource-server", + "enabled" : true, + "serviceAccountClientId" : "hello-world-authz-service", + "realmRoles" : [ "uma_protection"] +} +``` + +In the latter case, we are also granting the *uma_protection* role to the client's service account. As you'll see, that will be necessary in order to get access to the link:../service/protection-api.html[Protection API]. + +=== Creating a Resource Server and Protecting Resources + +Now that we have the *hello-world-authz* realm properly configured, we need to enable the *hello-world-authz-service* as a resource server. For that, click on the *Authorization* in the left menu bar. + +image:../../images/gs-keycloak-authz-page.png[alt="Keycloak Authorization Page"] + +To create a resource server you can click on the *Create* button. + +image:../../images/gs-keycloak-authz-create-rs-page.png[alt="Create Resource Server"] + +From that page you can create a resource server by manually filling that form or you can just import a JSON file with the configuration you want. For this guide, we'll just import a JSON file as follows: + +```json +{ + "clientId": "hello-world-authz-service", + "resources": [ + { + "name": "Hello World Resource" + } + ], + "policies": [ + { + "name": "Only Special Users Policy", + "type": "user", + "logic": "POSITIVE", + "config": { + "users": "[\"alice\"]" + } + }, + { + "name": "Hello World Resource Permission", + "type": "resource", + "config": { + "resources": "[\"Hello World Resource\"]", + "applyPolicies": "[\"Only Special Users Policy\"]" + } + } + ] +} + +``` + +After importing the JSON file above, you would see a page like that: + +image:../../images/gs-authz-hello-rs-created-page.png[alt="Resource Server Successfully Created"] + +You may take some time now exploring the resource server we just created. But first, let's understand what we just created. + +The resource server was created based on the *hello-world-authz-service* client application, as you can see from the following configuration: + +```json +{ + "clientId": "hello-world-authz-service", + ... +} +``` + +What we did was basically tell {{book.project.name}} that we want that client application acting as a resource server, so we can start creating the resources we want to protect as well the permissions + and authorization policies we want to use to actually protect the resources. + +The purpose of this guide is keep things simple to get you started, so our newly created resource server has a single protected resource, as defined by the following configuration: + +```json +{ + ... + "resources": [ + { + "name": "Hello World Resource" + } + ], + ... +} +``` + +The *Hello World Resource* represents a set of one or more resources we want to protect. It can map to a single or to multiple resources in an application. + +In order to protect it, we need to create the authorization policies and permissions we want to apply. Policies define the conditions that must be satisfied to grant a permission. Where a +permission is the link between a resource and the policies(or conditions) we want to enforce when someone wants to access a resource. + +In this example, we have a single policy *Only Special Users Policy*. This policy tells that only the specified users are allowed to access _something_ (we don't know what, yet. That is up to the permission). + +[NOTE] +{{book.project.name}} provides a few link:../policy/overview.html[policy types] that you can start using out-of-the-box. There are policies for RBAC, time constraints or even rules written using JavaScript or JBoss Drools. + +The last step when protecting a resource is to define a permission. For that, we have defined a *Hello World Resource Permission* that links the resource we want to protect, _Hello World Resource_, with the +policy we want to apply to that resource, _Only Special Users Policy_. + +```json +{ + "name": "Hello World Resource Permission", + "type": "resource", + "config": { + "resources": "[\"Hello World Resource\"]", + "applyPolicies": "[\"Only Special Users Policy\"]" + } +} + +``` \ No newline at end of file diff --git a/topics/getting-started/hello-world-entitlement.adoc b/topics/getting-started/hello-world-entitlement.adoc new file mode 100755 index 0000000000..52a3ed08af --- /dev/null +++ b/topics/getting-started/hello-world-entitlement.adoc @@ -0,0 +1 @@ +== Obtaining Permissions using the Entitlement API \ No newline at end of file diff --git a/topics/getting-started/hello-world-uma.adoc b/topics/getting-started/hello-world-uma.adoc new file mode 100755 index 0000000000..67ce689e3e --- /dev/null +++ b/topics/getting-started/hello-world-uma.adoc @@ -0,0 +1,126 @@ +== Obtaining Permissions using UMA + +One of the main features provided by {{book.project.name}} {{book.project.module}} is support for https://docs.kantarainitiative.org/uma/rec-uma-core.html[UMA] specification. UMA defines : + +"`... how resource owners can control protected-resource access by clients operated by arbitrary requesting parties, where the resources reside on any number of resource servers, and where a centralized authorization server governs access based on resource owner policies.`" + +[NOTE] +For now, {{book.project.name}} focus on API security and doesn't fully implement UMA. We don't support, yet, authorization flows where the user can manage their own resources and policies, share resources, and so forth. + +=== Obtaining a Protection API Token (PAT) +The authorization process begins with a special type of token: the *Permission Ticket*. A permission ticket can only be obtained by a resource server using a OAuth2 access token with the scope +*uma_protection*. In UMA, the access token with the scope *uma_protection* is called a Protection API Token or PAT. + +When we created the *hello-world-authz* realm, we also granted the scope *uma_protection* to the *hello-world-authz-service* client application. Considering that this application is also a *confidential* client, +you can obtain a PAT as follows: + +```curl +curl -X POST \ + -H "Authorization: Basic aGVsbG8td29ybGQtYXV0aHotc2VydmljZTpwYXNzd29yZA==" \ + -H "Content-Type: application/x-www-form-urlencoded" \ + -d 'grant_type=client_credentials' \ + "http://localhost:8080/auth/realms/hello-world-authz/protocol/openid-connect/token" +``` + +As a result, you will get the following response from the server: + +```json +{ + "access_token": ${access_token}, + "expires_in": 300, + "refresh_expires_in": 1800, + "refresh_token": ${refresh_token}, + "token_type": "bearer", + "id_token": ${id_token}, + "not-before-policy": 0, + "session_state": "ccea4a55-9aec-4024-b11c-44f6f168439e" +} +``` + +Here, the ${access_token} represents a PAT, which is basically an OAuth2 access token with the scope *uma_protection*. With this token, you can now obtain a permission ticket from the +Protection API. + +=== Obtaining a Permission Ticket + +Once you have a PAT, you can use it to access the Protection API in order to obtain a permission ticket as follows: + +```json +curl -X POST \ + -H "Authorization: Bearer ${access_token}" \ + -d ' + { + "resource_set_id" : "Hello World Resource" + } + ' \ + "http://localhost:8080/auth/realms/hello-world-authz/authz/protection/permission" +``` + +As a result, you will get the following response from the server: + +```json +{ + "ticket": ${permission_ticket} +} +``` + +Here, we are asking the Protection API for a permission ticket representing the same extent of requested access that the resource server registered. In this case, the access request to +the _Hello World Resource_ resource. + +=== Obtaining an Authorization API Token + +The final step is obtain a *Requesting Party Token* or *RPT* with a set of authorization data, that will be used to actually gain access to protected resources at the resource server. + +A RPT is obtained from the link:../service/authorization-api.html[Authorization API]. Just like the Protection API and Permission Tickets, the Authorization API also requires a special +OAuth2 access token to obtain a RPT. In UMA, this access token is called a *Authorization API Token* or *AAT*, which contains a scope *uma_authorization* in it. + +The *uma_authorization* scope indicates that an user consented to allow a given client application to access authorization data on his behalf. When we created the *hello-world-authz* realm, +we also defined a client role to the users: + +```json +"clientRoles" : { + "hello-world-authz-service" : [ "uma_authorization" ] +} +``` + +To obtain an AAT you can send a request to {{book.project.name}} as follows: + +```bash +curl -X POST \ + -H "Authorization: Basic aGVsbG8td29ybGQtYXV0aHotc2VydmljZTpwYXNzd29yZA==" \ + -H "Content-Type: application/x-www-form-urlencoded" \ + -d 'username=alice&password=password&grant_type=password' \ + "http://localhost:8080/auth/realms/hello-world-authz/protocol/openid-connect/token" +``` +As a result, you will get the following response from the server: + +```json +{ + "access_token": ${access_token}, + "expires_in": 300, + "refresh_expires_in": 1800, + "refresh_token": ${refresh_token}, + "token_type": "bearer", + "id_token": ${id_token}, + "not-before-policy": 0, + "session_state": "3cad2afc-855b-47b7-8e4d-a21c66e312fb" +} +``` + +=== Obtaining a Requesting Party Token or RPT + +Now that we have a AAT we can call the Authorization API and ask for a RPT. + +```bash +curl -X POST + -H "Authorization: Bearer ${AAT}" -d '{ + "ticket" : ${permission_ticket} +}' "http://localhost:8080/auth/realms/hello-world-authz/authz/authorize" +``` + +As a result, you will get the follow response from the server: + +```json +{"rpt":"${rpt}"} +``` + +=== Obtaining Permissions using the Entitlement API \ No newline at end of file diff --git a/topics/getting-started/hello-world.adoc b/topics/getting-started/hello-world.adoc new file mode 100755 index 0000000000..cb175f4732 --- /dev/null +++ b/topics/getting-started/hello-world.adoc @@ -0,0 +1,350 @@ +== Hello Authorization World + +This guide will show you how to: + +* Create a realm with the necessary configuration to enable fine-grained authorization to your applications +* Create a resource server and the resources that must be protected +* Create permissions, authorization policies and how to apply them to your protected resources +* Access the {{book.project.name}} {{book.project.module}} and enforce authorization decisions + +The purpose of this guide is to give you a generic overview of {{book.project.name}} {{book.project.module}} so you can understand +some core concepts and start protecting your applications and services despite the platform they are running on. + +=== Creating the Hello World AuthZ Realm + +For this guide, we are going to create a *hello-world-authz* realm. Just import the following JSON file to create the new realm: + +```json +{ + "realm" : "hello-world-authz", + "enabled" : true, + "privateKey" : "MIIEpQIBAAKCAQEAzMhNM9HXNQWhVf1m64zS67SIyQjj+tV5GR+MqlRTWDXdo8GAWHd+alY1urRhfRoqMy4F499+8wh2REKFykNt0ng6s6wWnEaKDboS3SAUV6lybcOAkwIOCtCZj1ItddKG3m64fzxDDQrcpkbiAvw3S8KJ4UJK+pyh9iX01duSDtM/HhPawsPdY8JSMfuo1IxQ2Vxw+8RKwbbdUeew6cyYGYAeFYwA66mlM3otB0RBHh4bjwg8297+2g53TdwM2rbCHRbrorMQD3031OTyFSp7lXCtoMLWRfAFnOP/2yZWZMXbiJheC0R3sLbU7Ef0/cUbYyk4Ckfq6pcYDR+VZBF7AwIDAQABAoIBAAwa4wVnKBOIS6srmYPfBTDNsTBBCEjxiYEErmn7JhoWxQ1DCPUxyxU6F177/q9Idqoj1FFOCtEO9P6/9+ym470HQmEQkR2Xxd1d3HOZy9oKuCro3ZbTDkVxY0JnlyxZz4MihGFxDH2e4MArfHy0sAgYbdIU+x2pWKGWSMzDd/TMSOExhc/sIQAg6ljbPCLLXCPQFAncoHRyGPrkRZs6UTZi5SJuCglVa2/3G+0drDdPuA83/mwsZfIBqQgbGbFgtq5T5C6CKMkPOQ42Rcclm7kEr6riTkJRo23EO1iOJVpxzI0tbxZsJAsW7zeqv0wWRyUgVfQAje6OdsNexp5aCtECgYEA6nMHCQ9xXvufCyzpIbYGxdAGqH6m1AR5gXerHqRiGNx+8UUt/E9cy/HTOhmZDK/eC4BT9tImeF01l1oSU/+wGKfux0SeAQchBhhq8GD6jmrtgczKAfZHp0Zrht7o9qu9KE7ZNWRmY1foJN9yNYmzY6qqHEy+zNo9amcqT7UZKO8CgYEA35sp9fMpMqkJE+NEJ9Ph/t2081BEkC0DYIuETZRSi+Ek5AliWTyEkg+oisTbWzi6fMQHS7W+M1SQP6djksLQNPP+353DKgup5gtKS+K/y2xNd7fSsNmkjW1bdJJpID7WzwwmwdahHxpcnFFuEXi5FkG3Vqmtd3cD0TYL33JlRy0CgYEA0+a3eybsDy9Zpp4m8IM3R98nxW8DlimdMLlafs2QpGvWiHdAgwWwF90wTxkHzgG+raKFQVbb0npcj7mnSyiUnxRZqt2H+eHZpUq4jR76F3LpzCGui2tvg+8QDMy4vwqmYyIxDCL8r9mqRnl3HpChBPoh2oY7BahTTjKEeZpzbR0CgYEAoNnVjX+mGzNNvGi4Fo5s/BIwoPcU20IGM+Uo/0W7O7Rx/Thi7x6BnzB0ZZ7GzRA51paNSQEsGXCzc5bOIjzR2cXLisDKK+zIAxwMDhrHLWZzM7OgdGeb38DTEUBhLzkE/VwYZUgoD1+/TxOkwhy9yCzt3gGhL1cF//GJCOwZvuECgYEAgsO4rdYScgCpsyePnHsFk+YtqtdORnmttF3JFcL3w2QneXuRwg2uW2Kfz8CVphrR9eOU0tiw38w6QTHIVeyRY8qqlHtiXj6dEYz7frh/k4hI29HwFx43rRpnAnN8kBEJYBYdbjaQ35Wsqkfu1tvHJ+6fxSwvQu/TVdGp0OfilAY=", + "publicKey" : "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAzMhNM9HXNQWhVf1m64zS67SIyQjj+tV5GR+MqlRTWDXdo8GAWHd+alY1urRhfRoqMy4F499+8wh2REKFykNt0ng6s6wWnEaKDboS3SAUV6lybcOAkwIOCtCZj1ItddKG3m64fzxDDQrcpkbiAvw3S8KJ4UJK+pyh9iX01duSDtM/HhPawsPdY8JSMfuo1IxQ2Vxw+8RKwbbdUeew6cyYGYAeFYwA66mlM3otB0RBHh4bjwg8297+2g53TdwM2rbCHRbrorMQD3031OTyFSp7lXCtoMLWRfAFnOP/2yZWZMXbiJheC0R3sLbU7Ef0/cUbYyk4Ckfq6pcYDR+VZBF7AwIDAQAB", + "certificate" : "MIICsTCCAZkCBgFVETX4AzANBgkqhkiG9w0BAQsFADAcMRowGAYDVQQDDBFIZWxsbyBXb3JsZCBBdXRoWjAeFw0xNjA2MDIxMzAxMzdaFw0yNjA2MDIxMzAzMTdaMBwxGjAYBgNVBAMMEUhlbGxvIFdvcmxkIEF1dGhaMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAzMhNM9HXNQWhVf1m64zS67SIyQjj+tV5GR+MqlRTWDXdo8GAWHd+alY1urRhfRoqMy4F499+8wh2REKFykNt0ng6s6wWnEaKDboS3SAUV6lybcOAkwIOCtCZj1ItddKG3m64fzxDDQrcpkbiAvw3S8KJ4UJK+pyh9iX01duSDtM/HhPawsPdY8JSMfuo1IxQ2Vxw+8RKwbbdUeew6cyYGYAeFYwA66mlM3otB0RBHh4bjwg8297+2g53TdwM2rbCHRbrorMQD3031OTyFSp7lXCtoMLWRfAFnOP/2yZWZMXbiJheC0R3sLbU7Ef0/cUbYyk4Ckfq6pcYDR+VZBF7AwIDAQABMA0GCSqGSIb3DQEBCwUAA4IBAQANm5gIT/c50lwjawM686gNXpppLA928WsCOn9NIIWjSKekP8Bf9S73kf7vWcsEppm5B8rRyRxolXmzwghv74L7uVDg8Injjgj+XbPVQP+cJqWpSaMZHF7UfWe0/4M945Xcbmsl5q+m9PmrPG0AaaZhqXHcp4ehB1H+awyRqiERpJUuwZNycw2+2kjDADpsFf8hZVUd1F6ReYyOkqUyUjbL+jYTC7ZBNa7Ok+w6HCXWgkgVATAgQXJRM3w14IOc5MH/vfMCrCl/eNQLbjGl9y7u8PKwh3MXHDO2OLqtg6hOTSrOGUPJZGmGtUAl+2/R7FzoWkML/BNe2hjsL6UJwg91", + "requiredCredentials" : [ "password" ], + "roles" : { + "realm" : [ + { + "name" : "uma_protection", "kc_entitlements" + } + ] + }, + "users" : + [ + { + "username" : "alice", + "enabled" : true, + "credentials" : [ { + "type" : "password", + "value" : "password" + } ], + "clientRoles" : { + "hello-world-authz-service" : [ "uma_authorization", "kc_entitlement" ] + } + }, + { + "username" : "jdoe", + "enabled" : true, + "credentials" : [ { + "type" : "password", + "value" : "password" + } ], + "clientRoles" : { + "hello-world-authz-service" : [ "uma_authorization", "kc_entitlement" ] + } + }, + { + "username" : "service-account-hello-world-authz-service", + "enabled" : true, + "serviceAccountClientId" : "hello-world-authz-service", + "realmRoles" : [ "uma_protection"] + } + ], + "clients" : [ + { + "clientId" : "hello-world-authz-service", + "secret" : "password", + "serviceAccountsEnabled" : true, + "enabled" : true, + "redirectUris" : [ "http://localhost:8080/hello-world-authz-service" ], + "directAccessGrantsEnabled" : true, + "publicClient" : false + } + ] +} +``` +The realm *hello-world-authz* consists of: + +** Two users: _alice_ and _jdoe_ +** One client application: _hello-world-authz-service_ +** One global role: _uma_protection_ +** One client role: _uma_authorization_ + +The _hello-world-authz-service_ is the application with the resources we want to protect. In other words, it will act as a link:../overview/terminology.html[Resource Server]. + +In {{book.project.name}} a resource server is just a regular client application with some specific characteristics. It _must_ be a *confidential* client application as defined by: + +```json +"publicClient" : false +``` + +It must have a *client_id*, *client_secret* and *Service Account* enabled: + +```json +"clients" : [ + { + "clientId" : "hello-world-authz-service", + "secret" : "7801be7c-437a-44ae-be34-67da32f024eb", + "serviceAccountsEnabled" : true, + ... + } +] +``` + +And finally, an user mapping to the client's service account: + +```json +{ + "username" : "service-account-my-resource-server", + "enabled" : true, + "serviceAccountClientId" : "hello-world-authz-service", + "realmRoles" : [ "uma_protection"] +} +``` + +In the latter case, we are also granting the *uma_protection* role to the client's service account. As you'll see, that will be necessary in order to get access to the link:../service/protection-api.html[Protection API]. + +=== Creating a Resource Server and Protecting Resources + +Now that we have the *hello-world-authz* realm properly configured, we need to enable the *hello-world-authz-service* as a resource server. For that, click on the *Authorization* in the left menu bar. + +image:../../images/gs-keycloak-authz-page.png[alt="Keycloak Authorization Page"] + +To create a resource server you can click on the *Create* button. + +image:../../images/gs-keycloak-authz-create-rs-page.png[alt="Create Resource Server"] + +From that page you can create a resource server by manually filling that form or you can just import a JSON file with the configuration you want. For this guide, we'll just import a JSON file as follows: + +```json +{ + "clientId": "hello-world-authz-service", + "resources": [ + { + "name": "Hello World Resource" + } + ], + "policies": [ + { + "name": "Only Special Users Policy", + "type": "user", + "logic": "POSITIVE", + "config": { + "users": "[\"alice\"]" + } + }, + { + "name": "Hello World Resource Permission", + "type": "resource", + "config": { + "resources": "[\"Hello World Resource\"]", + "applyPolicies": "[\"Only Special Users Policy\"]" + } + } + ] +} + +``` + +After importing the JSON file above, you would see a page like that: + +image:../../images/gs-authz-hello-rs-created-page.png[alt="Resource Server Successfully Created"] + +You may take some time now exploring the resource server we just created. But first, let's understand what we just created. + +The resource server was created based on the *hello-world-authz-service* client application, as you can see from the following configuration: + +```json +{ + "clientId": "hello-world-authz-service", + ... +} +``` + +What we did was basically tell {{book.project.name}} that we want that client application acting as a resource server, so we can start creating the resources we want to protect as well the permissions + and authorization policies we want to use to actually protect the resources. + +The purpose of this guide is keep things simple to get you started, so our newly created resource server has a single protected resource, as defined by the following configuration: + +```json +{ + ... + "resources": [ + { + "name": "Hello World Resource" + } + ], + ... +} +``` + +The *Hello World Resource* represents a set of one or more resources we want to protect. It can map to a single or to multiple resources in an application. + +In order to protect it, we need to create the authorization policies and permissions we want to apply. Policies define the conditions that must be satisfied to grant a permission. Where a +permission is the link between a resource and the policies(or conditions) we want to enforce when someone wants to access a resource. + +In this example, we have a single policy *Only Special Users Policy*. This policy tells that only the specified users are allowed to access _something_ (we don't know what, yet. That is up to the permission). + +[NOTE] +{{book.project.name}} provides a few link:../policy/overview.html[policy types] that you can start using out-of-the-box. There are policies for RBAC, time constraints or even rules written using JavaScript or JBoss Drools. + +The last step when protecting a resource is to define a permission. For that, we have defined a *Hello World Resource Permission* that links the resource we want to protect, _Hello World Resource_, with the +policy we want to apply to that resource, _Only Special Users Policy_. + +```json +{ + "name": "Hello World Resource Permission", + "type": "resource", + "config": { + "resources": "[\"Hello World Resource\"]", + "applyPolicies": "[\"Only Special Users Policy\"]" + } +} + +``` + +== Obtaining Permissions using the Entitlement API + +In {{book.project.name}}, authorization data is represented by a special security token called a *Requesting Party* Token or *RPT*. This token consists of all the permissions granted +to an user as a result of the evaluation of the permissions and authorization policies associated with the resource being requested. In this guide, we'll see how to obtain a RPT using the link:../service/entitlement-api.html[Entitlement API]. + +Now that the *hello-world-authz* realm is properly configured with the resources we want to protected and their corresponding permissions and authorization policies, we can ask the server for what an user +is entitled to do. In other words, what are the permissions the user has. + +The Entitlement API consists of a single endpoint. This endpoint expects an OAuth2 Access Token with a scope *kc_entitlement* representing the user identity and the identifier of the resource server we want to access. The *kc_entitlement* +scope is necessary to indicate that the user consented access to his authorization data from a given client application. The access token with a scope *kc_entitlement* is called *Entitlement API Token* or *EAT*. + +In this case, for the sake of simplicity, our resource server *hello-world-authz-service* is also acting as a client application. What means that the user allowed this application to access his +authorization data and obtain RPTs on his behalf. + +The first step is obtain a EAT as follows: + +```bash +curl -X POST + -H "Authorization: Basic aGVsbG8td29ybGQtYXV0aHotc2VydmljZTpwYXNzd29yZA==" + -H "Content-Type: application/x-www-form-urlencoded" + -d 'username=alice&password=password&grant_type=password' + "http://localhost:8080/auth/realms/hello-world-authz/protocol/openid-connect/token" +``` + +Here we are using the _Resource Owner Password Credentials Grant Type_ (Direct Access Grant in Keycloak terminology), as defined by OAuth2 specification, to obtain an EAT on behalf of _alice_. As a result, you +would get a response from the server as follows: + +```json +{ + "access_token": ${EAT}, + "expires_in": 300, + "refresh_expires_in": 1800, + "refresh_token": ${refresh_token}, + "token_type": "bearer", + "id_token": ${id_token}, + "not-before-policy": 0, + "session_state": "1ad4d54c-7758-4698-92d3-d57d821f130b" +} +``` + +[NOTE] +Resource Owner Password Credentials Grant Type is only used here for demonstration purposes. In the real world, you'll usually obtain an access token using a more secure grant type such as _authorization_code_. +The idea here is demonstrate that you need to obtain an access token with the scope *kc_entitlement* prior to access the Entitlement API to ask for a RPT. + +Finally, the last step is obtain a RPT from the Entitlement API as follows: + +```bash +curl -X GET \ + -H "Authorization: Bearer ${EAT}" \ + "http://localhost:8080/auth/realms/hello-world-authz/authz/entitlement/hello-world-authz-service" +``` + +As result, you'll get a response from the server as follows: + +```json +{ + "rpt": ${RPT} +} +``` + +By default, {{book.project.name}} issues a RPT consisting of permissions for every single resource protected/managed by the resource server. If you want to limit the permissions to only a specific + set of resources you can request a RPT as follows: + +```bash +curl -X POST \ + -H "Content-Type: application/json" \ + -H "Authorization: Bearer %{EAT}" \ + -d '{ + "permissions" : [ + { + "resource_set_name" : "Hello World Resource" + } + ] + }' \ + "http://localhost:8080/auth/realms/hello-world-authz/authz/entitlement/hello-world-authz-service" +``` + +Let's see now what happens when the user does not have access to a protected resource at the resource server. For that, let's obtain a new EAT but now using _jdoe_ credentials. + +```bash +curl -X POST + -H "Authorization: Basic aGVsbG8td29ybGQtYXV0aHotc2VydmljZTpwYXNzd29yZA==" + -H "Content-Type: application/x-www-form-urlencoded" + -d 'username=jdoe&password=password&grant_type=password' + "http://localhost:8080/auth/realms/hello-world-authz/protocol/openid-connect/token" +``` + +Just like we did with _alice_, the server will return an EAT that we can use to obtain a RPT. But _jdoe_ is not supposed to access the protected resource, so the server is going to give you a response as follows: + +```json +{ + "error_description": "Authorization denied.", + "error": "not_authorized" +} +``` + +The reason for that is that the _Hello World Resource_ is protected by a _Only Special Users Policy_ that says that only _alice_ is allowed to access the resource. You can play around now by changing that policy to + include _jdoe_ as a valid user and see the results. + +== Enforcing Authorization Decisions + +A RPT is basically a https://tools.ietf.org/html/rfc7519[JSON Web Token (JWT)] digitally signed using https://www.rfc-editor.org/rfc/rfc7515.txt[JSON Web Signature (JWS)]. Its lifetime is the same as with the OAuth2 access token (EAT) that was used to obtain it. + +When you decode a RPT you will see something like that: + +```json +{ + "permissions": [ + { + "resource_set_id": "152251e6-f4cf-4464-8d91-f1b7960fa5fc", + "resource_set_name": "Hello World Resource" + "scopes": [] + } + ], + "accessToken": ${EAT}, + "jti": "d6109a09-78fd-4998-bf89-95730dfd0892-1464906679405", + "exp": 1464906971, + "nbf": 0, + "iat": 1464906671, + "sub": "f1888f4d-5172-4359-be0c-af338505d86c", + "typ": "kc_ett", + "azp": "hello-world-authz-service" +} +``` + +The *permissions* claim lists all resource (and their respective scopes if any) permissions granted by the server. There is also a *accessToken* property holding the EAT that was used to issue the RPT. + +The RPT provides everything you need to enforce authorization decisions at the resource server side. That can be easily accomplished by: + +* Validating the RPT signature (based on realm's public key) +* Checking the token validity +* Decoding the RPT and extracting the permissions +* Checking if a request sent to the resource server trying to access a protected resource matches any permissions within the RPT + +You can even use the information within a RPT to protect resources within a page like buttons or any other visual component. \ No newline at end of file