Forum Discussion

Robert76's avatar
Robert76
New Member
7 years ago

On-Prem Gateway - Enterprise mode - oAuth2 authentication with refresh token

Hi,

 

We are using the on-prem gateway in enterprise mode with a custom connector to refresh an oAuth2 protected odata service. Each time you request a new access token from this service you also get a new refresh token and the previous refresh token is invalidated (this behaviour is optional in the oAuth2 RFC).

 

In the desktop version of Power BI refreshing data with our custom connector works just fine. The desktop version also seems to respect the expiration date of the access token.

 

However, using the gateway and the Power BI service, the expiration time of the access token seems not to be respected. The service always requests a new access token using the refresh token. The service also requests a new token for each source (even if they are part of the same connection). This results in multiple requests for new refresh tokens (almost simultaneously) that seem to cross each other, which results in the fact that the second, third, etc call is done with an already invalidated refresh token, which in turn results in an access denied by the oData service.

 

Why is the desktop version and the service behaviour different? Does anybody have experience with the same issues?

 

Thank you

 

Robert 

1 Reply

  • v-juanli-msft's avatar
    v-juanli-msft
    Icon for Community Support rankCommunity Support

    Hi Robert76 

    First which error do you meet?

     

    Please follow this guide step by step

    https://docs.microsoft.com/en-us/power-bi/service-gateway-custom-connectors

     

    Pay attention to the consideration:

    • For custom connectors to work with the On-premises data gateway, they need to implement a “TestConnection” section in the custom connector’s code. This is not required when using custom connectors with Power BI Desktop. You can have one that works with the Desktop, but not with the gateway for this reason. Please refer to this documentation on how to implement a TestConnection section.

     

    Best Regards
    Maggie

     

    Community Support Team _ Maggie Li
    If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.