Я пытаюсь настроить код C# для управления нашим доменом Google.Получение Недопустимая ошибка разрешения из DirectoryService
Я получаю эту ошибку всякий раз, когда вызываю service.Users.List() или любой другой метод из DirectoryService api.
Google.Apis.Requests.RequestError
Insufficient Permission [403]
Errors [
Message[Insufficient Permission] Location[ - ] Reason[insufficientPermissions] Domain[global]
]
Я выполнил все инструкции по установке OAuth. Учетная запись, которую я использую, является администратором домена.
Клиентский секретный файл, который я использую, отлично работает, когда я использую его с GAM.exe для выполнения тех же операций. Это заставляет меня думать, что я делаю что-то не так в своем коде.
Ниже приведен мой код для запросов пользователей, есть ли что-либо, что у меня отсутствует?
static void Main(string[] args)
{
var applicationName = "App Project Name";
var userName = "[email protected]";
var clientID = "clientIDfromAPIcredentialpageonconsole.developers.google.com";
UserCredential credential;
using (var stream = new FileStream("C:\\gam\\client_secrets.json", FileMode.Open, FileAccess.Read))
{
credential = GoogleWebAuthorizationBroker.AuthorizeAsync(
GoogleClientSecrets.Load(stream).Secrets,
new[] { DirectoryService.Scope.AdminDirectoryOrgunit, DirectoryService.Scope.AdminDirectoryUser },
userName,
CancellationToken.None, null).Result;
}
var service = new DirectoryService(new BaseClientService.Initializer()
{
ApplicationName = applicationName,
HttpClientInitializer = credential
});
var list = service.Users.List();
var users = list.Execute();
}
}
1. Я пытался добавить во всех областях, и это ничего не изменило. 2. В инструкциях в нем говорится: «Активируйте API-интерфейс каталогов в Google Developers Console. (Если API не указан в Консоли разработчиков, пропустите этот шаг.)« Когда я иду в консоль, Каталог API не указан ни в одном из API. Поэтому я предположил, что мне нужно пропустить этот шаг. Я включил администратор и gmail на всякий случай. – VaultBoy14
Мне нужно было авторизовать приложение для URL-адреса api в admin.google scren – VaultBoy14
Какой URL-адрес? По вашему коду, похоже, вы используете установленное приложение (и НЕ веб-приложение), правильно? Итак, какой URL-адрес вам нужно обновить? Можете ли вы подробнее рассказать, пожалуйста? – peleyal