sunmingtao / sample-code

3 stars 4 forks source link

Keycloak exchange authorisation code for token for public client #263

Closed sunmingtao closed 3 years ago

sunmingtao commented 3 years ago

Hit the url in the browser

http://localhost:8080/auth/realms/trove/protocol/openid-connect/auth?client_id=tim&redirect_uri=https://google.com&response_type=code&scope=openid

Replace <code> below with the code returned from Keycloak (Do it within 1 minute)

curl --request POST \
  --url http://localhost:8080/auth/realms/trove/protocol/openid-connect/token \
  --header 'accept: application/json' \
  --header 'cache-control: no-cache' \
  --header 'content-type: application/x-www-form-urlencoded' \
  --data 'grant_type=authorization_code&client_id=tim&redirect_uri=https://google.com&code=<code>'

Response:

{"access_token":"eyJhbGciOiJSUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICJXN3BLTXVaZDR4cVkwaklmUUpELUZNcXloOXFOakVrTG5KMGd1YnktNUU0In0.eyJqdGkiOiIyNDk5NDJiYS02ZGFjLTQxZDUtOGJhYS0yOWU1OTkxYjM4NzUiLCJleHAiOjE2MDk5MDg2NjcsIm5iZiI6MCwiaWF0IjoxNjA5OTA4MzY3LCJpc3MiOiJodHRwOi8vbG9jYWxob3N0OjgwODAvYXV0aC9yZWFsbXMvdHJvdmUiLCJhdWQiOiJhY2NvdW50Iiwic3ViIjoiYjcwNTI0NWUtMTYzMS00NTBmLTkwNDYtOWY4MmE3NTg1MTBmIiwidHlwIjoiQmVhcmVyIiwiYXpwIjoidGltIiwiYXV0aF90aW1lIjoxNjA5OTA4MDUzLCJzZXNzaW9uX3N0YXRlIjoiMzQ3ZDE2ODYtMjUwZC00ZDQ1LWE1YzctOTBlYWNjNzFiMjU1IiwiYWNyIjoiMCIsImFsbG93ZWQtb3JpZ2lucyI6WyJodHRwOi8vbG9jYWxob3N0OjgwOTAiXSwicmVhbG1fYWNjZXNzIjp7InJvbGVzIjpbIm9mZmxpbmVfYWNjZXNzIiwidW1hX2F1dGhvcml6YXRpb24iXX0sInJlc291cmNlX2FjY2VzcyI6eyJhY2NvdW50Ijp7InJvbGVzIjpbIm1hbmFnZS1hY2NvdW50IiwibWFuYWdlLWFjY291bnQtbGlua3MiLCJ2aWV3LXByb2ZpbGUiXX19LCJzY29wZSI6Im9wZW5pZCBlbWFpbCBwcm9maWxlIiwiZW1haWxfdmVyaWZpZWQiOnRydWUsIm5hbWUiOiJncnUgZ3J1IiwicHJlZmVycmVkX3VzZXJuYW1lIjoiZ3J1MDAxIiwiZ2l2ZW5fbmFtZSI6ImdydSIsImZhbWlseV9uYW1lIjoiZ3J1IiwiZW1haWwiOiJtc3VuK2dydTAwMUBubGEuZ292LmF1In0.ToxY43nlAlerci8MV3sACv0QiplME_77H0S6MRVsl7pAj7I1MgYAmWvOem3g67njjIAlkba4rawM6GvuPShgh_DfaI0kzKEUtAV4SFpeLwh4zVDCq7YtULzZo9zIzaLVUP43FOvP318fPQDd8sHQp-Gr3eEEnTS_EdkU9V2ef0Rn3Yhz-o57a9r2rBy9CHi6jnXM-2GPnBqbpjyKflOTrGOkgqqHWsVPPyeiXF-kFYl2WHeK34U0sh2hRC69b_fHmnusymAlYqD-Z0o4jPiqYR9Abc2kFol_uvyQi9Cjgbs31saQujb1nX-OiiEx_gmPsNyw7ZvcVDEMEHOEpGVnZA","expires_in":300,"refresh_expires_in":1800,"refresh_token":"eyJhbGciOiJIUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICI4OWQ3MmExOS0xYTQyLTRhYWEtYTBkMS1mMWQ2ODYyOGVjMmQifQ.eyJqdGkiOiJmZjlhN2Y2Ny04YjAyLTQ1YzItYmFhMC01ZGMyNWExMDJmOGUiLCJleHAiOjE2MDk5MTAxNjcsIm5iZiI6MCwiaWF0IjoxNjA5OTA4MzY3LCJpc3MiOiJodHRwOi8vbG9jYWxob3N0OjgwODAvYXV0aC9yZWFsbXMvdHJvdmUiLCJhdWQiOiJodHRwOi8vbG9jYWxob3N0OjgwODAvYXV0aC9yZWFsbXMvdHJvdmUiLCJzdWIiOiJiNzA1MjQ1ZS0xNjMxLTQ1MGYtOTA0Ni05ZjgyYTc1ODUxMGYiLCJ0eXAiOiJSZWZyZXNoIiwiYXpwIjoidGltIiwiYXV0aF90aW1lIjowLCJzZXNzaW9uX3N0YXRlIjoiMzQ3ZDE2ODYtMjUwZC00ZDQ1LWE1YzctOTBlYWNjNzFiMjU1IiwicmVhbG1fYWNjZXNzIjp7InJvbGVzIjpbIm9mZmxpbmVfYWNjZXNzIiwidW1hX2F1dGhvcml6YXRpb24iXX0sInJlc291cmNlX2FjY2VzcyI6eyJhY2NvdW50Ijp7InJvbGVzIjpbIm1hbmFnZS1hY2NvdW50IiwibWFuYWdlLWFjY291bnQtbGlua3MiLCJ2aWV3LXByb2ZpbGUiXX19LCJzY29wZSI6Im9wZW5pZCBlbWFpbCBwcm9maWxlIn0.g-NPXYpcIUqR59LDIW0vrQlBegwcOH6n5TMHnswq0EU","token_type":"bearer","id_token":"eyJhbGciOiJSUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICJXN3BLTXVaZDR4cVkwaklmUUpELUZNcXloOXFOakVrTG5KMGd1YnktNUU0In0.eyJqdGkiOiJmODhkOTg0ZS1hNzNmLTRhNzYtOWFjMC1kMmUyNjJkOTBhNDgiLCJleHAiOjE2MDk5MDg2NjcsIm5iZiI6MCwiaWF0IjoxNjA5OTA4MzY3LCJpc3MiOiJodHRwOi8vbG9jYWxob3N0OjgwODAvYXV0aC9yZWFsbXMvdHJvdmUiLCJhdWQiOiJ0aW0iLCJzdWIiOiJiNzA1MjQ1ZS0xNjMxLTQ1MGYtOTA0Ni05ZjgyYTc1ODUxMGYiLCJ0eXAiOiJJRCIsImF6cCI6InRpbSIsImF1dGhfdGltZSI6MTYwOTkwODA1Mywic2Vzc2lvbl9zdGF0ZSI6IjM0N2QxNjg2LTI1MGQtNGQ0NS1hNWM3LTkwZWFjYzcxYjI1NSIsImFjciI6IjAiLCJlbWFpbF92ZXJpZmllZCI6dHJ1ZSwibmFtZSI6ImdydSBncnUiLCJwcmVmZXJyZWRfdXNlcm5hbWUiOiJncnUwMDEiLCJnaXZlbl9uYW1lIjoiZ3J1IiwiZmFtaWx5X25hbWUiOiJncnUiLCJlbWFpbCI6Im1zdW4rZ3J1MDAxQG5sYS5nb3YuYXUifQ.AFlcGxyqgh_9KyX5thcr4vwm4Ct_gDd0stN6tAbpVk3XFbsaD8Ap73QpTqasvOoM5TAqEvShFivIJCR20RKgW-CZZD15VNMDZiBnLjOh9Rx3BgjfpF2uebj5vRNtW7S85brcdXHXoaIoNNMoI_eE2bvX7gjDRM86_MIvxxISAnfVGF-Tem06l6CDtLK7yG1InLV4VtGE78gz57pxLyD8NOIRJyTNuDs0ku3F3cr2k-yjCcpG42vanJN9cOuMJjGSENU0es4v_1UTbije6wZIcv83SRnaWfgahmA0SOoG3U3PX4FSbSbd6tqymSk_aQnqJB8MoL8UFmRGn9DL2RB9Bw","not-before-policy":1606451904,"session_state":"347d1686-250d-4d45-a5c7-90eacc71b255","scope":"openid email profile"}