Как интегрировать проверку подлинности на основе токенов для API-интерфейса REST Self Hosted API, использующего проверку подлинности NTLM - PullRequest
0 голосов
/ 29 августа 2018

Я создал консольное приложение, в котором размещен API-интерфейс REST и в настоящее время используется проверка подлинности NTLM.

Я могу запустить приложение с помощью curl с помощью: curl GET --verbose --ntlm -u {домен \ имя пользователя}: {пароль} '{url}'

Я встречал различные статьи о том, как реализовать аутентификацию на основе токенов, но ни одна из них не помогла мне интегрировать аутентификацию на основе токенов в мое консольное приложение.

Я не уверен, можно ли это сделать или нет. Если это возможно, пожалуйста, предоставьте мне шаги с файлами кода для добавления в приложение. (больше ссылок нет, пожалуйста).

Startup.cs

 public class Startup
 {
    public void Configuration(Owin.IAppBuilder appBuilder)
    {
                // Configure Web API for self-host. 
                HttpConfiguration config = new HttpConfiguration();
                HttpListener listener = (HttpListener)appBuilder.Properties["System.Net.HttpListener"];
                listener.AuthenticationSchemes = AuthenticationSchemes.Ntlm;

                config.Routes.MapHttpRoute(
                       name: "DefaultApi",
              routeTemplate: "api/{controller}/{id}",
                   defaults: new { id = RouteParameter.Optional }
                 );

                appBuilder.UseWebApi(config);
     }
}

Program.cs

class Program
    {
        static void Main(string[] args)
        {
            string hostName = Environment.MachineName;
            string baseAddressHostname = "http://"+hostName+":8090/";
            StartOptions options = new StartOptions();
            options.Urls.Add(baseAddressHostname);
            WebApp.Start<Startup>(options);
            Console.WriteLine("Server listening at :" + baseAddressHostname);
            Console.ReadLine();
        }
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...