Usar a Conta de Integração de Serviço sem Expiração de Senha

O Oracle Integration fornece uma conta de integração de serviço na qual a senha não expira. A conta de integração de serviço consiste em uma atribuição de aplicativo genérica criada com regras predefinidas específicas. Você deve usar essa conta para instalar o agente de conectividade.

Sobre a Conta de Usuário do Service Integration

Você só pode usar a conta de usuário de integração de serviço com a política de segurança de Autenticação Básica. O uso contínuo dessa política de segurança pelos clientes aumenta a carga de desempenho no serviço de autenticação (Oracle Identity Cloud Service) por ter de continuar validando as mesmas credenciais repetidamente. O aumento da carga de desempenho depende de dois fatores.

  • Solicitações repetidas ao servidor Oracle Identity Cloud Service para autenticação/asserção de senha das mesmas credenciais básicas de autenticação.
  • A política de senha do Oracle Identity Cloud Service exige o acesso ao armazenamento de IDs para cada uma das solicitações.

Para reduzir a carga de desempenho causada por solicitações repetidas, você pode usar a conta de integração de serviço sem expiração de senha.

Com a Autenticação Básica, você pode usar credenciais genéricas: o ID do cliente (que termina com _BASICAUTH) e o segredo do cliente associado. Esta seção descreve como criar essas credenciais.

Tarefa 1. Obter o ID do aplicativo da instância do Oracle Integration

Se sua tenancy usar domínios de identidades, um administrador de domínio de identidades deverá executar esta tarefa. Se sua tenancy não usar domínios de identidade, um administrador do Oracle Identity Cloud Service deverá executar esta tarefa.

  1. Navegue até a página do Oracle Cloud Services.

    Suas etapas dependem se sua tenancy usa domínios de identidade.

    • Execute as seguintes tarefas se sua tenancy usar domínios de identidades:
      1. Abra a Console do Oracle Cloud Infrastructure.
      2. Abra o menu de navegação e clique em Identidade e Segurança.
      3. Em Identidade, clique em Domínios.
      4. Na tabela, selecione o nome do domínio.

        ou

        Abaixo da tabela, selecione o domínio padrão.

      5. No menu à esquerda, abaixo do domínio de Identidade, selecione Oracle Cloud Services.
    • Execute as seguintes tarefas se sua tenancy não usar domínios de identidade:
      1. Abra o Oracle Identity Cloud Service.
      2. Abra o menu de navegação e clique em Oracle Cloud Services.
  2. Localize a instância do Oracle Integration na lista.

    As instâncias são identificadas por seus IDs de instância de serviço. Se você não tiver certeza do ID da instância de serviço, acesse o Oracle Integration, abra a caixa de diálogo Sobre e marque o campo Instância de serviço. Você pode colar parte ou todo esse valor na caixa de pesquisa que aparece acima da tabela.

  3. Clique no Nome do serviço.
  4. Ao lado do campo ID do Aplicativo, clique em Copiar e cole o valor em algum lugar para referenciá-lo posteriormente, como um arquivo de texto.

    Use esse valor no lugar do valor ${OIC_APP_ID} nos comandos desta página.

Observação

Para facilitar o uso, a Oracle recomenda adicionar os parâmetros descritos nesta seção como variáveis de ambiente no sistema. Por exemplo:
export OIC_APP_ID=parameter_value
. . .
. . .

Tarefa 2. Criar e Ativar o Aplicativo Administrador de Serviço

  1. Navegue até a página Aplicativos.

    Suas etapas dependem se sua tenancy usa domínios de identidade.

    • Se sua tenancy usar domínios de identidade: Na Console do Oracle Cloud Infrastructure, no menu esquerdo abaixo do domínio de Identidade, selecione Aplicativos.
    • Se sua tenancy não usar domínios de identidade: No Oracle Identity Cloud Service, abra o menu de navegação e clique em Aplicativos.
  2. Crie e configure um aplicativo confidencial.

    Suas etapas dependem se sua tenancy usa domínios de identidade.

    • Execute as seguintes etapas se sua tenancy usar domínios de identidade:
      1. Na página Aplicativos, clique em Adicionar.
      2. No pop-up Adicionar aplicativo, selecione Aplicativo Confidencial e clique em Iniciar workflow.

        O assistente de Adição de Aplicativo Confidencial será exibido.

      3. Na primeira página do assistente, informe um valor no campo Nome e clique em Próximo.
      4. Na segunda página do assistente, preencha os seguintes campos e clique em Próximo:
        • Configuração do cliente: Selecione Configurar este aplicativo como cliente agora.

          Opções adicionais são exibidas na página.

        • Abaixo da Autorização, selecione Credenciais do cliente e Atualizar token.
        • Abaixo da política de emissão de token, selecione Adicionar atribuições de aplicativo.
        • Abaixo das atribuições do Aplicativo, clique em Adicionar atribuições. No painel Adicionar atribuições de aplicativo, selecione Administrador de Domínio de Identidades e clique em Adicionar.
      5. Na terceira página do assistente, clique em Finalizar.
    • Execute as seguintes etapas se sua tenancy não usar domínios de identidade:
      1. Na página Aplicativos, clique em Adicionar.
      2. No pop-up Adicionar aplicativo, selecione Aplicativo Confidencial.

        O assistente de Adição de Aplicativo Confidencial será exibido.

      3. Na primeira página do assistente, informe um valor no campo Nome e clique em Próximo.
      4. Na segunda página do assistente, preencha os seguintes campos e clique em Próximo:
        • Selecione Configurar este aplicativo como cliente agora.
        • Na seção Autorização, ao lado de Tipos de Concessão Permitidos, selecione Credenciais do cliente e Atualizar token.
        • Na seção Política de Emissão de Token, abaixo de Conceder ao cliente acesso às APIs de Administração do Identity Cloud Service, clique em Adicionar.
        • No pop-up Adicionar Atribuição de Aplicativo, selecione Administrador de Domínio de Identidades e clique em Adicionar.

          Dica:

          Digite a identidade na caixa de pesquisa acima da tabela para localizar facilmente a função.
      5. Clique em Próximo até chegar à última página do assistente e, em seguida, clique em Finalizar.

    O aplicativo é criado e a página de informações do aplicativo é exibida.

  3. Clique em Ativar e em Ativar aplicativo.

    Se você não ativar o aplicativo de administrador de serviços, o seguinte erro será exibido quando você configurar o aplicativo de integração de serviços.

    The OAuth Client app is inactive or the OAuth Client facet is not enabled for app clientId

  4. Na página de informações do aplicativo, copie os seguintes valores e cole-os em algum lugar que você possa referenciá-los posteriormente, como um arquivo de texto:
    • ID do Aplicativo: Use esse valor no lugar do valor ${SA_APP_ID} nos comandos desta página.
    • ID do Cliente ( role até a seção Informações Gerais para localizar esse campo): Use esse valor no lugar do valor ${SA_CLIENT_ID} nos comandos desta página.
    • Segredo do cliente ( role até a seção Informações Gerais para preencher esse campo e clique em Mostrar segredo): Use esse valor no lugar do valor ${SA_CLIENT_SECRET} nos comandos desta página.

Tarefa 3. Configurar o Aplicativo de Integração de Serviço

  1. No painel de navegação esquerdo, clique em Oracle Cloud Services.
  2. Selecione sua instância do Oracle Integration.
  3. Na guia Detalhes, copie o valor do ID do Aplicativo. Você também pode copiar esse valor do final do URL do navegador.
  4. Crie o aplicativo de integração de serviço.
    1. Obtenha um token de acesso para criar um aplicativo (para este exemplo, conhecido como ${SA_ACCESS_TOKEN}).
      • Use o comando a seguir para obter a solicitação de token de acesso.

        Neste comando e outros comandos que contêm a entrada IDCS_HOST, substitua IDCS_HOST pelo valor no campo URL do Domínio, que você encontra na página Visão Geral e, em seguida, na guia Informações do Domínio do domínio.

        curl -X POST https://${IDCS_HOST}/oauth2/v1/token -u ${SA_CLIENT_ID}:${SA_CLIENT_SECRET} 
        -d 'grant_type=client_credentials&scope=urn%3Aopc%3Aidm%3A__myscopes__'

        O token de acesso é válido durante uma hora.

      • Copie a resposta do token de acesso:
        {
            "access_token": "eyJ4NXQjUzI1NiI6IlVFQ1RyX25Ram9XYk9........................XV-2ei4pAUYV9aw66k_qL3b842qHw",
            "token_type": "Bearer",
            "expires_in": 3600
        }
    2. Crie um aplicativo com o sufixo _BASICAUTH usando o token de acesso acima. Para este exemplo, OICTEST_BASICAUTH é usado.
      Observação

      Certifique-se de que o comando inteiro apareça como uma única linha sem quebras. Você pode usar uma ferramenta como Postman para garantir que o comando esteja em uma única linha.
      • Crie uma solicitação de aplicativo. Certifique-se de substituir IDCS_HOST pelo valor do host do Oracle Identity Cloud Service.
        curl -X POST https://${IDCS_HOST}/admin/v1/Apps -H 'Authorization: Bearer ${SA_ACCESS_TOKEN}' 
        -H 'Content-Type: application/json' -d '{   "active": true,   "allUrlSchemesAllowed": false,   
        "allowAccessControl": false,   "allowedGrants": ["client_credentials",   "urn:ietf:params:oauth:grant-type:
        jwt-bearer"],   "attrRenderingMetadata": [{     "name": "aliasApps",     "visible": false   }],   
        "basedOnTemplate": {     "value": "CustomWebAppTemplateId"   },   "clientType": "confidential",   
        "displayName": "OICTEST_BASICAUTH",   "editableAttributes": [     { "name": "allowedGrants" },     
        { "name": "protectableSecondaryAudiences" },     { "name": "asOPCService" },     { "name": 
        "accessTokenExpiry" },     { "name": "linkingCallbackUrl" },     { "name": "isOAuthResource" },     
        { "name": "appIcon" },     { "name": "clientType" },     { "name": "refreshTokenExpiry" },     
        { "name": "trustScope" },     { "name": "landingPageUrl" },     { "name": "audience" },     
        { "name": "samlServiceProvider" },     { "name": "isLoginTarget" },     { "name": "redirectUris" },     
        { "name": "allowedScopes" },     { "name": "tags" },     { "name": "logoutUri" },     { "name": 
        "allowedOperations" },     { "name": "termsOfUse" },     { "name": "serviceParams" },     { "name": 
        "certificates" },     { "name": "aliasApps" },     { "name": "schemas" },     { "name": "isWebTierPolicy" },
             { "name": "trustPolicies" },     { "name": "logoutPageUrl" },     { "name": "secondaryAudiences" },
             { "name": "displayName" },     { "name": "serviceTypeURN" },     { "name": "icon" },     { "name": 
        "description" },     { "name": "isOAuthClient" },     { "name": "allowedTags" },     { "name": 
        "showInMyApps" },     { "name": "isObligationCapable" },     { "name": "isMobileTarget" },     { "name": 
        "allowOffline" },     { "name": "idpPolicy" },     { "name": "appSignonPolicy" },     { "name": 
        "postLogoutRedirectUris" },     { "name": "isFormFill" },     { "name": "loginMechanism" },     { "name": 
        "serviceTypeVersion" },     { "name": "errorPageUrl" },     { "name": "signonPolicy" },     { "name": 
        "identityProviders" },     { "name": "isSamlServiceProvider" },     { "name": "appThumbnail" },     { 
        "name": "loginPageUrl" },     { "name": "scopes" },     { "name": "allowAccessControl" },     { "name": 
        "isKerberosRealm" },     { "name": "allUrlSchemesAllowed" },     { "name": "urn:ietf:params:scim:schemas:
        oracle:idcs:extension:samlServiceProvider:App:encryptionAlgorithm" },     { "name": "urn:ietf:params:scim:
        schemas:oracle:idcs:extension:samlServiceProvider:App:groupAssertionAttributes" },     { "name": "urn:ietf:
        params:scim:schemas:oracle:idcs:extension:samlServiceProvider:App:includeSigningCertInSignature" },     
        { "name": "urn:ietf:params:scim:schemas:oracle:idcs:extension:samlServiceProvider:App:signResponseOrAssertion"
         },     { "name": "urn:ietf:params:scim:schemas:oracle:idcs:extension:samlServiceProvider:App:
        assertionConsumerUrl" },     { "name": "urn:ietf:params:scim:schemas:oracle:idcs:extension:samlServiceProvider:
        App:nameIdUserstoreAttribute" },     { "name": "urn:ietf:params:scim:schemas:oracle:idcs:
        extension:samlServiceProvider:App:logoutResponseUrl" },     { "name": "urn:ietf:params:scim:schemas:oracle:
        idcs:extension:samlServiceProvider:App:succinctId" },     { "name": "urn:ietf:params:scim:schemas:oracle:
        idcs:extension:samlServiceProvider:App:logoutRequestUrl" },     { "name": "urn:ietf:params:scim:schemas:
        oracle:idcs:extension:samlServiceProvider:App:partnerProviderId" },     { "name": "urn:ietf:params:scim:
        schemas:oracle:idcs:extension:samlServiceProvider:App:nameIdFormat" },     { "name": "urn:ietf:params:
        scim:schemas:oracle:idcs:extension:samlServiceProvider:App:logoutBinding" },     { "name": "urn:ietf:params
        :scim:schemas:oracle:idcs:extension:samlServiceProvider:App:userAssertionAttributes" },     { "name": 
        "urn:ietf:params:scim:schemas:oracle:idcs:extension:samlServiceProvider:App:signatureHashAlgorithm" },     
        { "name": "urn:ietf:params:scim:schemas:oracle:idcs:extension:samlServiceProvider:App:metadata" },     
        { "name": "urn:ietf:params:scim:schemas:oracle:idcs:extension:samlServiceProvider:App:encryptAssertion" },
             { "name": "urn:ietf:params:scim:schemas:oracle:idcs:extension:samlServiceProvider:App:logoutEnabled" },
             { "name": "urn:ietf:params:scim:schemas:oracle:idcs:extension:samlServiceProvider:
        App:encryptionCertificate" },     { "name": "urn:ietf:params:scim:schemas:oracle:idcs:
        extension:samlServiceProvider:App:signingCertificate" },     { "name": "urn:ietf:params:scim:schemas:
        oracle:idcs:extension:samlServiceProvider:App:federationProtocol" },     { "name": "urn:ietf:params:scim:
        schemas:oracle:idcs:extension:webTierPolicy:App:webTierPolicyJson" },     {"name": "urn:ietf:params:scim:
        schemas:oracle:idcs:extension:managedapp:App:bundleConfigurationProperties" },     {"name": "urn:ietf:
        params:scim:schemas:oracle:idcs:extension:managedapp:App:isAuthoritative" },     { "name": "urn:ietf:
        params:scim:schemas:oracle:idcs:extension:managedapp:App:enableSync" },     { "name": "urn:ietf:params:
        scim:schemas:oracle:idcs:extension:managedapp:App:adminConsentGranted" },     { "name": "urn:ietf:params:
        scim:schemas:oracle:idcs:extension:managedapp:App:connected" },     { "name": "urn:ietf:params:scim:
        schemas:oracle:idcs:extension:managedapp:App:flatFileBundleConfigurationProperties" },     { "name": 
        "urn:ietf:params:scim:schemas:oracle:idcs:extension:managedapp:App:threeLeggedOAuthCredential" },     { 
        "name": "urn:ietf:params:scim:schemas:oracle:idcs:extension:managedapp:App:bundlePoolConfiguration" },     
        { "name": "urn:ietf:params:scim:schemas:oracle:idcs:extension:managedapp:App:flatFileConnectorBundle" },     
        { "name": "urn:ietf:params:scim:schemas:oracle:idcs:extension:formFillAppTemplate:AppTemplate:revealPasswordOnForm" },
             { "name": "urn:ietf:params:scim:schemas:oracle:idcs:extension:formFillAppTemplate:AppTemplate:userNameFormTemplate"
         },     { "name": "urn:ietf:params:scim:schemas:oracle:idcs:extension:formFillAppTemplate:AppTemplate:userNameFormExpression" },     
        { "name": "urn:ietf:params:scim:schemas:oracle:idcs:extension:formFillAppTemplate:AppTemplate:formCredentialSharingGroupID" },     
        { "name": "urn:ietf:params:scim:schemas:oracle:idcs:extension:formFillAppTemplate:AppTemplate:formCredMethod" },     
        { "name": "urn:ietf:params:scim:schemas:oracle:idcs:extension:formFillAppTemplate:AppTemplate:syncFromTemplate" },     
        { "name": "urn:ietf:params:scim:schemas:oracle:idcs:extension:formFillAppTemplate:AppTemplate:configuration" },     
        { "name": "urn:ietf:params:scim:schemas:oracle:idcs:extension:formFillAppTemplate:AppTemplate:formFillUrlMatch" },     
        { "name": "urn:ietf:params:scim:schemas:oracle:idcs:extension:formFillAppTemplate:AppTemplate:formType" },     
        { "name": "urn:ietf:params:scim:schemas:oracle:idcs:extension:kerberosRealm:App:masterKey" },     { "name": 
        "urn:ietf:params:scim:schemas:oracle:idcs:extension:kerberosRealm:App:maxRenewableAge" },     { "name": 
        "urn:ietf:params:scim:schemas:oracle:idcs:extension:kerberosRealm:App:maxTicketLife" },     { "name": 
        "urn:ietf:params:scim:schemas:oracle:idcs:extension:kerberosRealm:App:supportedEncryptionSaltTypes" },     
        { "name": "urn:ietf:params:scim:schemas:oracle:idcs:extension:kerberosRealm:App:realmName" },     
        { "name": "urn:ietf:params:scim:schemas:oracle:idcs:extension:kerberosRealm:App:ticketFlags" },     
        { "name": "urn:ietf:params:scim:schemas:oracle:idcs:extension:kerberosRealm:App:defaultEncryptionSaltType" },     
        { "name": "urn:ietf:params:scim:schemas:oracle:idcs:extension:requestable:App:requestable" },     
        { "name": "urn:ietf:params:scim:schemas:oracle:idcs:extension:formFillApp:App:revealPasswordOnForm" },     
        { "name": "urn:ietf:params:scim:schemas:oracle:idcs:extension:formFillApp:App:userNameFormExpression" },     
        { "name": "urn:ietf:params:scim:schemas:oracle:idcs:extension:formFillApp:App:formType" },     
        { "name": "urn:ietf:params:scim:schemas:oracle:idcs:extension:formFillApp:App:formCredMethod" },     
        { "name": "urn:ietf:params:scim:schemas:oracle:idcs:extension:formFillApp:App:configuration" },     { "name": 
        "urn:ietf:params:scim:schemas:oracle:idcs:extension:formFillApp:App:formFillUrlMatch" },     { "name": 
        "urn:ietf:params:scim:schemas:oracle:idcs:extension:formFillApp:App:formCredentialSharingGroupID" },     
        { "name": "urn:ietf:params:scim:schemas:oracle:idcs:extension:formFillApp:App:userNameFormTemplate" },     
        { "name": "urn:ietf:params:scim:schemas:oracle:idcs:extension:dbcs:App:domainApp" },     { "name": "active" },     
        { "name": "grantedAppRoles" },     { "name": "userRoles" },     { "name": "adminRoles" },     { "name": "clientSecret" }         
        ],   "infrastructure": false,   "isAliasApp": false,   "isManagedApp": false,   "isMobileTarget": false,   "isOAuthClient": 
        true,   "isOAuthResource": false,   "isOPCService": false,   "isSamlServiceProvider": false,   "isUnmanagedApp": false,   
        "isWebTierPolicy": false,   "loginMechanism": "OIDC",   "migrated": false,   "name": "OICTEST_BASICAUTH",   
        "showInMyApps": false,   "trustScope": "Explicit",   "urn:ietf:params:scim:schemas:oracle:idcs:extension:requestable:App": 
        {     "requestable": false   },   "schemas": ["urn:ietf:params:scim:schemas:oracle:idcs:App",   "urn:ietf:params:scim:schemas:
        oracle:idcs:extension:requestable:App"] }'
      • Você recebe uma resposta do aplicativo:
        {     "clientType": "confidential",     "isAliasApp": false,     "meta": {         
        "created": "2019-04-01T07:51:47.025Z",         "lastModified": "2019-04-01T07:51:47.025Z",
                 "resourceType": "App",         "location": "https://${IDCS_HOST}/admin/v1/Apps/
        0c228094b0f5456289b928f979800308"     },     "active": true,     "isLoginTarget": true,     
        "idcsCreatedBy": {         "display": "OIC_SI_TEST",         "type": "App",         "value": 
        "5debb165fc6946708e2c1f27264fafb1",         "$ref": "https://${IDCS_HOST}/admin/v1/Apps/
        5debb165fc6946708e2c1f27264fafb1"     },     "displayName": "OICTEST_BASICAUTH",     
        "showInMyApps": false,     "isMobileTarget": false,     "allowOffline": false,     
        "isUnmanagedApp": false,     "idcsLastModifiedBy": {         "display": "OIC_SI_TEST",         
        "type": "App",         "value": "5debb165fc6946708e2c1f27264fafb1",         "$ref": 
        "https://${IDCS_HOST}/admin/v1/Apps/5debb165fc6946708e2c1f27264fafb1"     },     
        "isOPCService": false,     "name": "OICTEST_BASICAUTH",     "isOAuthClient": true,     
        "isManagedApp": false,     "isSamlServiceProvider": false,     "infrastructure": false,     
        "allUrlSchemesAllowed": false,     "trustScope": "Explicit",     "id": 
        "0c228094b0f5456289b928f979800308",     "isWebTierPolicy": false,     "loginMechanism": 
        "OIDC",     "allowAccessControl": false,     "isOAuthResource": false,     "migrated": 
        false,     "isKerberosRealm": false,     "allowedGrants": [         "client_credentials",         
        "urn:ietf:params:oauth:grant-type:jwt-bearer"     ],     "attrRenderingMetadata": [         {             
        "name": "aliasApps",             "visible": false         }     ],     "basedOnTemplate": {         
        "value": "CustomWebAppTemplateId",         "lastModified": "2018-05-31T22:35:08Z",         
        "$ref": "https://${IDCS_HOST}/admin/v1/AppTemplates/CustomWebAppTemplateId"     },     "schemas": [         
        "urn:ietf:params:scim:schemas:oracle:idcs:App"     ],     "clientSecret": "91ac1189-b2ca-4ccb-a049-bbc635927646" }
    3. Anote o ID do aplicativo (parte do parâmetro location acima), o ID do cliente (o parâmetro name acima) e o segredo do cliente da resposta (para este exemplo, conhecido como ${SI_APP_ID}, ${SI_CLIENT_ID} e ${SI_CLIENT_SECRET}).
    4. Ative o aplicativo usando o token de acesso acima.
      • Ative a solicitação do aplicativo:
        curl -X PUT https://${IDCS_HOST}/admin/v1/AppStatusChanger/${SI_APP_ID} -H 
        'Authorization: Bearer ${SA_ACCESS_TOKEN}' -H 'Content-Type: application/json' -d 
        '{"schemas":["urn:ietf:params:scim:schemas:oracle:idcs:AppStatusChanger"],"id":"${SI_APP_ID}",
        "active":true}'
  5. Associe o aplicativo de integração de serviço.
    1. Identifique o AppRoleID a ser concedido para o aplicativo Oracle Integration. Para instalar o agente de conectividade, designe a atribuição ServiceAdministrator ao aplicativo criado. Portanto, uma pesquisa é executada para essa atribuição (para este exemplo, conhecido como ${OIC_APP_ROLE_ID}).
      • Obtenha a solicitação do ID de atribuição de aplicativo:
        curl -X GET 'https://${IDCS_HOST}/admin/v1/AppRoles?attributes=groups,urn:ietf:params:
        scim:schemas:oracle:idcs:extension:user:User:appRoles&filter=displayName+co+%22ServiceUser%22+
        and+app.value+eq+%22${OIC_APP_ID}%22' -H 'Authorization: Bearer ${SA_ACCESS_TOKEN}'
      • Você recebe a resposta do ID de atribuição de aplicativo:
        {
            "schemas": [
                "urn:ietf:params:scim:api:messages:2.0:ListResponse"
            ],
            "totalResults": 1,
            "Resources": [
                {
                    "displayName": "ServiceAdministrator",
                    "id": "20e22fd1eb2e43ac8645e105abcab201",
                    "app": {
                        "value": "e0eea2c9fadb42c09d33035ff41e8f57",
                        "display": "OICSSA_oiccafdev7"
                    }
                }
            ],
            "startIndex": 1,
            "itemsPerPage": 50
        }
    2. Conceda o aplicativo de integração de serviço com a atribuição acima. Isso anexa a atribuição ao aplicativo de integração de serviço que você criou.
      • Conceda a solicitação de atribuição:
        curl -X POST https://${IDCS_HOST}/admin/v1/Grants -H 'Authorization: Bearer ${SA_ACCESS_TOKEN}' -H 'Content-Type: application/json' -d '{
         "app": {
          "value": "${OIC_APP_ID}"
         },
         "entitlement": {
          "attributeName": "appRoles",
          "attributeValue": "${OIC_APP_ROLE_ID}"
         },
         "grantMechanism": "ADMINISTRATOR_TO_APP",
         "grantee": {
          "value": "${SI_APP_ID}",
          "type": "App"
         },
         "schemas": ["urn:ietf:params:scim:schemas:oracle:idcs:Grant"]
        }'
      • A resposta da atribuição é concedida:
        {
            "app": {
                "value": "${OIC_APP_ID}",
                "$ref": "https://${IDCS_HOST}/admin/v1/Apps/${OIC_APP_ID}"
            },
            "entitlement": {
                "attributeName": "appRoles",
                "attributeValue": "${OIC_APP_ROLE_ID}"
            },
            "grantMechanism": "ADMINISTRATOR_TO_APP",
            "grantee": {
                "value": "${SI_APP_ID}",
                "type": "App",
                "$ref": "https://${IDCS_HOST}/admin/v1/Apps/${SI_APP_ID}"
            },
            "schemas": [
                "urn:ietf:params:scim:schemas:oracle:idcs:Grant"
            ],
            "id": "6832316983c545baa01e9a9488022fa7",
            "isFulfilled": true,
            "grantor": {
                "type": "App",
                "value": "${SA_APP_ID}",
                "$ref": "https://${IDCS_HOST}/admin/v1/Apps/${SA_APP_ID}"
            },
            "meta": {
                "created": "2019-04-01T08:00:33.277Z",
                "lastModified": "2019-04-01T08:00:33.277Z",
                "resourceType": "Grant",
                "location": "https://${IDCS_HOST}/admin/v1/Grants/6832316983c545baa01e9a9488022fa7"
            },
            "idcsCreatedBy": {
                "value": "${SA_APP_ID}",
                "type": "App",
                "display": "OIC_SI_TEST",
                "$ref": "https://${IDCS_HOST}/admin/v1/Apps/${SA_APP_ID}"
            },
            "idcsLastModifiedBy": {
                "value": "${SA_APP_ID}",
                "type": "App",
                "display": "OIC_SI_TEST",
                "$ref": "https://${IDCS_HOST}/admin/v1/Apps/${SA_APP_ID}"
            }
        }

Como Usar as Credenciais de Integração de Serviços

Uma vez concluída a configuração, use as credenciais ${SI_CLIENT_ID} (para o nome do usuário) e ${SI_CLIENT_SECRET} (para a senha) para instalar o agente de conectividade ou qualquer outra autenticação em um ponto final do Oracle Integration, conforme mostrado abaixo.

Amostra de solicitação de ponto final SOAP do Oracle Integration:
curl -X POST https://${OIC_HOST}/ic/ws/integration/v1/flows/soap/FLOW/1.0/ -u 
${SI_CLIENT_ID}:${SI_CLIENT_SECRET} -H 'Content-Type: text/xml;charset=UTF-8' -H 'SOAPAction: 
process' -d '<soapenv:Envelope xmlns:rp="http://xmlns.oracle.com/rp_WS_Basic_Authentication_APP/
rp_WS_Basic_Authentication/rp_Basic_Authentication_WS" xmlns:soapenv="http://schemas.xmlsoap.org/
soap/envelope/">
   <soapenv:Header>
      <wsse:Security soapenv:mustUnderstand="1" xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/
oasis-200401-wss-wssecurity-secext-1.0.xsd" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/
oasis-200401-wss-wssecurity-utility-1.0.xsd">
         <wsu:Timestamp wsu:Id="TS-0BC1DE3F9C8F739DB815541392855881">
            <wsu:Created>2019-04-01T00:00:00.000Z</wsu:Created>
            <wsu:Expires>2019-04-02T00:00:00.000Z</wsu:Expires>
         </wsu:Timestamp>
      </wsse:Security>
   </soapenv:Header>
   <soapenv:Body>
      <rp:process>
         <rp:input>OICTEST</rp:input>
      </rp:process>
   </soapenv:Body>
</soapenv:Envelope>'