cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
Highlighted
Helper II
Helper II

How to disable multi factor authentication to use POwer BI REST API

Hi,

 

I am running a powershell script to get the refresh history of all pbi reports of respective workspaces.

Problem: I need to run the script manually, I mention here manually because whenever I run the script it ask me to validate my Microsoft account by entering the pin code (multi-factor authentication). Due to this I am not able to automate the script. I don’t know if it is possible to get authentication token without validating the account or to disable multi-factor authentication. Any suggestion would be really helpful.

Below is the code to Get authentication token:

 

$clientId = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxx"

# Calls the Active Directory Authentication Library (ADAL) to authenticate against AAD

 

function GetAuthToken

{

    $adal = "${env:ProgramFiles}\WindowsPowerShell\Modules\AzureRM.profile\5.3.2\Microsoft.IdentityModel.Clients.ActiveDirectory.dll"

   

    $adalforms = "${env:ProgramFiles}\WindowsPowerShell\Modules\AzureRM.profile\5.3.2\Microsoft.IdentityModel.Clients.ActiveDirectory.WindowsForms.dll"

 

    [System.Reflection.Assembly]::LoadFrom($adal) | Out-Null

 

    [System.Reflection.Assembly]::LoadFrom($adalforms) | Out-Null

 

    $redirectUri = "https://oauth.powerbi.com/PBIAPIExplorer"

 

    $resourceAppIdURI = "https://analysis.windows.net/powerbi/api"

 

    $authority = "https://login.microsoftonline.com/common/oauth2/authorize";

 

    $authContext = New-Object "Microsoft.IdentityModel.Clients.ActiveDirectory.AuthenticationContext" -ArgumentList $authority

 

    $authResult = $authContext.AcquireToken($resourceAppIdURI, $clientId, $redirectUri, "Auto")

 

    return $authResult

}

 

# Get the auth token from AAD

$token = GetAuthToken

 

Thanks in advanced

5 REPLIES 5
Highlighted
Frequent Visitor

Re: How to disable multi factor authentication to use POwer BI REST API

Had you succeeded in disabling multi factor authentication for power bi rest api?

Highlighted
Helper II
Helper II

Re: How to disable multi factor authentication to use POwer BI REST API

@piper,

 

Thank you for reply, unfortunately no.

 

 

Highlighted
Frequent Visitor

Re: How to disable multi factor authentication to use POwer BI REST API

I am also stucked with same issue since couple of days.

Can you share what work around you had used to get things working?

Highlighted
Frequent Visitor

Re: How to disable multi factor authentication to use POwer BI REST API

Have you tried using Service Principal/App Registration via AAD? Make sure you assign PowerBI API Permissions for the registration and then you can get an access token for the registration

Highlighted
Frequent Visitor

Re: How to disable multi factor authentication to use POwer BI REST API

Thanks for reply.

Yes, I had tried out service principal way earlier, when didn't have powerbi pro account. And, it hadn't work earlier.

Which is why, I had purchase powerBI pro.

 

I don't recall the actual error now, but somewhere it was related to not able to generate access token.

 

For now, I got unblocked by disabling multi factor authentication using following:

https://community.powerbi.com/t5/Service/Disabling-multi-factor-authentication-for-power-bi/m-p/1087...

Helpful resources

Announcements
May 2020 Community Highlights

May 2020 Community Highlights

It’s time for another PBI Community recap!

Community Blog

Community Blog

Visit our Community Blog for articles, guides, and information created by fellow community members.

Using the Community

Using the Community

Need help with the Power BI Community? Our 'Using the Community' support articles are a great place to start.

Galleries

Galleries

Looking for inspiration on how to present your data? Need instructional videos? Check out our Galleries!

Top Solution Authors