Skip to content

/AWS1/IF_BDO=>GETOAUTH2CREDENTIALPROVIDER()

About GetOauth2CredentialProvider

Retrieves information about an OAuth2 credential provider.

Method Signature

METHODS /AWS1/IF_BDO~GETOAUTH2CREDENTIALPROVIDER
  IMPORTING
    !IV_NAME TYPE /AWS1/BDOCREDPROVIDERNAME OPTIONAL
  RETURNING
    VALUE(OO_OUTPUT) TYPE REF TO /aws1/cl_bdogeto2credpvdrrsp
  RAISING
    /AWS1/CX_BDOACCESSDENIEDEX
    /AWS1/CX_BDODECRYPTIONFAILURE
    /AWS1/CX_BDOINTERNALSERVEREX
    /AWS1/CX_BDORESOURCENOTFOUNDEX
    /AWS1/CX_BDOTHROTTLINGEX
    /AWS1/CX_BDOUNAUTHORIZEDEX
    /AWS1/CX_BDOVALIDATIONEX
    /AWS1/CX_BDOCLIENTEXC
    /AWS1/CX_BDOSERVEREXC
    /AWS1/CX_RT_TECHNICAL_GENERIC
    /AWS1/CX_RT_SERVICE_GENERIC.

IMPORTING

Required arguments:

iv_name TYPE /AWS1/BDOCREDPROVIDERNAME /AWS1/BDOCREDPROVIDERNAME

The name of the OAuth2 credential provider to retrieve.

RETURNING

oo_output TYPE REF TO /aws1/cl_bdogeto2credpvdrrsp /AWS1/CL_BDOGETO2CREDPVDRRSP

Examples

Syntax Example

This is an example of the syntax for calling the method. It includes every possible argument and initializes every possible value. The data provided is not necessarily semantically accurate (for example the value "string" may be provided for something that is intended to be an instance ID, or in some cases two arguments may be mutually exclusive). The syntax shows the ABAP syntax for creating the various data structures.

DATA(lo_result) = lo_client->getoauth2credentialprovider( |string| ).

This is an example of reading all possible response values

lo_result = lo_result.
IF lo_result IS NOT INITIAL.
  lo_secret = lo_result->get_clientsecretarn( ).
  IF lo_secret IS NOT INITIAL.
    lv_secretarn = lo_secret->get_secretarn( ).
  ENDIF.
  lv_secretjsonkeytype = lo_result->get_clientsecretjsonkey( ).
  lv_secretsourcetype = lo_result->get_clientsecretsource( ).
  lv_credentialprovidername = lo_result->get_name( ).
  lv_credentialproviderarnty = lo_result->get_credentialproviderarn( ).
  lv_credentialprovidervendo = lo_result->get_credentialprovidervendor( ).
  lv_string = lo_result->get_callbackurl( ).
  lo_oauth2providerconfigout = lo_result->get_oauth2pvdrconfigoutput( ).
  IF lo_oauth2providerconfigout IS NOT INITIAL.
    lo_customoauth2providercon = lo_oauth2providerconfigout->get_customoauth2pvdrconfig( ).
    IF lo_customoauth2providercon IS NOT INITIAL.
      lo_oauth2discovery = lo_customoauth2providercon->get_oauthdiscovery( ).
      IF lo_oauth2discovery IS NOT INITIAL.
        lv_discoveryurltype = lo_oauth2discovery->get_discoveryurl( ).
        lo_oauth2authorizationserv = lo_oauth2discovery->get_authservermetadata( ).
        IF lo_oauth2authorizationserv IS NOT INITIAL.
          lv_issuerurltype = lo_oauth2authorizationserv->get_issuer( ).
          lv_authorizationendpointty = lo_oauth2authorizationserv->get_authorizationendpoint( ).
          lv_tokenendpointtype = lo_oauth2authorizationserv->get_tokenendpoint( ).
          LOOP AT lo_oauth2authorizationserv->get_responsetypes( ) into lo_row.
            lo_row_1 = lo_row.
            IF lo_row_1 IS NOT INITIAL.
              lv_responsetype = lo_row_1->get_value( ).
            ENDIF.
          ENDLOOP.
          LOOP AT lo_oauth2authorizationserv->get_tokenendpointauthmethods( ) into lo_row_2.
            lo_row_3 = lo_row_2.
            IF lo_row_3 IS NOT INITIAL.
              lv_tokenauthmethod = lo_row_3->get_value( ).
            ENDIF.
          ENDLOOP.
        ENDIF.
      ENDIF.
      lv_clientidtype = lo_customoauth2providercon->get_clientid( ).
      lo_privateendpoint = lo_customoauth2providercon->get_privateendpoint( ).
      IF lo_privateendpoint IS NOT INITIAL.
        lo_selfmanagedlatticeresou = lo_privateendpoint->get_selfmanagedlatticeres( ).
        IF lo_selfmanagedlatticeresou IS NOT INITIAL.
          lv_resourceconfigurationid = lo_selfmanagedlatticeresou->get_resourceconfidentifier( ).
        ENDIF.
        lo_managedvpcresource = lo_privateendpoint->get_managedvpcresource( ).
        IF lo_managedvpcresource IS NOT INITIAL.
          lv_vpcidentifier = lo_managedvpcresource->get_vpcidentifier( ).
          LOOP AT lo_managedvpcresource->get_subnetids( ) into lo_row_4.
            lo_row_5 = lo_row_4.
            IF lo_row_5 IS NOT INITIAL.
              lv_subnetid = lo_row_5->get_value( ).
            ENDIF.
          ENDLOOP.
          lv_endpointipaddresstype = lo_managedvpcresource->get_endpointipaddresstype( ).
          LOOP AT lo_managedvpcresource->get_securitygroupids( ) into lo_row_6.
            lo_row_7 = lo_row_6.
            IF lo_row_7 IS NOT INITIAL.
              lv_securitygroupidentifier = lo_row_7->get_value( ).
            ENDIF.
          ENDLOOP.
          LOOP AT lo_managedvpcresource->get_tags( ) into ls_row_8.
            lv_key = ls_row_8-key.
            lo_value = ls_row_8-value.
            IF lo_value IS NOT INITIAL.
              lv_tagvalue = lo_value->get_value( ).
            ENDIF.
          ENDLOOP.
          lv_routingdomain = lo_managedvpcresource->get_routingdomain( ).
        ENDIF.
      ENDIF.
      LOOP AT lo_customoauth2providercon->get_privateendpointoverrides( ) into lo_row_9.
        lo_row_10 = lo_row_9.
        IF lo_row_10 IS NOT INITIAL.
          lv_privateendpointoverride = lo_row_10->get_domain( ).
          lo_privateendpoint = lo_row_10->get_privateendpoint( ).
          IF lo_privateendpoint IS NOT INITIAL.
            lo_selfmanagedlatticeresou = lo_privateendpoint->get_selfmanagedlatticeres( ).
            IF lo_selfmanagedlatticeresou IS NOT INITIAL.
              lv_resourceconfigurationid = lo_selfmanagedlatticeresou->get_resourceconfidentifier( ).
            ENDIF.
            lo_managedvpcresource = lo_privateendpoint->get_managedvpcresource( ).
            IF lo_managedvpcresource IS NOT INITIAL.
              lv_vpcidentifier = lo_managedvpcresource->get_vpcidentifier( ).
              LOOP AT lo_managedvpcresource->get_subnetids( ) into lo_row_4.
                lo_row_5 = lo_row_4.
                IF lo_row_5 IS NOT INITIAL.
                  lv_subnetid = lo_row_5->get_value( ).
                ENDIF.
              ENDLOOP.
              lv_endpointipaddresstype = lo_managedvpcresource->get_endpointipaddresstype( ).
              LOOP AT lo_managedvpcresource->get_securitygroupids( ) into lo_row_6.
                lo_row_7 = lo_row_6.
                IF lo_row_7 IS NOT INITIAL.
                  lv_securitygroupidentifier = lo_row_7->get_value( ).
                ENDIF.
              ENDLOOP.
              LOOP AT lo_managedvpcresource->get_tags( ) into ls_row_8.
                lv_key = ls_row_8-key.
                lo_value = ls_row_8-value.
                IF lo_value IS NOT INITIAL.
                  lv_tagvalue = lo_value->get_value( ).
                ENDIF.
              ENDLOOP.
              lv_routingdomain = lo_managedvpcresource->get_routingdomain( ).
            ENDIF.
          ENDIF.
        ENDIF.
      ENDLOOP.
      lo_onbehalfoftokenexchange = lo_customoauth2providercon->get_onbehalfoftokenexchngcfg( ).
      IF lo_onbehalfoftokenexchange IS NOT INITIAL.
        lv_onbehalfoftokenexchange_1 = lo_onbehalfoftokenexchange->get_granttype( ).
        lo_tokenexchangegranttypec = lo_onbehalfoftokenexchange->get_tokenexchnggranttypecfg( ).
        IF lo_tokenexchangegranttypec IS NOT INITIAL.
          lv_actortokencontenttype = lo_tokenexchangegranttypec->get_actortokencontent( ).
          LOOP AT lo_tokenexchangegranttypec->get_actortokenscopes( ) into lo_row_11.
            lo_row_12 = lo_row_11.
            IF lo_row_12 IS NOT INITIAL.
              lv_scopetype = lo_row_12->get_value( ).
            ENDIF.
          ENDLOOP.
        ENDIF.
      ENDIF.
      lv_clientauthenticationmet = lo_customoauth2providercon->get_clientauthntctnmethod( ).
    ENDIF.
    lo_googleoauth2providercon = lo_oauth2providerconfigout->get_googleoauth2pvdrconfig( ).
    IF lo_googleoauth2providercon IS NOT INITIAL.
      lo_oauth2discovery = lo_googleoauth2providercon->get_oauthdiscovery( ).
      IF lo_oauth2discovery IS NOT INITIAL.
        lv_discoveryurltype = lo_oauth2discovery->get_discoveryurl( ).
        lo_oauth2authorizationserv = lo_oauth2discovery->get_authservermetadata( ).
        IF lo_oauth2authorizationserv IS NOT INITIAL.
          lv_issuerurltype = lo_oauth2authorizationserv->get_issuer( ).
          lv_authorizationendpointty = lo_oauth2authorizationserv->get_authorizationendpoint( ).
          lv_tokenendpointtype = lo_oauth2authorizationserv->get_tokenendpoint( ).
          LOOP AT lo_oauth2authorizationserv->get_responsetypes( ) into lo_row.
            lo_row_1 = lo_row.
            IF lo_row_1 IS NOT INITIAL.
              lv_responsetype = lo_row_1->get_value( ).
            ENDIF.
          ENDLOOP.
          LOOP AT lo_oauth2authorizationserv->get_tokenendpointauthmethods( ) into lo_row_2.
            lo_row_3 = lo_row_2.
            IF lo_row_3 IS NOT INITIAL.
              lv_tokenauthmethod = lo_row_3->get_value( ).
            ENDIF.
          ENDLOOP.
        ENDIF.
      ENDIF.
      lv_clientidtype = lo_googleoauth2providercon->get_clientid( ).
    ENDIF.
    lo_githuboauth2providercon = lo_oauth2providerconfigout->get_githuboauth2pvdrconfig( ).
    IF lo_githuboauth2providercon IS NOT INITIAL.
      lo_oauth2discovery = lo_githuboauth2providercon->get_oauthdiscovery( ).
      IF lo_oauth2discovery IS NOT INITIAL.
        lv_discoveryurltype = lo_oauth2discovery->get_discoveryurl( ).
        lo_oauth2authorizationserv = lo_oauth2discovery->get_authservermetadata( ).
        IF lo_oauth2authorizationserv IS NOT INITIAL.
          lv_issuerurltype = lo_oauth2authorizationserv->get_issuer( ).
          lv_authorizationendpointty = lo_oauth2authorizationserv->get_authorizationendpoint( ).
          lv_tokenendpointtype = lo_oauth2authorizationserv->get_tokenendpoint( ).
          LOOP AT lo_oauth2authorizationserv->get_responsetypes( ) into lo_row.
            lo_row_1 = lo_row.
            IF lo_row_1 IS NOT INITIAL.
              lv_responsetype = lo_row_1->get_value( ).
            ENDIF.
          ENDLOOP.
          LOOP AT lo_oauth2authorizationserv->get_tokenendpointauthmethods( ) into lo_row_2.
            lo_row_3 = lo_row_2.
            IF lo_row_3 IS NOT INITIAL.
              lv_tokenauthmethod = lo_row_3->get_value( ).
            ENDIF.
          ENDLOOP.
        ENDIF.
      ENDIF.
      lv_clientidtype = lo_githuboauth2providercon->get_clientid( ).
    ENDIF.
    lo_slackoauth2providerconf = lo_oauth2providerconfigout->get_slackoauth2pvdrconfig( ).
    IF lo_slackoauth2providerconf IS NOT INITIAL.
      lo_oauth2discovery = lo_slackoauth2providerconf->get_oauthdiscovery( ).
      IF lo_oauth2discovery IS NOT INITIAL.
        lv_discoveryurltype = lo_oauth2discovery->get_discoveryurl( ).
        lo_oauth2authorizationserv = lo_oauth2discovery->get_authservermetadata( ).
        IF lo_oauth2authorizationserv IS NOT INITIAL.
          lv_issuerurltype = lo_oauth2authorizationserv->get_issuer( ).
          lv_authorizationendpointty = lo_oauth2authorizationserv->get_authorizationendpoint( ).
          lv_tokenendpointtype = lo_oauth2authorizationserv->get_tokenendpoint( ).
          LOOP AT lo_oauth2authorizationserv->get_responsetypes( ) into lo_row.
            lo_row_1 = lo_row.
            IF lo_row_1 IS NOT INITIAL.
              lv_responsetype = lo_row_1->get_value( ).
            ENDIF.
          ENDLOOP.
          LOOP AT lo_oauth2authorizationserv->get_tokenendpointauthmethods( ) into lo_row_2.
            lo_row_3 = lo_row_2.
            IF lo_row_3 IS NOT INITIAL.
              lv_tokenauthmethod = lo_row_3->get_value( ).
            ENDIF.
          ENDLOOP.
        ENDIF.
      ENDIF.
      lv_clientidtype = lo_slackoauth2providerconf->get_clientid( ).
    ENDIF.
    lo_salesforceoauth2provide = lo_oauth2providerconfigout->get_sforceoauth2pvdrconfig( ).
    IF lo_salesforceoauth2provide IS NOT INITIAL.
      lo_oauth2discovery = lo_salesforceoauth2provide->get_oauthdiscovery( ).
      IF lo_oauth2discovery IS NOT INITIAL.
        lv_discoveryurltype = lo_oauth2discovery->get_discoveryurl( ).
        lo_oauth2authorizationserv = lo_oauth2discovery->get_authservermetadata( ).
        IF lo_oauth2authorizationserv IS NOT INITIAL.
          lv_issuerurltype = lo_oauth2authorizationserv->get_issuer( ).
          lv_authorizationendpointty = lo_oauth2authorizationserv->get_authorizationendpoint( ).
          lv_tokenendpointtype = lo_oauth2authorizationserv->get_tokenendpoint( ).
          LOOP AT lo_oauth2authorizationserv->get_responsetypes( ) into lo_row.
            lo_row_1 = lo_row.
            IF lo_row_1 IS NOT INITIAL.
              lv_responsetype = lo_row_1->get_value( ).
            ENDIF.
          ENDLOOP.
          LOOP AT lo_oauth2authorizationserv->get_tokenendpointauthmethods( ) into lo_row_2.
            lo_row_3 = lo_row_2.
            IF lo_row_3 IS NOT INITIAL.
              lv_tokenauthmethod = lo_row_3->get_value( ).
            ENDIF.
          ENDLOOP.
        ENDIF.
      ENDIF.
      lv_clientidtype = lo_salesforceoauth2provide->get_clientid( ).
    ENDIF.
    lo_microsoftoauth2provider = lo_oauth2providerconfigout->get_msftoauth2providerconfig( ).
    IF lo_microsoftoauth2provider IS NOT INITIAL.
      lo_oauth2discovery = lo_microsoftoauth2provider->get_oauthdiscovery( ).
      IF lo_oauth2discovery IS NOT INITIAL.
        lv_discoveryurltype = lo_oauth2discovery->get_discoveryurl( ).
        lo_oauth2authorizationserv = lo_oauth2discovery->get_authservermetadata( ).
        IF lo_oauth2authorizationserv IS NOT INITIAL.
          lv_issuerurltype = lo_oauth2authorizationserv->get_issuer( ).
          lv_authorizationendpointty = lo_oauth2authorizationserv->get_authorizationendpoint( ).
          lv_tokenendpointtype = lo_oauth2authorizationserv->get_tokenendpoint( ).
          LOOP AT lo_oauth2authorizationserv->get_responsetypes( ) into lo_row.
            lo_row_1 = lo_row.
            IF lo_row_1 IS NOT INITIAL.
              lv_responsetype = lo_row_1->get_value( ).
            ENDIF.
          ENDLOOP.
          LOOP AT lo_oauth2authorizationserv->get_tokenendpointauthmethods( ) into lo_row_2.
            lo_row_3 = lo_row_2.
            IF lo_row_3 IS NOT INITIAL.
              lv_tokenauthmethod = lo_row_3->get_value( ).
            ENDIF.
          ENDLOOP.
        ENDIF.
      ENDIF.
      lv_clientidtype = lo_microsoftoauth2provider->get_clientid( ).
    ENDIF.
    lo_atlassianoauth2provider = lo_oauth2providerconfigout->get_atlsnoauth2pvdrconfig( ).
    IF lo_atlassianoauth2provider IS NOT INITIAL.
      lo_oauth2discovery = lo_atlassianoauth2provider->get_oauthdiscovery( ).
      IF lo_oauth2discovery IS NOT INITIAL.
        lv_discoveryurltype = lo_oauth2discovery->get_discoveryurl( ).
        lo_oauth2authorizationserv = lo_oauth2discovery->get_authservermetadata( ).
        IF lo_oauth2authorizationserv IS NOT INITIAL.
          lv_issuerurltype = lo_oauth2authorizationserv->get_issuer( ).
          lv_authorizationendpointty = lo_oauth2authorizationserv->get_authorizationendpoint( ).
          lv_tokenendpointtype = lo_oauth2authorizationserv->get_tokenendpoint( ).
          LOOP AT lo_oauth2authorizationserv->get_responsetypes( ) into lo_row.
            lo_row_1 = lo_row.
            IF lo_row_1 IS NOT INITIAL.
              lv_responsetype = lo_row_1->get_value( ).
            ENDIF.
          ENDLOOP.
          LOOP AT lo_oauth2authorizationserv->get_tokenendpointauthmethods( ) into lo_row_2.
            lo_row_3 = lo_row_2.
            IF lo_row_3 IS NOT INITIAL.
              lv_tokenauthmethod = lo_row_3->get_value( ).
            ENDIF.
          ENDLOOP.
        ENDIF.
      ENDIF.
      lv_clientidtype = lo_atlassianoauth2provider->get_clientid( ).
    ENDIF.
    lo_linkedinoauth2providerc = lo_oauth2providerconfigout->get_linkedinoauth2pvdrconfig( ).
    IF lo_linkedinoauth2providerc IS NOT INITIAL.
      lo_oauth2discovery = lo_linkedinoauth2providerc->get_oauthdiscovery( ).
      IF lo_oauth2discovery IS NOT INITIAL.
        lv_discoveryurltype = lo_oauth2discovery->get_discoveryurl( ).
        lo_oauth2authorizationserv = lo_oauth2discovery->get_authservermetadata( ).
        IF lo_oauth2authorizationserv IS NOT INITIAL.
          lv_issuerurltype = lo_oauth2authorizationserv->get_issuer( ).
          lv_authorizationendpointty = lo_oauth2authorizationserv->get_authorizationendpoint( ).
          lv_tokenendpointtype = lo_oauth2authorizationserv->get_tokenendpoint( ).
          LOOP AT lo_oauth2authorizationserv->get_responsetypes( ) into lo_row.
            lo_row_1 = lo_row.
            IF lo_row_1 IS NOT INITIAL.
              lv_responsetype = lo_row_1->get_value( ).
            ENDIF.
          ENDLOOP.
          LOOP AT lo_oauth2authorizationserv->get_tokenendpointauthmethods( ) into lo_row_2.
            lo_row_3 = lo_row_2.
            IF lo_row_3 IS NOT INITIAL.
              lv_tokenauthmethod = lo_row_3->get_value( ).
            ENDIF.
          ENDLOOP.
        ENDIF.
      ENDIF.
      lv_clientidtype = lo_linkedinoauth2providerc->get_clientid( ).
    ENDIF.
    lo_includedoauth2providerc = lo_oauth2providerconfigout->get_includedoauth2pvdrconfig( ).
    IF lo_includedoauth2providerc IS NOT INITIAL.
      lo_oauth2discovery = lo_includedoauth2providerc->get_oauthdiscovery( ).
      IF lo_oauth2discovery IS NOT INITIAL.
        lv_discoveryurltype = lo_oauth2discovery->get_discoveryurl( ).
        lo_oauth2authorizationserv = lo_oauth2discovery->get_authservermetadata( ).
        IF lo_oauth2authorizationserv IS NOT INITIAL.
          lv_issuerurltype = lo_oauth2authorizationserv->get_issuer( ).
          lv_authorizationendpointty = lo_oauth2authorizationserv->get_authorizationendpoint( ).
          lv_tokenendpointtype = lo_oauth2authorizationserv->get_tokenendpoint( ).
          LOOP AT lo_oauth2authorizationserv->get_responsetypes( ) into lo_row.
            lo_row_1 = lo_row.
            IF lo_row_1 IS NOT INITIAL.
              lv_responsetype = lo_row_1->get_value( ).
            ENDIF.
          ENDLOOP.
          LOOP AT lo_oauth2authorizationserv->get_tokenendpointauthmethods( ) into lo_row_2.
            lo_row_3 = lo_row_2.
            IF lo_row_3 IS NOT INITIAL.
              lv_tokenauthmethod = lo_row_3->get_value( ).
            ENDIF.
          ENDLOOP.
        ENDIF.
      ENDIF.
      lv_clientidtype = lo_includedoauth2providerc->get_clientid( ).
    ENDIF.
  ENDIF.
  lv_timestamp = lo_result->get_createdtime( ).
  lv_timestamp = lo_result->get_lastupdatedtime( ).
  lv_status = lo_result->get_status( ).
  lv_string = lo_result->get_failurereason( ).
ENDIF.