У меня уже есть приложение, написанное на ASP.NET MVC. Мы решили написать новые функции внешнего интерфейса в угловых и медленно перевести все внешние интерфейсы в угловые. Но пока мы застряли с Angular и MVC. Проблема, с которой мы сталкиваемся, заключается в том, что когда пользователь входит в систему, вход в систему осуществляется только в частях приложения MVC. Маркер доступа из Azure AD не используется совместно Angular и ASP.NET MVC.
Я установил
https://www.npmjs.com/package/adal-angular5
Я могу войти с этим пакетом с угловой страницы, но я хочу повторно использовать регистрацию со стороны MVC. Это возможно?
Я сделал модуль аутентификации
import { NgModule } from '@angular/core';
import { CommonModule } from '@angular/common';
import { AuthenticationGuard } from '../services/authenticated.guard';
import { Adal5Service, Adal5HTTPService } from 'adal-angular5';
import { HttpClient, HttpClientModule } from '@angular/common/http';
import { OAuthCallbackHandler } from '../oauth-callback/oauth-callback.guard';
import { HttpService } from './http.service';
import { CookieService } from 'angular2-cookie/services/cookies.service';
@NgModule({
declarations: [],
imports: [ CommonModule, HttpClientModule ],
exports: [],
providers: [
AuthenticationGuard,
Adal5Service,
{
provide: Adal5HTTPService,
useFactory: Adal5HTTPService.factory,
deps: [ HttpClient, Adal5Service ]
},
OAuthCallbackHandler
],
})
export class AuthenticationModule
{
constructor(private adalService: Adal5Service)
{
this.adalService.init({
tenant: 'tenant',
clientId: 'my-id',
redirectUri: 'mycallback uri',
postLogoutRedirectUri: 'some redirect uri',
popUp: true
});
}
}
Позже могу позвонить
this.adalService.login();
Это регистрирует меня, но я не хочу заставлять пользователей входить дважды.
Как я могу решить это?