Как пройти аутентификацию в Maximo 7.6 с .NET Core 3.1?

#c# #asp.net #http #maximo #ibm-maximo-worker-insights

#c# #asp.net #http #maximo #ibm-maximo-worker-insights

Вопрос:

Я не могу пройти аутентификацию, чтобы получить LtpaToken2 и JSESSIONID. Вот код:

         string url = "http://maximo.local/maximo/"; //http://maximo.local/maximo/j_security_check?j_username=adminamp;j_password=admin

        string uri = "oslc/login";
        using (HttpClient client = new HttpClient())
        {

            client.BaseAddress = new Uri(url);
            string username = "admin";
            string password = "admin";

            client.DefaultRequestHeaders.Add($"Authorization", $"Basic {Base64Encode($"{username}:{password}")}");
            
            string paramentros = ""; 

            var response = client.PostAsync(uri, new StringContent(paramentros, Encoding.UTF8, "application/json")).Resu<
            

            if (response.IsSuccessStatusCode)
            {
                var jsonString = await response.Content.ReadAsStringAsync();
            }
  

Что может быть не так?

Комментарии:

1. Смотрите следующее: ibm.com/support/pages/configuring-maximo-authentication

2. Какую ошибку вы получаете? Это кажется правильным, хотя я на самом деле не знаю c #. Моя первая мысль — ваш сервер на самом деле не настроен для аутентификации LDAP / app server, и поэтому вам нужно использовать другой заголовок, но в сообщении об ошибке обычно говорится об этом.

Ответ №1:

Хранит ли ваш Maximo имя пользователя и пароль?

Встроенная аутентификация в Maximo использует заголовок для входа в систему через rest api, но это не так, как у вас.

Итак, вы хотите иметь заголовок maxauth, а затем значение в кодировке base64 userid:password.