Need a special offer?Find out if your project fits.
+

Connection String required for PowerBI connection?

Answered
Martyn West asked on April 11, 2023

Hi,
 
I'm confused by the requirement for a connection string when using the AzureAuthHelper.
If the connection string is omitted then an exception is raised.
If I use a powerbi address, then I need a username and password by the looks, and it still doesn't work.
 
I have tried using the Flexmonster Accelerator in both DLL mode and service mode, and cannot get either to work. The service appears to want a local SQL Server Analysis Services connection to be made by default, which again, strikes me as surplus to requirements if want to connect to a remote server.
Do you have any pointers please?
 
Cheers,
Martyn

5 answers

Public
Martyn West April 12, 2023

Tried using a bearer token as hinted at in this project (https://github.com/microsoft/azure-analysis-services-http-sample/blob/master/aspnet/Microsoft.Samples.XMLA.HTTP/Microsoft.Samples.XMLA.HTTP.Proxy/TokenHelper.cs), and no luck.
 
It doesn't feel like a connection string should be required though.

Public
Maksym Diachenko Maksym Diachenko Flexmonster April 12, 2023

Hello, Martyn!

Thank you for reaching out to us.

Flexmonster Accelerator is a server-side proxy that can be fed an XMLA endpoint. With this in mind, it may be possible to connect Flexmonster to the Power BI datasets using Flexmonster Accelerator as an intermediary. Such an approach would include the following:

  1. Installing Flexmonster Accelerator: https://www.flexmonster.com/doc/getting-started-with-accelerator-ssas/
  2. Preparing the XMLA endpoint from Power BI.
  3. Specifying the XMLA endpoint from Power BI in the Accelerator's connection string (CONNECTION_STRING).
  4. Use the AZURE_AUTHORITYAZURE_CLIENT_ID, and AZURE_CLIENT_SECRET properties for configuring Azure authentification.

For more information about Flexmonster Accelerator configurations, please check this doc page section: https://www.flexmonster.com/doc/getting-started-with-accelerator-ssas/#configure-accelerator.
Also, you could check one of our previous tickets about connection to Azure with Flexmonster Accelerator if more information is required.

Please let us know if our suggestions helped you.

Best Regards,
Maksym

Public
Martyn West April 12, 2023

Hi,
Thanks for getting back to me.
 
I do not want to use XMLA, since that only supports multi-dimensional models. I want to connect to a tabular model as described here:
https://www.flexmonster.com/doc/connecting-to-microsoft-analysis-services/
and
https://www.flexmonster.com/doc/getting-started-with-accelerator-ssas/
 
My question is that a connection string with user credentials should not be needed when using a client id and secret, for obvious reasons.
Even when using a connection string that contains my user details, which I do not want to use, I get errors.
If I can get this working then you likely have a sale for a 50 company SaaS licence, but I'm pretty close to giving up to be honest.
Cheers

Public
Solomiia Andrusiv Solomiia Andrusiv Flexmonster April 13, 2023

Hello, Martyn!
 
Thank you for providing us with additional information about your data source.
 
Kindly note that the Accelerator can be connected to a remote Azure server. It may seem complicated initially, but we are here to assist you in configuring it step by step.
 
To ensure we are on the same page, is it true that you are connecting to the Azure Analysis Services tabular cube? If our assumptions are incorrect, please provide us with more details about the data source you are connecting to.
 
Regarding your question about the connection string, it should contain the data source parameter specifying the server instance. For example, the connection string to the Azure remote server would look as follows:
CONNECTION_STRING=Data Source=asazure://aspaas.asazure.windows.net/abcdabcd.
 
The connection string shouldn't contain user credentials. For a secure connection, additional properties must be configured on the Accelerator:

  • AZURE_AUTHORITY - Azure authority URI (e.g., https://login.microsoftonline.com/<your_domain>)
  • AZURE_CLIENT_ID - Client ID of the service principal registered in Azure Active Directory
  • AZURE_CLIENT_SECRET - Client secret of the service principal registered in Azure Active Directory

 
Hope you will find our answer helpful.
Looking forward to hearing from you.
 
Regards,
Solomiia

Public
Solomiia Andrusiv Solomiia Andrusiv Flexmonster April 27, 2023

Hello, Martyn!

Hope you are doing well.

Our team is wondering if you had a chance to look through our previous answer. Could you let us know if it was helpful in connecting to Azure?
We would be glad to hear about your progress.

Looking forward to your feedback.

Regards,
Solomiia

Please login or Register to Submit Answer