43.15 OAUTH_AUTHENTICATE_CREDENTIAL

This procedure performs OAUTH authentication and requests an OAuth access token. The token and its expiry date are stored in the global variable g_oauth_token.

type oauth_token is record(
     token      varchar2(255),
     expires    date );

Note:

Currently only the Client Credentials flow is supported.

Syntax

APEX_WEB_SERVICE.OAUTH_AUTHENTICATE_CREDENTIAL(
    p_token_url              IN VARCHAR2,    
    p_credential_static_id   IN VARCHAR2,
    p_proxy_override         IN VARCHAR2 DEFAULT NULL,
    p_transfer_timeout       IN NUMBER DEFAULT 180,
    p_wallet_path            IN VARCHAR2
    p_wallet_pwd             IN VARCHAR2
    p_https_host             IN VARCHAR2 DEFAULT NULL);

Parameters

Table 43-9 OAUTH_AUTHENTICATE_CREDENTIAL

Parameter Description

p_token_url

The url endpoint of the OAuth token service.

p_credential_static_id

The name of the Web Credentials to be used. Web Credentials are configured in Shared Components.

p_proxy_override

The proxy to use for the request.

p_transfer_timeout

The amount of time in seconds to wait for a response.

p_wallet_path

The filesystem path to a wallet if request is https. For example, file:/usr/home/oracle/WALLETS.

p_wallet_pwd

The password to access the wallet.

p_https_host

The host name to be matched against the common name (CN) of the remote server's certificate for an HTTPS request.

Example

OAUTH_AUTHENTICATE_CREDENTIAL

begin
    apex_web_service.oauth_authenticate_credential(
        p_token_url => '[URL to ORDS OAuth troken service: http(s)://{host}:{port}/ords/.../oauth/token]',
        p_credential_static_id => '[web-credential]');
end;