Ejemplo de configuración de la aplicación OAM y perfil de autorización de Oracle GoldenGate

Los siguientes scripts son ejemplos de configuración de varios componentes al crear una aplicación segura de Oracle Access Manager (OAM).

Creación del Dominio de Identidad

En el siguiente ejemplo se muestra la creación de un dominio de identidad en OAM.

curl -x ""
     -u 'weblogic:weblogic1'
       'http://east.oraclevcn.com:18585/oam/services/rest/ssa/api/v1/oauthpolicyadmin/oauthidentitydomain'
     -H 'Content-Type: application/json'
     -d '
        {"name": "OGGDomain1"
        ,"identityProvider": "OUD"
        ,"description": "Test Domain"
        , "tokenSettings":
           [{"tokenType": "ACCESS_TOKEN"
	  ,"tokenExpiry": 3600
	  ,"lifeCycleEnabled": false
	  ,"refreshTokenEnabled": false
	  ,"refreshTokenExpiry": 86400
	  ,"refreshTokenLifeCycleEnabled": false
            }
	 ,{"tokenType": "AUTHZ_CODE"
	  ,"tokenExpiry": 3600
	  ,"lifeCycleEnabled":false
	  ,"refreshTokenEnabled": false
	  ,"refreshTokenExpiry": 86400
	  ,"refreshTokenLifeCycleEnabled": false
	  }
	 ,{"tokenType": "SSO_LINK_TOKEN"
	  ,"tokenExpiry": 3600
	  ,"lifeCycleEnabled": false
	  ,"refreshTokenEnabled": false
	  ,"refreshTokenExpiry":86400
	  ,"refreshTokenLifeCycleEnabled": false
	  }
	 ]
       ,"errorPageURL": " http://east.oraclevcn.com:2222/oam/pages/servererror.jsp"
       ,"consentPageURL":"http://east.oraclevcn.com:2222/oam/pages/consent.jsp"
       ,"customAttrs": null
       }'

Crear servidor de recursos

En el siguiente ejemplo se muestra la creación de un servidor de recursos para la aplicación OAM:

curl -x ""
     -u weblogic:weblogic1
     -H "Content-Type: application/json" '
	http://east.oraclevcn.com:18585/oam/services/rest/ssa/api/v1/oauthpolicyadmin/application'
     -X POST
     -d '
        {"idDomain":"OGGDomain1"
        ,"name":"OGGResourceServerCorrect"
        ,"scopes":
        [{"scopeName":"oggServiceToService"
         ,"description":"test ogg urn scope"
        }]
        }'

Creación de Aplicaciones

En el siguiente ejemplo se muestra la creación de una aplicación con algunos URI de redirección mediante OAM:

curl -x ""
     -v
     -u weblogic:<weblogicpwd>
     -H "Content-Type: application/json"
       'http://east.oraclevcn.com:18585/oam/services/rest/ssa/api/v1/oauthpolicyadmin/client'
     -X POST
     -d '
        {"secret":"OGGClient1Secret"
        ,"id":"OGGClientID1"
        ,"scopes":["OGGResourceServerCorrect.oggServiceToService"]
        ,"clientType":"CONFIDENTIAL_CLIENT"
        ,"idDomain":"OGGDomain1"
        ,"description":"Client Description"
        ,"name":"OGGClientCorrect"
        ,"grantTypes":["PASSWORD", "CLIENT_CREDENTIALS", "AUTHORIZATION_CODE"]
        ,"defaultScope":"OGGResourceServerCorrect.oggServiceToService"
        ,"redirectURIs":
          [{"url":"https://localhost:9010/services/v2/authorization", "isHttps":true}
          ,{"url":"https://west.oraclevcn.com:9010/services/v2/authorization", "isHttps":true}
          ,{"url":"https://west.oraclevcn.com:9001/services/v2/authorization", "isHttps":true}
          ,{"url":"https://localhost:9001/services/v2/authorization", "isHttps":true}
          ]
         ,"attributes":[{"attrName":"OGGGroups"
         ,"attrValue":"${user.groups}"
         ,"attrType":"STATIC"
         }'

Creación de un perfil de autorización en Oracle GoldenGate para la aplicación de OAM

El siguiente fragmento de código es un ejemplo de cómo crear un perfil de autorización en Oracle GoldenGate (mediante cURL) para la aplicación OAM:

curl -k
     -u ggma:<ggmapwd>
     -X POST
     -d '{"type":"oam"
         ,"clientID":"OGGClientID1"
         ,"clientSecret":"OGGClient1Secret"
         ,"tenantDiscoveryURI":"http://east.oraclevcn.com:2222/.well-known/openid-configuration"
         ,"groupToRoles":{"securityGroup":"fusionapps_gg_prod_sec"
                         ,"administratorGroup":"fusionapps_gg_prod_admin"
                         }
         ,"identityDomain":"OGGDomain1"
         }'
         https://localhost:9010/services/v2/deployments/ServiceManager/authorization/profiles/smProfile