2016-07-21 17 views
8

私はAngular2を使用しており、Azure ADに対してユーザーを認証する必要があります。私はADALjsを見つけましたが、Angular1のみに対応していましたが、これもhttps://www.npmjs.com/package/angular2-adal#adalServiceでしたが、これはまだ初期段階にあるようです。これを実装するために私が取ることができる最善の道は何ですか、誰かが実際の例を提供することができます。Angular2を使用してAzure ADに対して認証する

+0

スタックオーバフローに関する類似した質問があります:[角度2のwebpackでadal.jsを読み込む方法](http://stackoverflow.com/questions/40044892/how-to-load-adal- js-in-webpack-inside-angular-2-azure-ad) –

答えて

0

これを修正するには、あなたは多くのことを行う必要があります:インストールされたパッケージで

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 

を、あなたは次の操作を実行する必要があります。
あなたcomponent.ts内部 :

  1. トリプルスラッシュを入力して入力をインポートする
    /// <reference path="../../../node_modules/@types/adal/index.d.ts" />
  2. import adal.js電子ローダー
    import 'expose?AuthenticationContext!../../../node_modules/adal-angular/lib/adal.js';
  3. は今、あなたはcreateAuthContextFn
    let config: adal.Config = { clientId : 'test' }; let context = new createAuthContextFn(config);

を使用して認証コンテキストを初期化することができますタイプAuthenticationContextStaticの変数を宣言し、それをAuthenticationContext
let createAuthContextFn: adal.AuthenticationContextStatic = AuthenticationContext;

  • の値を割り当てますHow to load adal.js in webpack inside Angular 2 (Azure-AD)

  • +0

    これをsystem.js環境で動作させるのに手間がかかりますか? – BradleyDotNET

    +0

    @hannesこのアプローチを使用して外部APIのエンドポイントを公開するにはどうすればよいですか? – Pickle

    +0

    あなたのADテナントに接続することを意味しますか? URLを入力してください。とにかく、あなたがtypescriptを使うなら別のアプローチで、adal-tsをインストールするnpmを試すこともできます。レポにはまた、あなたを始めさせるために青空の上で開催されるライブデモがあります。 –

    2

    この答えはおそらく、スーパー後半ですが、例えば尋ねた以来、私はここで、その中に最新の角度2クイックスタートと統合ADALを変更した:https://github.com/ranveeraggarwal/ng2-adal-QuickStart

    また、ルーティングおよび保護されたルーティングを持っています。

    これはsystemjsを使用していますが、Webpackベースのソリューションはまだ見つかりません。

    +0

    そのwebpackソリューションに関するニュースはありますか? – phicon

    +0

    廃止予定のルータの代わりに新しいルータを使用していることを確認してください。 –

    関連する問題