Проблемы аутентификации ADOMD.Net Net 6
Я пытаюсь перенести приложение с Net 4.x на Net 6 и столкнулся со странной ситуацией. По сути, я хочу переключить Microsoft.AnalysisServices.AdomdClient.retail.amd64 на Microsoft.AnalysisServices.AdomdClient.NetCore.retail.amd64 , который, судя по тому, что я видел, должен использоваться с Net 6.
Рассматриваемая ошибка:
MsalServiceException: AADTS50052: введенный пароль превышает максимальную длину. Пожалуйста, обратитесь к своему администратору для сброса пароля.
Я использую Microsoft.AnalysisServices.AdomdClient.retail.amd64 в своей сети Net 4.x, которая зависит от Microsoft.Identity.Client. Приложение вызывает Power BI с помощью строки подключения с паролем ={accessToken}, который является моим OnBehalfToken. В версии 4.10 соединение работает нормально, но если я обновлю пакет до последней версии, я получаю сообщение об ошибке, связанное со слишком длинным паролем. Насколько я понял, проблема начинает возникать после версии 4.43.
Такое же поведение наблюдается и в эквивалентном пакете net core Microsoft.AnalysisServices.AdomdClient.NetCore.retail.amd64 , который, насколько я могу судить, должен быть практически таким же. Этот конкретный пакет должен иметь Microsoft.Identity.Client (=> 4.43.0).
Код выглядит примерно так
string ConnectionString = $"Provider=MSOLAP;Data Source={server};User ID=;Password={accessToken};Catalog={databaseName};Persist Security Info=True; Impersonation Level=Impersonate";
using (AdomdConnection adomdConnection = new AdomdConnection())
{
adomdConnection.ConnectionString = ConnectionString;
AdomdCommand adomdCommand = new AdomdCommand();
adomdCommand.Connection = adomdConnection;
adomdCommand.CommandText = "SAMPLE QUERY";
adomdConnection.Open(); // Fails AADSTS50052
CellSet cellSet = adomdCommand.ExecuteCellSet();
adomdConnection.Close();
}
Я не понимаю, почему он работает в более старых версиях, но не работает в последней версии 4.x или любой версии Net 6.
Есть ли другой способ сделать это, или я упускаю что-то очевидное?
Спасибо.