Lab 08 Oracle Access Management - Access Manager 11G R2 Ps3 2 Legged Mobile Oauth
Lab 08 Oracle Access Management - Access Manager 11G R2 Ps3 2 Legged Mobile Oauth
Lab 08 Oracle Access Management - Access Manager 11G R2 Ps3 2 Legged Mobile Oauth
Lab 08
Following servers needs to be running before you start this Lab (start if not running - refer to
Lab 0 for more details on starting/stopping servers):
You may have to start/stop/restart additional servers as per instructions in this lab.
All passwords used during this Lab are Oracle123 unless otherwise specified
Disclaimer : The Virtual Machine (or hosted) Image and other software are provided for use only
during the workshop. Please note that you are responsible for deleting them from your
computers before you leave. If you would like to try out any of the Oracle products, you may
download them from the Oracle Technology Network
(http://www.oracle.com/technology/index.html) or the Oracle E-Delivery Web Site
(http://edelivery.oracle.com)
Contents
Lab Introduction
In this lab we will examine the typical OAuth Calls an Mobile application can do for 2 legged
mobile client flow. We will also examine these calls both with Server Side SSO featured disabled
and enabled.
When you design mobile apps it will use the same flow and OAuth calls.
Steps
For the Adaptive Access, remove the existing plug-in and make it blank
Note: We are setting high enough value so that we can perform the lab.
Note: This might have already been done if you have completed earlier labs
Steps
Name : App1
Client Id : App1
Mobile Redirect URIs: app1://
Select “Allow Token Attributes Retrieval”
Allowed Scopes: UserProfile.* (Click Add to add this scope)
Grant Types : Resource Owner Credentials, Client Credentials, Refresh Token, JWT Bearer,
Client Verification Code, OAM Credentials
Name : App2
Client Id : App2
Mobile Redirect URIs: app2://
Select “Allow Token Attributes Retrieval”
Allowed Scopes: UserProfile.* (Click Add to add this scope)
Grant Types : Resource Owner Credentials, Client Credentials, Refresh Token, JWT
Bearer, Client Verification Code, OAM Credentials
5. Now click on Default Domain -> Service Profiles -> OAuthService Profile.
Verify that both the apps (App1 & App2) are showing up as clients in this profile.
JSON Payload
{
"oracle:idm:claims:client:ostype":"iPhone OS",
"oracle:idm:claims:client:phonecarriername":"AT&T",
"oracle:idm:claims:client:geolocation":"+40.689060,-74.044636",
"oracle:idm:claims:client:networktype":"WIFI",
"oracle:idm:claims:client:sdkversion":"11.1.2.0.0",
"hardwareIds":{
"oracle:idm:claims:client:udid":"733C6B45-6624-4966-982A-D414A7B64AF6",
"oracle:idm:claims:client:iosidforvendor":"60B06F46-D27D-40AA-BDB9-71423F192253",
"oracle:idm:claims:client:macaddress":"00:23:32:91:A6:99",
"oracle:idm:claims:client:phonenumber":"1-408-571-9116",
"oracle:idm:claims:client:imei":"010113006310121",
"oracle:idm:claims:client:iosidforad":"2A86B03E-DD2F-4850-BA1D-61F15E453441"
},
"oracle:idm:claims:client:vpnenabled":false,
"oracle:idm:claims:client:locale":"en_US",
"oracle:idm:claims:client:osversion":"7.0.3",
"oracle:idm:claims:client:jailbroken":true
}
ew0KICAgIm9yYWNsZTppZG06Y2xhaW1zOmNsaWVudDpvc3R5cGUiOiJpUGhvbmUgT1MiLA0KICAgIm9yYWNsZ
TppZG06Y2xhaW1zOmNsaWVudDpwaG9uZWNhcnJpZXJuYW1lIjoiQ VQmVCIsDQ ogICAib3JhY2xlO mlkbTpjbG Fp
bXM6Y2xpZW50Omdlb2xvY2F0aW9uIjoiKzQwLjY4O TA2MCwtNzQuMDQ0NjM2IiwNCiAgICJvcmFjbGU6aWRtOm
NsYWltczpjbGllbnQ6bmV0d29ya3R5cGUiOiJXSUZJIiwNCiAgICJvcmFjbGU6aWRtOmNsYWltczpjbGllbnQ 6c2Rrdm
Vyc2lvbiI6IjExLj EuMi4wLjAiLA0KICAgImhhcmR3YXJlSWRzIjp7DQogICAgICAib3JhY2xlO mlkbTpjbG FpbXM6Y2x
pZW50OnVkaWQiOiI3MzNDNkI0NS02NjI0LTQ 5NjYtO TgyQ S1ENDE0Q TdCNjRBRjYiLA0KICAgICAgIm9yYWNsZ
TppZG06Y2xhaW1zOmNsaWVudDppb3NpZGZvcnZlbmRvciI6IjYwQjA2RjQ2LUQyN0Q tNDBBQS1CREI5LTcxNDIz
RjE5 MjI1MyIsDQ ogICAgICAib3JhY2xlOmlkbTpjbG FpbXM6Y2xpZW50O m1hY2FkZHJlc3MiOiIwMDoyMzozMjo5M
TpBNjo5OSIsDQ ogICAgICAib3JhY2xlOmlkbTpjbG FpbXM6Y2xpZW50OnBob25l bnVtYmVyIjoiMS00MDgtNTcxLTkx
MTYiLA0KICAgICAgIm9yYWNsZTppZG06Y2xhaW1zO mNsaWVudDppbWVpIjoiMDEwMTEz MDA2Mz EwMTIxIiw
NCiAgICAgICJvcmFjbGU6aWRtOmNsYWltczpjbGllbnQ 6aW9zaWRmb3JhZCI6IjJBO DZCMDNFLUREMkYtNDg1M
C1CQ TFELTYxRj E1RTQ 1MzQ 0MSINCiAgIH0sDQ ogICAib3JhY2xlO mlkbTpj bG FpbXM6Y2xpZW50OnZwbmVuYW
JsZWQiOmZhbHNlLA0KICAgIm9yYWNsZTppZG06Y2xhaW1zOmNsaWVudDpsb2NhbGUiOiJlbl9VUyIsDQogICAib
3JhY2xlOmlkbTpjbGFpbXM6Y2xpZW50O m9zdmVyc2lvbiI6IjcuMC4zIiwNCiAgICJvcmFjbGU6aWRtOmNsYWltczpj
bGllbnQ6amFpbGJyb2tlbiI6dHJ1ZQ 0KfQ 0K
Note: Make sure that you cut and paste the command onto notepad/text pad first to avoid
single quote format issues. Check the single quote (‘) and (--) first and format if required in
notepad before issuing the command
"oracle-idm:/oauth/grant-type/challenge-answer"
],
"client_id": "App1",
"mobileAppConfig": {
"claimAttributes": [
"oracle:idm:claims:client:sdkversion",
"oracle:idm:claims:client:networktype",
"oracle:idm:claims:client:fingerprint",
"oracle:idm:claims:client:phonenumber",
"oracle:idm:claims:client:iosidforad",
"oracle:idm:claims:client:ostype",
"oracle:idm:claims:client:imei",
"oracle:idm:claims:client:phonecarriername",
"oracle:idm:claims:client:iosidforvendor",
"oracle:idm:claims:client:locale",
"oracle:idm:claims:client:osversion",
"oracle:idm:claims:client:containerid"
]
},
"oauthAuthZService": "/ms_oauth/oauth2/endpoints/oauthservice/authorize",
"oauthNotificationService": "/ms_oauth/oauth2/endpoints/oauthservice/push",
"oauthTokenService": "/ms_oauth/oauth2/endpoints/oauthservice/tokens",
"oracleConsentServiceProtection": "OAM",
"oracleMobileSecurityLevel": "LOW",
"server_side_sso": false,
"sharedKeyAttributeName": "secret_key",
"userConsentService": [
"/ms_oauth/resources/consentmanagement"
],
"userProfileService": [
"/ms_oauth/resources/userprofile"
]
}
Note: Paste the base64 encoded device profile from Exercise 3 in the above command
&oracle_device_profile= <base64 device profile> before issuing the command
"access_token":"eyJhbGciOiJSUzUxMiIsInR5cCI6IkpXVCIsIng1dCI6Ilh0em9yVUdfWmtOVDZRUUg2eElMYXl0UENnTSIsImtpZCI6Im
9yYWtleSJ9.eyJvcmFjbGUub2F1dGgudGtfY29udGV4dCI6InByZV9hemMiLCJvcmFjbGUub2F1dGgucHJlX2F6Yy50dGMiOiJjbGllbnRf
YXNzZXJ0aW9uIiwiZXhwIjoxNDUzNDk0NzI5LCJzdWIiOm51bGwsImlzcyI6Ind3dy5vcmFjbGUuZXhhbXBsZS5jb20iLCJwcm4iOm51bG
wsImp0aSI6IjUzMDA5YTk0LTMw NDItNDQzYy1hYTZiLWIzNDI1YTI5Y2IwNSIsIm9yYWNsZS5vYXV0aC5jbGllbnRfb3JpZ2luX2lkIjoiQX
BwMSIsIm9yYWNsZS5vYXV0aC5zdmNfcF9uIjoiT0F1dGhTZXJ2aWNlUHJvZmlsZSIsImlhdCI6MTQ1MzQ5MTEyOSwib3JhY2xlLm9hd
XRoLmlkX2RfaWQiOiIxMjM0NTY3OC0xMj M0LTEyMzQtMTIzNC0xMj M0NTY3 ODkwMTIiLCJ1c2VyLnRlbmFudC5uYW1lIjoiRGVmYX
VsdERvbWFpbiJ9.CELYAXv_T6S6D84kImUzAUC Z1TLCaRq1FjPlOcWITCMhGz8XYbcpqL -
fmy1braF14XSWObHxbB_7ai3zglVivb7jLu9x5Q6d9gBoaks89C8SdMJ -
btKms_CAefrA4OEcumHUzXnEsarC6EGpfHrm39jO2Y0sue0CBcvu1dkWVyQ"
"expires_in":7200,
"token_type":"Bearer",
"oracle_tk_context":"pre_azc",
"access_token":"eyJhbGciOiJSUzUxMiIsInR5cCI6IkpXVCIsIng1dCI6Ilh0em9yVUdfWmtOVDZRUUg2eElMYXl0UENnTSIsImtpZCI6Im
9yYWtleSJ9.eyJvcmFjbGUub2F1dGgudGtfY29udGV4dCI6InByZV9hemMiLCJvcmFjbGUub2F1dGgucHJlX2F6Yy50dGMiOiJjbGllbnRf
YXNzZXJ0aW9uIiwiZXhwIjoxNDUzNDkzODg3LCJzdWIiOm51bGwsImlzcyI6Ind3dy5vcmFjbGUuZXhhbXBsZS5jb20iLCJwcm4iOm51b
GwsImp0aSI6ImI2NGRjNjM1LTJhOTktNDZlNC05MWQ0LTIzODY3 MDExNjZkOCIsIm9yYWNsZS5vYXV0aC5jbGllbnRfb3JpZ2luX2lkIjoi
QXBwMiIsIm9yYWNsZS5vYXV0aC5zdmNfcF9uIjoiT0F1dGhTZXJ2aWNlUHJvZmlsZSIsImlhdCI6MTQ1MzQ5MDI4Nywib3JhY2xlLm9h
dXRoLmlkX2RfaWQiOiIxMjM0NTY3OC0xMj M0LTEyMzQtMTI zNC0xMjM0NTY3 ODkwMTIiLCJ1c2VyLnRlbmFudC5uYW1lIjoiRGVmY
XVsdERvbWFpbiJ9.FgViDd2RAgzYepC4tVHPdlN_3uaNhyfk-r3ph_aNA3xByKCs8xAPxhmbXl4JEJ9MF15qh-jBXfeCjYUPE-
VKBdk8SAxHmXS6aI-7W0l3Isl8916yVl6DuZGhFEfRWYYcKnfD2oWm0G7J0HgIbf-Okwofl69nd470Cks2EvWAio4"
Note: we will be using user JDOE in OUD for this use case.
If the auth code has expired, get a new one by executing exercise 5
{
"oracle_client_assertion_type":"urn:ietf:params:oauth:client-assertion-type:jwt-bearer",
"oracle_aux_tokens":
{"user_assertion":
{"expires_in":28800,
"token_type":"Bearer",
"oracle_tk_context":"user_assertion",
"refresh_token":"eyJhbGciOiJSUzUxMiIsInR5cCI6IkpXVCIsIng1dCI6Ilh0em9yVUdfWmtOVDZRUUg2eElMYXl0UENn TSIsImtp ZCI6I
m9yYWtleSJ9.eyJzdWIiOm51bGwsIm9yYWNsZS5vYXV0aC51c2VyX29yaWdpbl9pZF90eXBlIjoiTERBUF9VSUQiLCJvcmFjbGUub2F1d
GgudXNlcl9vcmlnaW5faWQiOiJKRE9FIiwiaXNzIjoid3d3Lm9yYWNsZS5leGFtcGxlLmNvbSIsIm9yYWNsZS5vYXV0aC5ydC50dGMiOiJ1
c2VyX2Fzc2VydGlvbiIsIm9yYWNsZS5vYXV0aC5zdmNfcF9uIjoiT0F1dGhTZXJ2aWNlUHJvZmlsZSIsImlhdCI6MTQ1MzQ5Mzg4MCwib
3JhY2xlOmlkbTpjbGFpbXM6Y2xpZW50Omlvc2lkZm9ydmVuZG9yIjoiNjBCMDZGNDYtRDI3RC00MEFBLUJEQjktNzE0 MjNGMTkyMjU
zIiwib3JhY2xlLm9hdXRoLnRrX2NvbnRleHQiOiJyZWZyZXNoX3Rva2VuIiwiZXhwIjoxNDUzNjA5MDgwLCJvcmF jbGU6aWRtOmNsYWlt
czpjbGllbnQ6bWFjYWRkcmVzcyI6IjAwOjIzOjMyOjkxOkE2Ojk5IiwicHJuIjpudWxsLCJqdGkiOiIwNGNiYmYwYy04MWUzLTQ3 MDAtYj
EzZS0yMzAwODZiOGY0MzkiLCJvcmFjbGUub2F1dGguY2xpZW50X29yaWdpbl9pZCI6IkFwcDEiLCJ1c2VyLnRlbmFudC5uYW1lIjoiRG
VmYXVsdERvbWFpbiIsIm9yYWNsZS5vYXV0aC5pZF9kX2lkIjoiMTIzNDU2NzgtMTIzNC0x MjM0LTEyMzQtMTIzND U2Nzg5MD EyIn0.u
qnW0KjP_lBDIxcHc9bNr0VqwzzSIqP2SSLwPbOxrxfQ1NvUoPIVZ7w1edUzyuZwMbFZX1FZzsxGkz -
J_IAcO_sndyrQ70H2mxDhGtmTErYXIR11RzS4nL3gNbQ3-_w8oh3_1QEkDLKy0NqASZVgZkw5hRRqF59BUD5JIfqksLU",
"oracle_grant_type":"urn:ietf:params:oauth:grant-type:jwt-bearer",
"access_token":"eyJhbGciOiJSUzUxMiIsInR5cCI6IkpXVCIsIng1dCI6Ilh0em9yVUdfWmtOVDZRUUg2eElMYXl0UENnTSIsImtpZCI6Im
9yYWtleSJ9.eyJzdWIiOiJKRE9FIiwiaXNzIjoid3d3Lm9yYWNsZS5leGFtcGxlLmNvbSIsIm9yYWNsZS5vYXV0a C5zdmNfcF9uIjoiT0F1dGh
TZXJ2aWNlUHJvZmlsZSIsImlhdCI6MTQ1MzQ5 Mzg4 MCwib3JhY2xlOmlkbTpjbGFpbXM6Y2xpZW50Omlvc2lkZm9ydmVuZG9yIjoiNj
BCMDZGNDYtRDI3RC00MEFBLUJEQjktNzE0 MjNGMTkyMjUzIiwib3JhY2xlLm9hdXRoLnBybi5pZF90eXBlIjoiTERBUF9VSUQiLCJleHAi
OjE0NTM1MjI2ODAsIm9yYWNsZS5vYXV0aC50a19jb250ZXh0IjoidXNlcl9hc3NlcnRpb24iLCJvcmFjbGU6aWRtOmNsYWltczpjbGllbn
Q6bWFjYWRkcmVzcyI6IjAwOjIzOjMyOjkxOkE2Ojk5IiwicHJuIjoiSkRPRSIsImp0aSI6ImVlY2JhZTY1LWI2OGQtNGRlYS1hYjliLWEwYTky
ZGZkZDdiOSIsIm9yYWNsZS5vYXV0aC5jbGllbnRfb3JpZ2luX2lkIjoiQXBwMSIsI nVzZXIudGVuYW50Lm5hbWUiOiJEZWZhdWx0RG9tY
WluIiwib3JhY2xlLm9hdXRoLmlkX2RfaWQiOiIxMjM0NTY3OC0xMjM0LTEyMzQt MTIzNC0xMjM0NTY3ODkw MTIifQ.Pk1IX0ef7mMe
EpUCBeXFYNLp1dWahOMjXk2MQL-
FqIHBclS7Ac3alt1DwMXW7wdDNWWwVWHh6wNUYMc McB5MxFDglkwdqvUcJeLEAVvbfwsUUYi551lxwjdlsH -
NQ7hcjUsnkJhYVmlWPNdZlSRba5j_5bOeU0-rfEMd QBxwhB8"
}
},
"expires_in":604800,
}
Note: You would have a refresh token and access token as out put. Make a note of both we will be using it later.
Note: There are 3 tokens . For user assertion you will have refresh_token and access_token. You will also have a client_
assertion. Make a note of these. We will be using them both.
==========================================================
Transfer-Encoding: chunked
Content-Type: application/json
X-ORACLE-DMS-ECID: 024170c1c59452c4:6fa58a63:1526a57ea2b:-8000-0000000000002f7c
X-Powered-By: Servlet/2.5 JSP/2.1
Then get a fresh Pre Auth Code for App2 again and use that code (Repeat Exercise 5)
Note: If the auth code has expired, get a new one by executing exercise 6
If the user assertion has expired get a new one by executing Exercise 7
H TTP/1.1 200 OK
Cache-Control: no-cache, no-store, must-revalidate
{
"oracle_client_assertion_type":"urn:ietf:params:oauth:client-assertion-type:jwt-bearer",
"expires_in":604800,
"token_type":"Bearer",
"oracle_tk_context":"client_assertion",
"access_token":"eyJhbGciOiJSUzUxMiIsInR5cCI6IkpXVCIsIng1dCI6Ilh0em9yVUdfWmtOVDZRUUg2eElMYXl0UENnTSIsImtpZCI6Im
9yYWtleSJ9.eyJvcmFjbGUub2F1dGguY3QucmVnX3VzZXJfaWRfdHlwZSI6IkxEQVBfRlFETiIsInN1YiI6IkFwcDIiLCJpc3MiOiJ3d3cub3Jh
Y2xlLmV4YW1wbGUuY29tIiwib3JhY2xlLm9hdXRoLnN2Y19wX24iOiJPQXV0aFNlcnZpY2VQcm9maWxlIiwiaWF0IjoxNDUzNDk0NjA
==========================================================
HTTP/1.1 401 Unauthorized
Cache-Control: no-cache, no-store, must-revalidate
Date: Fri, 22 Jan 2016 20:28:51 GMT
Pragma: no-cache
Transfer-Encoding: chunked
Content-Type: application/json
X-ORACLE-DMS-ECID: 024170c1c59452c4:6fa58a63:1526a57ea2b:-8000-0000000000002f7c
X-Powered-By: Servlet/2.5 JSP/2.1
Then get a fresh Pre Auth Code for App2 again and use that code (Repeat Exercise 6)
Note: If the user assertion OR client assertion has expired get a new one by executing Exercise 7
Content-Type: application/json
X-ORACLE-DMS-ECID: 024170c1c59452c4:6fa58a63:1526a57ea2b:-8000-00000000000034b4
X-Powered-By: Servlet/2.5 JSP/2.1
{
"expires_in":3600,
"token_type":"Bearer",
"refresh_token":"eyJhbGciOiJSUzUxMiIsInR5cCI6IkpXVCIsIng1dCI6Ilh0em9yVUdfWmtOVDZRUUg2eElMYXl0UENn TSIsImtpZCI6I
m9yYWtleSJ9.eyJzdWIiOm51bGwsIm9yYWNsZS5vYXV0aC51c2VyX29yaWdpbl9pZF90eXBlIjoiTERBUF9VSUQiLCJvcmFjbGUub2F1d
GgudXNlcl9vcmlnaW5faWQiOiJKRE9FIiwiaXNzIjoid3d3Lm9yYWNs ZS5leGFtcGxlLmNvbSIsIm9yYWNsZS5vYXV0aC5ydC50dGMiOiJy
ZXNvdXJjZV9hY2Nlc3NfdGsiLCJvcmFjbGUub2F1dGguc3ZjX3BfbiI6Ik9BdXRoU2VydmljZVByb2ZpbGUiLCJpYXQiOjE0NTM0OTU2Mj A
sIm9yYWNsZS5vYXV0aC50a19jb250ZXh0IjoicmVmcmVzaF90b2tlbiIsImV4cCI6MTQ1MzUxMDAyMCwicHJuIjpudWxsLCJqdGkiOiJk
MTNl MjkyNC03Nzc4LTRhM2MtYjcxMy04OWVmNm M4MGU2MjgiLCJvcmFjbGUub2F1dGguY2xpZW50X29yaWdpbl9pZCI6IkFwcD
EiLCJvcmFjbGUub2F1dGguc2NvcGUiOiJVc2VyUHJvZmlsZS51c2VycyIsInVzZXIudGVuYW50Lm5hbWUiOiJEZWZhdWx0RG9tYWluIiw
ib3JhY2xlLm9hdXRoLmlkX2RfaWQiOiIxMjM0NTY3OC0xMjM0LTEyMzQt MTIzNC0xMjM0NTY3ODkw MTIifQ.tKD9z_CrfGzRNS4IaerJ
VellHNExcbeOc0sMug5ySUw15lamVwWfb98c0QOlN8KJDJ_DvjymP9n321ZJjmzepJYKyYcYr0xsDPhe -
UjJ4M2E2OdBlDqu_yH_mp1ZYq6O8mfgbdDae8ezA74yEOXxF_3il_iNT5I8MbfyFr Yg9lw",
"access_token":"eyJhbGciOiJSUzUxMiIsInR5cCI6IkpXVCIsIng1dCI6Ilh0em9yVUdfWmtOVDZRUUg2eElMYXl0UENnTSIsImtpZCI6Im
9yYWtleSJ9.eyJzdWIiOiJKRE9FIiwib3JhY2xlLm9hdXRoLnVzZXJfb3JpZ2luX2lkX3R5cGUiOiJMREFQX1VJRCIsIm9yYWNsZS5vYXV0aC5
1c2VyX29yaWdpbl9pZCI6IkpET0UiLCJpc3MiOiJ3d3cub3JhY2xlLmV4YW1wbGUuY29tIiwib3JhY2 xlLm9hdXRoLnN2Y19wX24iOiJPQ
XV0aFNlcnZpY2VQcm9maWxlIiwiaWF0IjoxNDUzNDk1NjIwLCJvcmFjbGUub2F1dGgucHJuLmlkX3R5cGUiOiJMREFQX1VJRCIsImV4c
CI6MTQ1MzQ5OTIyMCwib3JhY2xlLm9hdXRoLnRrX2NvbnRleHQiOiJyZXNvdXJjZV9hY2Nlc3NfdGsiLCJwcm4iOiJKRE9FIiwianRpIjoiZ
GI0MWY1YjItNGY1My00ZmFiLTlkMmYtNzQzYjQ3OD Y5ZTU0Iiwib3JhY2xlLm9hdXRoLmNsaWVudF9vcmlnaW5faWQiOiJBcHAxIiwi
b3JhY2xlLm9hdXRoLnNjb3BlIjoiVXNlclByb2ZpbGUudXNlcnMiLCJ1c2VyLnRlbmFudC5uYW1lIjoiRGVmYXVsdERvbWFpbiIsIm9yYWN
sZS5vYXV0aC5pZF9kX2lkIjoiMTIzNDU2NzgtMTIzNC0xMj M0LTEyMzQtMTIzNDU2Nzg5MDEyIn0.YKzZMsxCXpd59ve71i1ipA3BtDSv
qBPB0vDBQaSfjkEzy3_O41d41zt8TIE5fzXFPjyMRoBuWLIf3IxqBsrpY9nl -
EQtO6G3HdeX1cUxrHvl6l9Ja_DFZwXqZLa4Rx_sWtHsYezI5s -nE-uYgeeLnFgkrr5q8tQtXhHXsW7Ji-Y"
{
"expires_in":3600,
"token_type":"Bearer",
"refresh_token":"eyJhbGciOiJSUzUxMiIsInR5cCI6IkpXVCIsIng1dCI6Ilh0em9yVUdfWmtOVDZRUUg2eElMYXl0UENn TSIsImtpZCI6I
m9yYWtleSJ9.eyJzdWIiOm51bGwsIm9yYWNsZS5vYXV0aC51c2VyX29yaWdpbl9pZF90eXBlIjoiTERBUF9VSUQiLCJvcmFjbGUub2F1d
GgudXNlcl9vcmlnaW5faWQiOiJKRE9FIiwiaXNzIjoid3d3Lm9yYWNsZS5leGFtcGxlLmNvbSIsIm9yYWNsZS5vYXV0aC5ydC50dGMiOiJy
ZXNvdXJjZV9hY2Nlc3NfdGsiLCJvcmFjbGUub2F1dGguc3ZjX3BfbiI6Ik9BdXRoU2VydmljZVByb2ZpbGUiLCJpYXQiOjE0NTM0OTYwOTc
sIm9yYWNsZS5vYXV0aC50a19jb250ZXh0IjoicmVmcmVzaF90b2tlbiIsImV4cCI6MTQ1MzUxMD Q5NywicHJuIjpud WxsLCJqdGkiOiJh
MGZm M2NhNS0xYTM0LTQ0ZTQtYjNhYS1iZjRiZDJlODVmYWQiLCJvcmFjbGUub2F1dGguY2xpZW50X29yaWdpbl9pZCI6IkFwcDEiLC
JvcmFjbGUub2F1dGguc2NvcGUiOiJVc2VyUHJvZmlsZS51c2VycyIsInVzZXIudGVuYW50Lm5hbWUiOiJEZWZhdWx0RG9tYWluIiwib3J
hY2xlLm9hdXRoLmlkX2RfaWQiOiIxMjM0NTY3OC0xMjM0LTEyMzQt MTI zNC0xMjM0NTY3ODkw MTIifQ.JvCZcY1CTfPGody8cTcFoS
Yg0Lr7T7LfoL14HkYluJTzNSWKy1jr8jQicY5Bg3YiM5OJDnrkVmhXy23RqGI6tbA8VDCwQfftnT4c -
7JERC_9uwV0yOIYSlAs2QHbUUrltY6_EkfKH fim42Y7CWnITn_YqNwlHRvmBXbIutWtVnY",
"access_token":"eyJhbGciOiJSUzUxMiIsInR5cCI6IkpXVCIsIng1dCI6Ilh0em9yVUdfWmtOVDZRUUg2eElMYXl0UENnTSIsImtpZCI6Im
9yYWtleSJ9.eyJzdWIiOiJKRE9FIiwib3JhY2xlLm9hdXRoLnVzZXJfb3JpZ2luX2lkX3R5cGUiOiJMREFQX1VJRCIsIm9yYWNsZS5vYXV0aC5
1c2VyX29yaWdpbl9pZCI6IkpET0UiLCJpc3MiOiJ3d3cub3JhY2xlLmV4YW1wbGUuY29tIiw ib3JhY2xlLm9hdXRoLnN2Y19wX24iOiJPQ
XV0aFNlcnZpY2VQcm9maWxlIiwiaWF0IjoxNDUzNDk2MDk3LCJvcmFjbGUub2F1dGgucHJuLmlkX3R5cGUiOiJMREFQX1VJRCIsImV4
cCI6MTQ1MzQ5OTY5Nywib3JhY2xlLm9hdXRoLnRrX2NvbnRleHQiOiJyZXNvdXJjZV9hY2Nlc3NfdGsiLCJwcm4iOiJKRE9FIiwianRpIjoi
ZGMyYmNkZTItZWMwNy00MjRlLTkxNzIt MjMzMWRiZDBjZTc1Iiwib3JhY2xlLm9hdXRoLmNsaWVudF9vcmlnaW5faWQiOiJBcHAxIi
wib3JhY2xlLm9hdXRoLnNjb3BlIjoiVXNlclByb2ZpbGUudXNlcnMiLCJ1c2VyLnRlbmFudC5uYW1lIjoiRGVmYXVsdERvbWFpbiIsIm9yY
X-ORACLE-DMS-ECID: 024170c1c59452c4:6fa58a63:1526a57ea2b:-8000-00000000000037b0
X-Powered-By: Servlet/2.5 JSP/2.1
{"successful":true}
Note: If the client assertion has expired get a new one by executing Exercise 7
HTTP/1.1 200 OK
Cache-Control: no-cache, no-store, must-revalidate
Date: Fri, 22 Jan 2016 21:52:21 GMT
Pragma: no-cache
Transfer-Encoding: chunked
Content-Type: application/json
X-ORACLE-DMS-ECID: 024170c1c59452c4:6fa 58a63:1526a57ea2b:-8000-0000000000003fd0
X-Powered-By: Servlet/2.5 JSP/2.1
{
"expires_in":28800,
"token_type":"Bearer",
"oracle_tk_context":"user_assertion",
"refresh_token":"eyJhbGciOiJSUzUxMiIsInR5cCI6IkpXVCIsIng1dCI6Ilh0em9yVUdfWmtOVDZRUUg2eElMYXl0UENn TSIsImtpZCI6I
m9yYWtleSJ9.eyJzdWIiOm51bGwsIm9yYWNsZS5vYXV0aC51c2VyX29yaWdpbl9pZF90eXBlIjoiTERBUF9VSUQiLCJvcmFjbGUub2F1d
GgudXNlcl9vcmlnaW5faWQiOiJKRE9FIiwiaXNzIjoid3d3Lm9yYWNsZS5leGFtcGxlLmNvbSIsIm9yYWNsZS5vYXV0aC5ydC50dGMiOiJ1
c2VyX2Fzc2VydGlvbiIsIm9yYWNsZS5vYXV0aC5zdmNfcF9uIjoiT0F1dGhTZXJ2aWNlUHJvZmlsZSIsImlhdCI6MTQ1MzQ5OTU0Miwib3
JhY2xlOmlkbTpjbGFpbXM6Y2xpZW50Omlvc2lkZm9ydmVuZG9yIjoiNjBCMDZGNDYtRDI3RC00MEFBLUJEQjktNzE0MjNGMTkyMjUz
Iiwib3JhY2xlLm9hdXRoLnRrX2NvbnRleHQiOiJyZWZyZXNoX3Rva2VuIiwiZXhwIjoxNDUzNjE0NzQyLCJvcmFjbGU6aWRtOmNsYWltcz
pjbGllbnQ6bWFjYWRkcmVzcyI6IjAwOjIzOjMyOjkxOkE2Ojk5IiwicHJuIjpudWxsLCJqdGkiOiIwMTI3MTg4 MS1jYm M1LTRhMGQtOTA
4ZS1jMGYyYTMzNTcxZjkiLCJvcmFjbGUub2F1dGguY2xpZW50X29yaWdpbl9pZCI6IkFwcDEiLCJ1c2VyLnRlbmFudC5uYW1lIjoiRGVmY
XVsdERvbWFpbiIsIm9yYWNsZS5vYXV0aC5pZF9kX2lkIjoiMTIzNDU2Nzgt MTI zNC0xMjM0LTEyMzQt MTI zNDU2Nzg5MDEyIn0.njnwZ
QL7UN-UjEJkE2gVo0XqTHzEm _Bq4EkvkjAE1YrP EEZYtmg54fS_fcSdt fBYY18B-
OVPbjmTln9nVLb3gOOO72RFyLvdeKuJ68JhsuN9JAYlSE6IF2F-CxzxAGx9IFb_ADF6CsZRwiBAGiKQF7gGYJvkfXjicuJdsx8hVBw",
"oracle_grant_type":"urn:ietf:params:oauth:grant-type:jwt-bearer",
"access_token":"eyJhbGciOiJSUzUxMiIsInR5cCI6IkpXVCIsIng1dCI6Ilh0em9yVUdfWmtOVDZRUUg2eElMYXl0UENnTSIsImtpZCI6Im
9yYWtleSJ9.eyJzdWIiOiJKRE9FIiwiaXNzIjoid3d3Lm9yYWNsZS5leGFtcGxlLmNvbSIsIm9yYWNs ZS5vYXV0aC5zdmNfcF9uIjoiT0F1dGh
TZXJ2aWNlUHJvZmlsZSIsImlhdCI6MTQ1MzQ5OTU0Miwib3JhY2xlOmlkbTpjbGFpbXM6Y2xpZW50Omlvc2lkZm9ydmVuZG9yIjoiNjB
CMDZGNDYtRDI3RC00MEFBLUJEQjktNzE0MjNGMTkyMjUzIiwib3JhY2xlLm9hdXRoLnBybi5pZF90eXBlIjoiTERBUF9VSUQiLCJleHAiO
jE0NTM1 MjgzNDIsIm9yYWNsZS5vYXV0aC50a19jb250ZXh0IjoidXNlcl9hc3NlcnRpb24iLCJvcmFjbGU6aWRtOmNsYWltczpjbGllbnQ
6bWFjYWRkcmVzcyI6IjAwOjIzOjMyOjkxOkE2Ojk5IiwicHJuIjoiSkRPRSIsImp0aSI6IjQ0OTJhZWNhLTQyYmItND M1Mi04MGYwLTg2Mz
IzYjI5NzAxOSIsIm9yYWNsZS5vYXV0aC5jbGllbnRfb3JpZ2luX2lkIjoi QXBwMSIsInVzZXIudGVuYW50Lm5hbWUiOiJEZWZhdWx0RG9tY
WluIiwib3JhY2xlLm9hdXRoLmlkX2RfaWQiOiIxMjM0NTY3OC0xMjM0LTEyMzQt MTIzNC0xMjM0NTY3ODkw MTIifQ.ltot -
Note: If the user assertion OR client assertion has expired get a new one by executing Exercise 7
Transfer-Encoding: chunked
Content-Type: application/json
X-ORACLE-DMS-ECID: 024170c1c59452c4:6fa58a63:1526a57ea2b:-8000-00000000000042c7
X-Powered-By: Servlet/2.5 JSP/2.1
{
"oracle_aux_tokens":
{"oam_mt":
}
,"oracle_tk_context":"oam_ut",
"oracle_grant_type":"oracle-idm:\/oauth\/grant-type\/user-token\/oam",
"access_token":"o8rUxCH4Luz+2gHqZynMRvXpcQ9pVjkEl6Gy2E63o7qXbjmyXzhi6jGLyhpWq70612cn7T3o+GHqerBfljb+N3dadpq
g\/AtkEFyWb TouVnl5n7\/WfjdSzJwzhyFiMZwx EDTsmHoKR92z9ftw5edgs2eNv1eAppXPTEY4dxUujCbdeWD4w6LH6azxaP5+Wotm
gvr4W1XA8q6LsMJOdJVOHlj6Q5dzyABkxbXZznfj7i4F8spMKzHuiAkKey73MiEdclSgCgwYnZx3KwwB9EL8 xVlr4wjI+bfH3RejgHQxtk6
rOFAaaazUYOStuWMqDsQwCq8gvO48JYpk656inWrZlAlADBaFveX29bR3TlYU0ppxNtl81yKhj49PJZTKaeflcalQJ+ZUNPdxv8O1IV6qH
VLvvW9eFklideiDbpJ1IagAwyZqfYg3nIhShaeFT5iDRSHP8x2WPlpc2+i06XzGIsDpf6WzVnoclKkMqEfdArI="
Note that you will have both oam MT and oam UT in the response.
Note: The oracle_user_credentials is base 64 encoding of JSON user credential payload. If the user
assertion OR client assertion has expired get a new one by executing Exercise 7
X-ORACLE-DMS-ECID: 024170c1c59452c4:6fa58a63:1526a57ea2b:-8000-00000000000043f9
X-Powered-By: Servlet/2.5 JSP/2.1
"oracle_aux_tokens":
{"oam_mt":
{
"oracle_tk_context":"oam_mt ",
"oracle_grant_type":"oracle-idm:\/oauth\/grant-type\/oam\/master-token",
"access_token":"VERSI ON_4%7ERPwm0wx17J6TsvDR7%2BX2kg%3D%3D%7EsITmOlSI7mtpmuEcOI59Utcm4q6AjQCvKxhyAAZ5C
H8jZS6todR%2FCoEhDPFvoVmbqQ4P0KZSBrZOR1w%2FInyqD%2F1B4X3rGhUdmZAN%2Fb14RTZhM9SvY4lnvgymHNmxUUeS2Z%
2BZ2IRouCRjUJnWJhO20MopjEmsPeZW90yaBJ3u0CAav%2BtcfJydkTi7v30vN3w3SNrfwQcQlHlWXUPxSnASYTyANH Mrayfh15Wwb
blSIdYryDTsHS2oZY2wgIgPHxgHOyJUImwhi7yUdf77rCu4vPd65MDR%2FEAy%2BimRtjfVIVM%3D"
}
}
,
"oracle_tk_context":"oam_ut ",
"oracle_grant_type":"oracle-idm:\/oauth\/grant-type\/user-token\/oam",
Note: If the user assertion OR client assertion has expired get a new one by executing Exercise 7
{
"oracle_aux_tokens":
{
"oam_mt":
{
"oracle_tk_context":"oam_mt ",
"oracle_grant_type":"oracle-idm:\/oauth\/grant-type\/oam\/master-token",
"access_token":"VERSI ON_4%7El2ytaVBiXb4Jl7f46R4WcA%3D%3D%7EthyPghzSp4copV3b0lmdKb2nsVadin7VYh%2FP%2Fb4cph
DbpxtipOhbmRI0IZsrNSpont%2BnJccCFyju57VLSeGZro8co0I3BWmWuapd%2F7ESxGL29nLCyU%2FTJdZeSg9Nl1BaJBRg1x7y07wh
aFiMoA0yma0j7BoM%2Fun4LCb%2Bcy0pVYBX%2FTRlIPWInTof1j2ulQ3u9o BsyiNC1eRmjx%2BHJqHPi97oxZeGLI4Nije0LndSTWOK
1uil36zAmyvfufYFM85hw7BJTFILAso%2FkuVH7nhvbcBLKJWJoc84NJdifl1oZCo%3D"}},"oracle_tk_context":"oam_ut","oracle_gran
t_type":"oracle-idm:\/oauth\/grant-type\/user-
token\/oam","access_token":"+O4haZdGqWHd0Y0YOuqCMMwba CVNa242zLN0DEFgWbhqhp1fUtNXg4FA5\/6Rp7bQ57955ybHli
oLDerCNUD++CHlAwcIFTZhxHmwbk964ij7y+5DLXWHft+iH7h9iHrsJApyGFg9RC6O3RhXjMrNkg9u40z3Bb2il0jkudPsLNMBqwyYp8r
oTYEvpuxz0X8FN2a8wS1WKVJjuaLubK9sG+rD\/jW\/Y5bRLHarWUu3zFkDVgGsBrKeB4xUHQUxGxWKy\/Vr4IpoigYIGAzq8H2SdYe\
/StvrefrBgFELs9rgqAhmTfxruZgI1qNxRN2ZrPOP7Dn58+RKM0019UtyMysJEsPxB4rIUNoskJVd2q08Z\/fI8EEOO9dDL\/uCbrYb\/DYR
JxLUm5NYkuAd0vfO6FXPyODIxXnxM4yMzn M2swcguMOG3ZVbdHiYMMBfWweEKT2ZNwb Y1J4CQkEycwWKWGV3 \/CSb4kVdKpb
DwjrQ5IlbSEk="
}
Steps
1. Login to OAMConsole as DCRANE/Oracle123
2. Click on Mobile Security -> Mobile OAuth Services -> DefaultDomain -> Service Profiles ->
OAuth ServiceProfile
3. Expand the Attributes section
4. Modify msAlwaysShowLogin to false from true
Note : Since the server has been restarted, you need to get a new Mobile Verification code by executing Exercise 5 .
{
"oracle_client_assertion_type":"urn:ietf:params:oauth:client-assertion-type:jwt-bearer",
"oracle_aux_tokens":
{"user_assertion":
{
"oracle_token_in_server_device_store":true,
"expires_in":28800,
"token_type":"Bearer",
"oracle_tk_context":"user_assertion",
"refresh_token":"",
"oracle_grant_type":"urn:ietf:params:oauth:grant-type:jwt-bearer",
"access_token":""
}
},
"expires_in":604800,
"token_type":"Bearer",
"oracle_tk_context":"client_assertion",
"access_token":"eyJhbGciOiJSUzUxMiIsInR5cCI6IkpXVCIsIng1dCI6Ilh0em9yVUdfWmtOVDZRUUg2eElMYXl0UENnTSIsImtpZCI6Im
9yYWtleSJ9.eyJvcmFjbGUub2F1dGguY3QucmVnX3VzZXJfaWRfdHlwZSI6IkxEQVBfVUl EIiwic3ViIjoiQXBwMSIsImlzcyI6Ind3dy5vcmF
jbGUuZXhhbXBsZS5jb20iLCJvcmFjbGUub2F1dGguc3ZjX3BfbiI6Ik9BdXRoU2VydmljZVByb2ZpbGUiLCJpYXQiOjE0NTM1MDczMTgsI
Notice the parameters highlighted in RED. Since the user token is stored in Server side, it’s not returned as part of the
response.
Note: Since the server has been restarted, get the new mobile verificati on code for App2 by executing exersize6.
===================== HTTP Response ====================================
HTTP/1.1 200 OK
Cache-Control: no-cache, no-store, must-revalidate
Date: Mon, 25 Jan 2016 22:58:12 GMT
Pragma: no-cache
Transfer-Encoding: chunked
Content-Type: application/json
X-ORACLE-DMS-ECID: 024170c1c59452c4:4b11e1b9:15279b38af7:-8000-000000000000828b
X-Powered-By: Servlet/2.5 JSP/2.1
"access_token":"eyJhbGciOiJSUzUxMiIsInR5cCI6IkpXVCIsIng1dCI6Ilh0em9yVUdfWmtOVDZRUUg2eElMYXl0UENnTSIsImtpZCI6Im
9yYWtleSJ9.eyJvcmFjbGUub2F1dGguY3QucmVnX3VzZXJfaWRfdHlwZSI6IkxEQVBfRlFETiIsI nN1YiI6IkFwcDIiLCJpc3MiOiJ3d3cub3Jh
Y2xlLmV4YW1wbGUuY29tIiwib3JhY2xlLm9hdXRoLnN2Y19wX24iOiJPQXV0aFNlcnZpY2VQcm9maWxlIiwiaWF0IjoxNDUzNzYyNjkzL
CJvcmFjbGUub2F1dGgucHJuLmlkX3R5cGUiOiJDbGllbnRJRCIsIm9yYWNsZTppZG06Y2xhaW1zOmNsaWVudDppb3NpZGZvcnZlbmR
vciI6IjYwQjA2RjQ2LUQyN0QtNDBBQS1CREI5LTcxNDIzRjE5MjI1MyIsImV4cCI6MTQ1ND M2NzQ5Mywib3JhY2xlLm9hdXRoLmN0LnJ
lZ191c2VyIjoiSkRPRSIsIm9yYWNsZS5vYXV0aC50a19jb250ZXh0IjoiY2xpZW50X2Fzc2VydGlvbiIsIm9yYWNsZTppZG06Y2xhaW1zOm
NsaWVudDptYWNhZGRyZXNzIjoiMDA6MjM6MzI6OTE6QTY6OTkiLCJwcm4iOiJBcHAyIiwianRpIjoiZGNiMGU2MjgtNDk3My00NTVlL
TkzYTItYWI4ODZhZW E2ZjFiIiwidXNlci50ZW5hbnQubmFtZSI6IkRlZmF1bHREb21haW4iLCJvcmFjbGUub2F1dGguaWRfZF9pZCI6IjEy
MzQ1Njc4LTEyMzQtMTIzNC0x MjM0LTEyMzQ1Njc4OTAx MiJ9.M_8sLArN2pkzA1cWZGkakTracIpcEuPcnmr_OIeKWPaecPWDFfxn4
_mAj4CJXuMGU22-4MBCNm0OiVmOM2qkh8q7eUINyJD7LeC7JztboQei -
h_CorbsQmt_bUGvAOd8 QvPwMTpIXd_5rOw0KpBMr3GF9jITU2YcbNpeSjed05I"
}
Note: If the client assertion has expired get a new one by executing Exercise 17
{
"expires_in":3600,
"token_type":"Bearer",
"refresh_token":"eyJhbGciOiJSUzUxMiIsInR5cCI6IkpXVCIsIng1dCI6Ilh0em9yVUdfWmtOVDZRUUg2eElMYXl0UENn TSIsImtpZCI6I
m9yYWtleSJ9.eyJzdWIiOm51bGwsIm9yYWNsZS5vYXV0aC51c2VyX29yaWdpbl9pZF90eXBlIjoiTERBUF9VSUQiLCJvcmFjbGUub2F1d
GgudXNlcl9vcmlnaW5faWQiOiJKRE9FIiwiaXNzIjoid3d3Lm9yYWNs ZS5leGFtcGxlLmNvbSIsIm9yYWNsZS5vYXV0aC5ydC50dGMiOiJy
ZXNvdXJjZV9hY2Nlc3NfdGsiLCJvcmFjbGUub2F1dGguc3ZjX3BfbiI6Ik9BdXRoU2VydmljZVByb2ZpbGUiLCJpYXQiOjE0NTM1MDg5NT
MsIm9yYWNsZTppZG06Y2xhaW1zOmNsaWVudDppb3NpZGZvcnZlbmRvciI6IjYwQjA2RjQ2LUQyN0QtNDBBQS1CREI5LTcxNDIz RjE5
MjI1MyIsIm9yYWNsZS5vYXV0aC50a19jb250ZXh0IjoicmVmcmVzaF90b2tlbiIsImV4cCI6MTQ1MzUyMzM1Mywib3JhY2xlOmlkbTpj
bGFpbXM6Y2xpZW50Om1hY2FkZHJlc3MiOiIwMDoyMzozMjo5MTpBNjo5OSIsInBybiI6bnVsbCwianRpIjoiOGJjOGEwN2UtYTE4Ny0
0YTU3LThjZWItNjI5ZjhhODU1MmYwIiwib3JhY2xlLm9hdXRoLnNjb3BlIjoiVXNlclByb2ZpbGUudXNlcnMiLCJvcmFjbGUub2F1dGguY2
xpZW50X29yaWdpbl9pZCI6IkFwcDEiLCJ1c2VyLnRlbmFudC5uYW1lIjoiRGVmYXVsdERvbWFpbiIsIm9yYWNsZS5vYXV0aC5pZF9kX2l
kIjoiMTIzNDU2Nzgt MTI zNC0xMjM0LTEyMzQt MTIzNDU2Nzg5 MDEyIn0.b4s40oHhMj_WgcLqRx21nTqyM1TGs72e PunjHTInWatBX
b_qh7EOm3S-IisdV-F-
09mcWocR05rhXhyAytLGhDrsWveutkXqFjhBD9YblyiumnqAP8jKQRfdVUSKfCWmsq6xMEoVqwIxAA_Y_5W2JNAqEopv9gBhvM7yp
B-80b8",
"access_token":"eyJhbGciOiJSUzUxMiIsInR5cCI6IkpXVCIsIng1dCI6Ilh0em9yVUdfWmtOVDZRUUg2eElMYXl0UENnTSIsImtpZCI6Im
9yYWtleSJ9.eyJzdWIiOiJKRE9FIiwib3JhY2xlLm9hdXRoLnVzZXJfb3JpZ2luX2lkX3R5cGUiOiJMREFQX1VJRCIsIm9yYWNsZS5vYXV0aC5
1c2VyX29yaWdpbl9pZCI6IkpET0UiLCJpc3MiOiJ3d3cub3JhY2xlLmV4YW1wbGUuY29tIiwib3JhY2xlLm9hdXRoLnN2Y19wX24iOiJPQ
XV0aFNlcnZpY2VQcm9maWxlIiwiaWF0IjoxNDUzNTA4OTUzLCJvcmFjbGUub2F1dGgucHJuLmlkX3R5cGUiOiJMREFQX1VJRCIsIm9yY
WNsZTppZG06Y2xhaW1zOmNsaWVudDppb3NpZGZvcnZlbmRvciI6IjYwQjA2RjQ2LUQyN0QtNDBBQS1CREI5LTcxNDIzRjE5 MjI1MyIs
Im9yYWNsZS5vYXV0aC50a19jb250ZXh0IjoicmVzb3VyY2VfYWNjZXNzX3RrIiwiZXhwIjoxNDUzNTEyNTUzLCJvcmFjb GU6aWRtOmNs
YWltczpjbGllbnQ6bWFjYWRkcmVzcyI6IjAwOjIzOjMyOjkxOkE2Ojk5IiwicHJuIjoiSkRPRSIsImp0aSI6ImFmNzg5MWQ0LTdkMjUtNDky
Mi05MDdjLWRmNDFlYzI1OW E5YyIsIm9yYWNsZS5vYXV0aC5zY29wZSI6IlVzZXJQcm9maWxlLnVzZXJzIiwib3JhY2xlLm9hdXRoLmNs
aWVudF9vcmlnaW5faWQiOiJBcHAxIiwidXNlci50ZW5hbnQubmFtZSI6IkRlZmF1bHREb21haW4iLCJvcmFjbGUub2F1dGguaWRfZF9
pZCI6IjEyMzQ1Njc4LTEyMzQtMTI zNC0xMjM0LTEyMzQ1Njc4OTAxMiJ9.TdFTu76A0FIsIWPcEL3qkMMbP -E33TDHLC2-
rapama2NXxTzw1xn2ezDdgb52iVLI_VHbxLhs5xWaYn-kwBYG4AYpUiIstG9A8GS-sRby-
H7Se6UwBieJnaaJLyyDmfcMsYJOAPIoQRmdEERqiRe9ZOOSX z3NmiuxU0kaywU4gw"
}
Note: If the client assertion has expired get a new one by executing Exercise 17
Content-Type: application/json
X-ORACLE-DMS-ECID: 024170c1c59452c4:61a521a3:1526bc13b75:-8000-000000000000078f
X-Powered-By: Servlet/2.5 JSP/2.1
{
"expires_in":3600,
"token_type":"Bearer",
"refresh_token":"eyJhbGciOiJSUzUxMiIsInR5cCI6IkpXVCIsIng1dCI6Ilh0em9yVUdfWmtOVDZRUUg2eElMYXl0UENnTSIsImtpZCI6Im
9yYWtleSJ9.eyJzdWIiOm51bGwsIm9yYWNsZS5vYXV0aC51c2VyX29yaWdpbl9pZF90eXBlIjoiTERBUF9VSUQiLCJvcmFjbGUub2F1dG
gudXNlcl9vcmlnaW5faWQiOiJKRE9FIiwiaXNzIjoid3d3Lm9yYWNsZS5leGFtcGxlLmNvbSIsIm9yYWNsZS5vYXV0aC5ydC50dGMiOiJyZ
XNvdXJjZV9hY2Nlc3NfdGsiLCJvcmFjbGUub2F1dGguc3ZjX3BfbiI6Ik9BdXRoU2VydmljZVByb2ZpbGUiLCJpYXQiOjE0NTM1 MDkzNTU
sIm9yYWNsZS5vYXV0aC50a19jb250ZXh0IjoicmVmcmVzaF90b2tlbiIsImV4cCI6MTQ1MzUyMzc1NSwicH JuIjpudWxsLCJqdGkiOiI3N
GRhYzMxNS01MDk2LTQ4ZDYtYm YxNS0zN2ZhYjcxNjRmM2 QiLCJvcmFjbGUub2F1dGguY2xpZW50X29yaWdpbl9pZCI6IkFwcDEiLCJv
cmFjbGUub2F1dGguc2NvcGUiOiJVc2VyUHJvZmlsZS51c2VycyIsInVzZXIudGVuYW50Lm5hbWUiOiJEZWZhdWx0RG9tYWluIiwib3JhY
2xlLm9hdXRoLmlkX2RfaWQiOiIxMjM0NTY3OC0x MjM0LTEyMzQtMTIzNC0x MjM0NTY3ODkw MTIifQ.s3A-
u4mdixxiTZW7nv123x4jVJrtVYGJYFS-
l8yn7nhhGSbWeILFnbfH1hvyBT79SyuCK5tMc9uKkILarDHgzX6lKQXD0aqG1_ndBxyHf0EWnvTWLBNZop4vSp75AjNFcIpwiEgxV3GT
V2VGq7qGoQV8bTgiOI Epexl9Ll9DCKI",
"access_token":"eyJhbGciOiJSUzUxMiIsInR5cCI6IkpXVCIsIng1dCI6Ilh0em9yVUdfWmtOVDZRUUg2eElMYXl0UENnTSIsImtpZCI6Im
9yYWtleSJ9.eyJzdWIiOiJKRE9FIiwib3JhY2xlLm9hdXRoLnVzZXJfb3JpZ2luX2lkX3R5cGUiOiJMREFQX1VJRCIsIm9yYWNsZS5vYXV0aC5
1c2VyX29yaWdpbl9pZCI6IkpET0UiLCJpc3MiOiJ3d3cub3JhY2xlLmV4YW1wbGUu Y29tIiwib3JhY2xlLm9hdXRoLnN2Y19wX24iOiJPQ
XV0aFNlcnZpY2VQcm9maWxlIiwiaWF0IjoxNDUzNTA5MzU1LCJvcmFjbGUub2F1dGgucHJuLmlkX3R5cGUiOiJMREFQX1VJRCIsImV4
cCI6MTQ1MzUxMjk1NSwib3JhY2xlLm9hdXRoLnRrX2NvbnRleHQiOiJyZXNvdXJjZV9hY2Nlc3NfdGsiLCJwcm4iOiJKRE9FIiwianRpIjoiY
Note: If the client assertion has expired get a new one by executing Exercise 17
Content-Length: 294
Content-Type: text/html; charset=iso -8859-1
7. Notice the request-context. This is the value you should use for parameter
oracle_oam_application_context. Use the value you get by executing the above
command.
{
"oracle_aux_tokens":
HTTP/1.1 200 OK
Date: Sat, 23 Jan 2016 00:41:13 GMT
Content-Length: 0
X-ORACLE-DMS-ECID: 024170c1c59452c4:61a521a3:1526bc13b75:-8000-0000000000000881
X-Powered-By: Servlet/2.5 JSP/2.1
==============================================================================
{
"oracle_token_in_server_device_store":true,
"expires_in":28800,
"token_type":"Bearer",
"oracle_tk_context":"user_assertion",
"refresh_token":"",
"oracle_grant_type":"urn:ietf:params:oauth:grant-type:jwt-bearer",
"access_token":""
}
Summary – In this Lab we have seen how mobile apps can use OAuth Calls . We have also seen
the support for both Server side SSO enabled and Disabled.