March 31 - April 2, 2025, in Las Vegas, Nevada. Use code MSCUST for a $150 discount! Early Bird pricing ends December 9th.
Register NowGet certified in Microsoft Fabric—for free! For a limited time, the Microsoft Fabric Community team will be offering free DP-600 exam vouchers. Prepare now
I've got a couple of scenarios where I have used Azure Analysis services as an import source alongside some other sources. Everything works great in models designed in Power BI Desktop, or in Visual Studio. When I publish these models into either Power BI or into a respective Azure Analysis Services model, processing fails giving a credential error. We use direct connections to Azure Analysis Services in reports and there is no problem there.
For Power BI, the gateway section under "Schedule Refresh" identifies that the source doesn't require a gateway, but that I could add one optionally. For an Azure Analysis Services model, it requires a gateway be used and won't even being to process until I link one. In both cases it gives the same credential failure when the processing actually occurs.
In the tests I've performed, an Azure Analysis Services entry is not actually present. I've tried to add one, but it always complains about credentials. The error states that credentials are required if an interface is not provided. This error comes up despite providing credentials. I've tried both "<Domain>\<Username>" as well as <Username>@<company>.com
When publishing a model from Visual Studio, only "Organisational" is accepted. I can also get visual studio to perform the processing of the model as part of the deployment. The failure occurs if it has to process under its own steam, of which is use SSMS to achieve this.
Anyone else had to do something similar to what I've described and had any success? I'm curious if there is something I am doing wrong, or if Azure Analysis Services just can't be used as an import source.
@Anonymous
Have you applied any RLS from Azure SSAS side?
If yes, please refer the support page link to know the known issues.
If not, please share below details.
1. Is it Tabular Model / Multidimensional Model
2. Is that user have the admin access for Azure SSAS.
3. Is Gateway latest version and enabled the settings in Power Bi Service >> Manage Gateways>> first 2 options
4. same credentials, Privacy levels used in Power BI Desktop and Service.
If you have any error message, please share it with us.
If this post helps, then please consider Accept it as the solution to help the other members find it more
If this post was helpful may I ask you to mark it as solution and give it some kudos?
Error Message
Failed to save modifications to the server. Error returned: 'An error occurred during On-Premise Gateway related activity. Additional error details: DM_GWPipeline_Gateway_InvalidConnectionCredentials
Received error payload from gateway service with ID 101479: Async operation fc80b817-3dfa-4ab7-9417-0d0a87b004bd is faulted with [0]Microsoft.PowerBI.DataMovement.Pipeline.Diagnostics.MashupDataAccessCredentialException: Missing or invalid credentials for data source. Reason = '<pi>CredentialInvalid</pi>', DataSource = '<pi><pi>AnalysisServices/asazure://westeurope.asazure.windows.net/alsolutionsbiasprod;Life Sciences APAC Velocity</pi></pi>', DataSourceReference = '', DataSourceOrigin = '', DataSourceReferenceOrigin = ''.
GatewayPipelineErrorCode=DM_GWPipeline_Gateway_InvalidConnectionCredentials
GatewayVersion=3000.8.452
Reason=<pi>CredentialInvalid</pi>
DataSource=<pi><pi>AnalysisServices/asazure://westeurope.asazure.windows.net/alsolutionsbiasprod;Life Sciences APAC Velocity</pi></pi>
DataSourceReference=
DataSourceOrigin=
DataSourceReferenceOrigin= --->
[1]Microsoft.PowerBI.DataMovement.Pipeline.Diagnostics.GatewayPipelineWrapperException: Substituted: MashupCredentialException:<pi>Microsoft.Data.Mashup.MashupCredentialException (0x80004005): The credentials provided cannot be used for the AnalysisServices source. (Source at asazure://westeurope.asazure.windows.net/alsolutionsbiasprod;Life Sciences APAC Velocity.)
at Microsoft.Data.Mashup.ProviderCommon.MashupResource.<>c__DisplayClass44_2`1.<StartEvaluationAndGetResultSource>b__0()
at Microsoft.Mashup.Security.Impersonation.RunAsProcessUser[T](Func`1 func)
at Microsoft.Data.Mashup.MashupCommand.EvaluateAndGetSource[T](String commandText, CommandType commandType, Int32 commandTimeout, MashupParameterCollection parameters, String resultTransform, Boolean forColumnInfo, Boolean executeAction)
at Microsoft.Data.Mashup.MashupCommand.ExecuteReader(CommandBehavior commandBehavior, MashupCommandBehavior mashupCommandBehavior)
at Microsoft.PowerBI.DataMovement.Pipeline.GatewayCore.GatewayProcessorUtils.MashupExecuteReaderAsync(DbCommand command, ExecuteQueryRequest queryRequest, Guid activityId)
at Microsoft.PowerBI.DataMovement.Pipeline.GatewayCore.GatewayProcessor.<>c__DisplayClass4_3.<<ExecuteAdoQuery>b__2>d.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.PowerBI.DataMovement.Pipeline.GatewayPipelineTelemetry.PipelineTelemetryService.<ExecuteInActivity>d__7`1.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.PowerBI.DataMovement.Pipeline.GatewayCore.GatewayProcessor.<>c__DisplayClass4_0.<<ExecuteAdoQuery>b__0>d.MoveNext()</pi>
GatewayPipelineErrorCode=DM_GWPipeline_UnknownError
GatewayVersion=
InnerType=MashupCredentialException
InnerMessage=<pi>The credentials provided cannot be used for the AnalysisServices source. (Source at asazure://westeurope.asazure.windows.net/alsolutionsbiasprod;Life Sciences APAC Velocity.)</pi>
InnerToString=<pi>Microsoft.Data.Mashup.MashupCredentialException (0x80004005): The credentials provided cannot be used for the AnalysisServices source. (Source at asazure://westeurope.asazure.windows.net/alsolutionsbiasprod;Life Sciences APAC Velocity.)
at Microsoft.Data.Mashup.ProviderCommon.MashupResource.<>c__DisplayClass44_2`1.<StartEvaluationAndGetResultSource>b__0()
at Microsoft.Mashup.Security.Impersonation.RunAsProcessUser[T](Func`1 func)
at Microsoft.Data.Mashup.MashupCommand.EvaluateAndGetSource[T](String commandText, CommandType commandType, Int32 commandTimeout, MashupParameterCollection parameters, String resultTransform, Boolean forColumnInfo, Boolean executeAction)
at Microsoft.Data.Mashup.MashupCommand.ExecuteReader(CommandBehavior commandBehavior, MashupCommandBehavior mashupCommandBehavior)
at Microsoft.PowerBI.DataMovement.Pipeline.GatewayCore.GatewayProcessorUtils.MashupExecuteReaderAsync(DbCommand command, ExecuteQueryRequest queryRequest, Guid activityId)
at Microsoft.PowerBI.DataMovement.Pipeline.GatewayCore.GatewayProcessor.<>c__DisplayClass4_3.<<ExecuteAdoQuery>b__2>d.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.PowerBI.DataMovement.Pipeline.GatewayPipelineTelemetry.PipelineTelemetryService.<ExecuteInActivity>d__7`1.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.PowerBI.DataMovement.Pipeline.GatewayCore.GatewayProcessor.<>c__DisplayClass4_0.<<ExecuteAdoQuery>b__0>d.MoveNext()</pi>
InnerCallStack= at Microsoft.Data.Mashup.ProviderCommon.MashupResource.<>c__DisplayClass44_2`1.<StartEvaluationAndGetResultSource>b__0()
at Microsoft.Mashup.Security.Impersonation.RunAsProcessUser[T](Func`1 func)
at Microsoft.Data.Mashup.MashupCommand.EvaluateAndGetSource[T](String commandText, CommandType commandType, Int32 commandTimeout, MashupParameterCollection parameters, String resultTransform, Boolean forColumnInfo, Boolean executeAction)
at Microsoft.Data.Mashup.MashupCommand.ExecuteReader(CommandBehavior commandBehavior, MashupCommandBehavior mashupCommandBehavior)
at Microsoft.PowerBI.DataMovement.Pipeline.GatewayCore.GatewayProcessorUtils.MashupExecuteReaderAsync(DbCommand command, ExecuteQueryRequest queryRequest, Guid activityId)
at Microsoft.PowerBI.DataMovement.Pipeline.GatewayCore.GatewayProcessor.<>c__DisplayClass4_3.<<ExecuteAdoQuery>b__2>d.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.PowerBI.DataMovement.Pipeline.GatewayPipelineTelemetry.PipelineTelemetryService.<ExecuteInActivity>d__7`1.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.PowerBI.DataMovement.Pipeline.GatewayCore.GatewayProcessor.<>c__DisplayClass4_0.<<ExecuteAdoQuery>b__0>d.MoveNext()
([1]Microsoft.PowerBI.DataMovement.Pipeline.Diagnostics.GatewayPipelineWrapperException.StackTrace:)
at Microsoft.Data.Mashup.ProviderCommon.MashupResource.<>c__DisplayClass44_2`1.<StartEvaluationAndGetResultSource>b__0()
at Microsoft.Mashup.Security.Impersonation.RunAsProcessUser[T](Func`1 func)
at Microsoft.Data.Mashup.MashupCommand.EvaluateAndGetSource[T](String commandText, CommandType commandType, Int32 commandTimeout, MashupParameterCollection parameters, String resultTransform, Boolean forColumnInfo, Boolean executeAction)
at Microsoft.Data.Mashup.MashupCommand.ExecuteReader(CommandBehavior commandBehavior, MashupCommandBehavior mashupCommandBehavior)
at Microsoft.PowerBI.DataMovement.Pipeline.GatewayCore.GatewayProcessorUtils.MashupExecuteReaderAsync(DbCommand command, ExecuteQueryRequest queryRequest, Guid activityId)
at Microsoft.PowerBI.DataMovement.Pipeline.GatewayCore.GatewayProcessor.<>c__DisplayClass4_3.<<ExecuteAdoQuery>b__2>d.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task ta
Technical Details:
RootActivityId: 5be3a4d0-fd55-4d7a-a64a-b17a7d2436c2
Date (UTC): 10/30/2019 5:25:02 AM
'.
@Anonymous
Thanks for the reply.
Seeing that the error message -
The credentials provided cannot be used for the AnalysisServices source.
Can you please try to give admin access for this account to testing purpose and try to re-pro the issue.
If the issue is persists, please submit a support ticket to investigate with the error details.
They already do, that's the problem. That account runs the processing fine inside Visual Studio, and while it processes as part of the deployment. Once its refreshed directly by SSMS, which uses the stored credentials in the deployed bim file, that's when the Gateway gets involved and the error presents itself. To make this even stranger, I've managed to publish and then straight after run SSMS and have it work. If I initiate a refresh at a later date, the original failure occurs. If I had to guess, the token used as part of the deployment is stored in the BIM file and it only lasts a short period before becoming invalid. So the model, when processing, doesn't reauthenticate but passes a token via the gateway.
This source can't be listed in the gateway either, as the Gateway throws its own credential error. This happens no matter what credentials are entered here.
@Anonymous
Please submit a ticket to investigate.
March 31 - April 2, 2025, in Las Vegas, Nevada. Use code MSCUST for a $150 discount! Early Bird pricing ends December 9th.
Check out the November 2024 Power BI update to learn about new features.