2016-07-21 12 views
8

Używam Angular2 i chcę uwierzytelnić użytkownika w usłudze Azure AD. Znalazłem ADAL-y, ale obsługują tylko Angular1, również znalazłem to https://www.npmjs.com/package/angular2-adal#adalService, ale wydaje się, że wciąż jest na początkowym etapie. Jaka jest najlepsza ścieżka, którą mogę zastosować, aby to wdrożyć, czy ktoś może przedstawić przykład.Używanie Angular2 do uwierzytelniania się z usługą Azure AD

+0

Istnieje podobne (odpowiedział!) Pytanie na przepełnienie stosu: [Jak załadować adal.js w Webpack wewnątrz Angular 2] (http://stackoverflow.com/questions/40044892/how-to-load-adal- js-in-webpack-inside-angle-2-azure-ad) –

Odpowiedz

0

Aby rozwiązać ten problem, trzeba będzie zrobić kilka rzeczy:

npm install adal-angular --save  (=>"@types/adal": "^1.0.22") 
npm install @types/adal --save-dev  (=>"adal-angular": "^1.0.12") 
npm install expose-loader 

Z tych zainstalowanych pakietów, trzeba wykonać następujące czynności:
wewnątrz component.ts:

  1. napisać potrójny slash, aby zaimportować typowanie:
    /// <reference path="../../../node_modules/@types/adal/index.d.ts" />
  2. importować plik adal.js i udostępnić go jako tekst uwierzytelniania przy użyciu eksponatów e ładowarka
    import 'expose?AuthenticationContext!../../../node_modules/adal-angular/lib/adal.js';
  3. zadeklarować zmienną typu AuthenticationContextStatic i przypisać mu wartość od AuthenticationContext
    let createAuthContextFn: adal.AuthenticationContextStatic = AuthenticationContext;
  4. Teraz można zainicjować kontekstu uwierzytelniania przy użyciu createAuthContextFn
    let config: adal.Config = { clientId : 'test' }; let context = new createAuthContextFn(config);

How to load adal.js in webpack inside Angular 2 (Azure-AD)

+0

Czy jest coś trudnego do uzyskania tego działającego w środowisku system.js? – BradleyDotNET

+0

@hannes Jak udostępnić zewnętrzne punkty końcowe interfejsu API za pomocą tego podejścia? – Pickle

+0

Masz na myśli łączenie się z lokatorem AD? Podaj adres URL, nie? W każdym razie, inne podejście, jeśli używasz maszynopisu, możesz także spróbować npm instalowania adal-ts. Repo ma również demo na żywo na lazurowym, aby zacząć. –

2

Ta odpowiedź jest chyba bardzo późno, ale skoro pytasz na przykład, mam zmodyfikowano najnowszą kątowa 2 szybki start i zintegrowane Adal do niego, tutaj: https://github.com/ranveeraggarwal/ng2-adal-QuickStart

Posiada również trasy i chroniony routingu.

To wykorzystuje systemjs i jeszcze nie znalazłem rozwiązania opartego na pakiecie internetowym.

+0

wszelkie nowości dotyczące tego rozwiązania? – phicon

+0

Dobrze widzieć, że używa nowego routera zamiast przestarzałego. –

Powiązane problemy