Совместное использование токенов OAuth в двух проектах веб-APIC#

Место общения программистов C#
Ответить
Anonymous
 Совместное использование токенов OAuth в двух проектах веб-API

Сообщение Anonymous »

Я создал приложение веб-API с аутентификацией по токену OAuth. Это работало без проблем, когда сервер токенов работал в том же приложении, что и служба. Однако я хотел бы переместить службу авторизации в отдельное приложение (проект VS) и использовать ее в нескольких проектах веб-API, над которыми я работаю. Однако когда я изолировал логику авторизации в собственном проекте, исходная служба больше не считает сгенерированные токены действительными. Мой вопрос: может ли один проект веб-API создать токен для проверки другого? Вот мой код запуска OWIN как для службы аутентификации, так и для исходной службы

Служба аутентификации:

public void Configuration(IAppBuilder app)
{
// For more information on how to configure your application, visit http://go.microsoft.com/fwlink/?LinkID=316888
HttpConfiguration config = new HttpConfiguration();

ConfigureOAuth(app);

WebApiConfig.Register(config);
app.UseWebApi(config);
app.UseCors(Microsoft.Owin.Cors.CorsOptions.AllowAll);
}

private void ConfigureOAuth(IAppBuilder app)
{
OAuthAuthorizationServerOptions OAuthServerOptions = new OAuthAuthorizationServerOptions()
{
AllowInsecureHttp = true,
TokenEndpointPath = new PathString("/token"),
AccessTokenExpireTimeSpan = TimeSpan.FromDays(1),
Provider = new SimpleAuthorizationServerProvider()
};

// Token Generation
app.UseOAuthAuthorizationServer(OAuthServerOptions);
app.UseOAuthBearerAuthentication(new OAuthBearerAuthenticationOptions());
}


Оригинальный сервис:

public void Configuration(IAppBuilder app)
{
ConfigureOAuth(app);
// For more information on how to configure your application, visit http://go.microsoft.com/fwlink/?LinkID=316888
HttpConfiguration config = new HttpConfiguration();

config.SuppressDefaultHostAuthentication();
config.Filters.Add(new HostAuthenticationFilter(OAuthDefaults.AuthenticationType));

WebApiConfig.Register(config);

app.UseCors(Microsoft.Owin.Cors.CorsOptions.AllowAll);
app.UseWebApi(config);
}

public void ConfigureOAuth(IAppBuilder app)
{
var oauthBearerOptions = new OAuthBearerAuthenticationOptions();
app.UseOAuthBearerAuthentication(oauthBearerOptions);
}


Подробнее здесь: https://stackoverflow.com/questions/257 ... i-projects
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

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