Ограничение происхождения с помощью аутентификации Cors и токена Owin - PullRequest
0 голосов
/ 24 апреля 2018

Мне удалось включить Cors нормально и мои клиентские приложения взаимодействовали с моим приложением веб-API с помощью AJAX. Проблема в том, что он открыт для любого хоста. Я добавил следующую строку в Startup.Auth.cs:

 app.UseCors(Microsoft.Owin.Cors.CorsOptions.AllowAll);

Я использовал стандартный метод WebApi для cors, но у меня были проблемы при выдаче аутентификации токена.

Мой вопрос: как я могу ограничить происхождение, используя этот метод?

Ответы [ 2 ]

0 голосов
/ 24 апреля 2018

Определите одну или несколько именованных политик CORS, а затем выберите политику по имени во время выполнения

public void ConfigureServices(IServiceCollection services)
{
    services.AddCors(options =>
    {
        options.AddPolicy("AllowSpecificOrigin",
            builder => builder.WithOrigins("http://example.com"));
    });
}

public void Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory loggerFactory)
{
    ...
    // Shows UseCors with named policy.
    app.UseCors("AllowSpecificOrigin");
   ...
}

Вы можете прочитать, как определить CORS на здесь .

0 голосов
/ 24 апреля 2018

Вы можете ограничить источник, используя CorsPolicyBuilder Class

   app.UseCors(builder =>
        builder.WithOrigins("http://localhost", "https://localhost"));
...