CSOM Sharepoint подключается к AzureAdC#

Место общения программистов C#
Anonymous
CSOM Sharepoint подключается к AzureAd

Сообщение Anonymous »

Я использовал CSOM для загрузки файлов в Sharepoint с использованием устаревшей аутентификации (пароли приложений), но 1 октября, похоже, MS прекратила поддержку этого метода аутентификации.
Я создал приложение на портале AzureAd или EntraId, и у меня есть следующие данные.
  • ClientId или ApplicationId
  • TenantId
  • Секретное значение
Приложение имеет следующие разрешения: Sites.FullControl.All, Sites.ReadWrite.All, Sites.Selected
Это мой код, и с его помощью я могу получить токен носителя с помощью ввода проблемы, но когда я выполняю _ClientContext.ExecuteQueryAsync(), он выдает ошибку 401

Код: Выделить всё

var app = ConfidentialClientApplicationBuilder.Create(_authData.ApplicationId)
.WithTenantId(_authData.TenantId)
.WithClientSecret(_authData.Password)
.Build();

var scope = new string[] { $"{_siteUrl.Scheme}://{_siteUrl.Host}/.default" };

var result = await app.AcquireTokenForClient(scope).ExecuteAsync();
_authData.AccessToken = result.AccessToken;

_clientContext.ExecutingWebRequest += (s, e) =>
{
e.WebRequestExecutor.RequestHeaders["Authorization"] = $"Bearer {_authData.AccessToken}";
};
Странно то, что я попробовал сценарий PowerShell для загрузки файлов с помощью Graph и, похоже, работает, но с CSOM не получилось. Я не понимаю, что происходит.

Подробнее здесь: https://stackoverflow.com/questions/797 ... th-azuread

Вернуться в «C#»