Table of contents
TOC
目次を折りたたむ
目次を展開する

AD FS 2016で接続OpenIdを有効にします。

Bill Mathers|最終更新日: 2017/03/10
|
1 投稿者

適用対象: Windows Server 2016

Windows Server 2012 R2のAD FSで初期のOauthサポートに基づき、AD FS 2016には、OpenId接続サインオンを使用するためのサポートが導入されています。

前提条件

このドキュメントを完了する前に必要な前提条件の一覧を次に示します。 このドキュメントでは、AD FSがインストールされているし、AD FSファームが作成されていると仮定します。

  • (無料の試用版では問題ありません)、Azure ADサブスクリプション

  • GitHubクライアント ツール

  • Windows Server 2016 TP4以降に、AD FS

  • Visual Studio 2013以降。

AD FS 2016でのアプリケーション グループを作成します。

次のセクションでは、AD FS 2016で、アプリケーション グループを構成する方法について説明します。

アプリケーション グループを作成します。

  1. [AD FSの管理]、[アプリケーション グループを右クリックしてアプリケーション グループの追加します。

  2. アプリケーション グループ ウィザードで、名前として入力ADFSSSO [スタンドアロン アプリケーション選択、サーバー アプリケーションまたはwebサイトテンプレート。 クリックしてします。

    AD FS OpenID

  3. コピー、クライアント識別子値。 それが使用される後で、値としてida: ClientIdアプリケーションweb.configファイル内のします。

  4. 次の入力リダイレクウトURI: - https://localhost:44320/します。 クリックして追加します。 クリックしてします。

    AD FS OpenID

  5. アプリケーション資格情報の構成画面で、チェック ボックスをオンに共有シークレットを生成シークレットをコピーします。 クリックして[次へ]

    AD FS OpenID

  6. 概要画面で、クリックしてします。

  7. 完了画面で、クリックして閉じるします。

  8. ここでは、上、[新しいアプリケーション グループを右クリックし、プロパティします。

  9. ADFSSSOプロパティクリックしてアプリケーションを追加します。

  10. アプリケーションは、サンプル アプリケーションを新しく追加選択Web API ] をクリックし、します。

    AD FS OpenID

  11. Web APIの構成画面で、次の入力識別子 - https://contoso.com/WebAppします。 クリックして追加します。 クリックしてします。

    AD FS OpenID

  12. 上、アクセス制御ポリシーの選択画面で、許可everyone ] をクリックし、します。

    AD FS OpenID

  13. アプリケーションのアクセス許可を構成する画面で、必ずopenidが選ばれ、クリックしてします。

    AD FS OpenID

  14. 概要画面で、クリックしてします。

  15. 完了画面で、クリックして閉じるします。

  16. サンプル アプリケーションのプロパティクリックしてOKします。

ダウンロードをOpenId経由での認証にMVPアプリを変更する接続し、AD FS

このセクションでは、Web APIのサンプルをダウンロードしてVisual Studioで変更する方法について説明します。 Azure ADサンプルを使いますここします。

サンプル プロジェクトをダウンロードするには、Git Bashを使うし、次のように入力します。

git clone https://github.com/Azure-Samples/active-directory-dotnet-webapp-openidconnect  

AD FS OpenID

アプリを変更するには

  1. Visual Studioを使って、サンプルを開きます。

  2. すべての欠落NuGetsを復元できるように、アプリをコンパイルします。

  3. Web.configファイルを開きます。 次のように、ルックは、次の値を変更します。

    <add key="ida:ClientId" value="8219ab4a-df10-4fbd-b95a-8b53c1d8669e" />  
    <add key="ida:ADFSDiscoveryDoc" value="https://adfs.contoso.com/adfs/.well-known/openid-configuration" />  
    <!--<add key="ida:Tenant" value="[Enter tenant name, e.g. contoso.onmicrosoft.com]" />      
    <add key="ida:ResourceID" value="https://contoso.com/WebApp"  
    <add key="ida:AADInstance" value="https://login.microsoftonline.com/{0}" />-->  
    <add key="ida:PostLogoutRedirectUri" value="https://localhost:44320/" />  
    

    AD FS OpenID

  4. Startup.Auth.csファイルを開き、次を変更します。

    • コメント アウト次します。

      //public static readonly string Authority = String.Format(CultureInfo.InvariantCulture, aadInstance, tenant);  
      
    • 次の変更とOpenId接続ミドルウェア初期化ロジックを調整するには。

      private static string clientId = ConfigurationManager.AppSettings["ida:ClientId"];  
      //private static string aadInstance = ConfigurationManager.AppSettings["ida:AADInstance"];  
      //private static string tenant = ConfigurationManager.AppSettings["ida:Tenant"];  
      private static string metadataAddress = ConfigurationManager.AppSettings["ida:ADFSDiscoveryDoc"];  
      private static string postLogoutRedirectUri = ConfigurationManager.AppSettings["ida:PostLogoutRedirectUri"];  
      

      AD FS OpenID

    • 近づけたり下矢印、次のように、OpenId接続ミドルウェア オプションを変更します。

      app.UseOpenIdConnectAuthentication(  
          new OpenIdConnectAuthenticationOptions  
          {  
              ClientId = clientId,  
              //Authority = authority,  
              MetadataAddress = metadataAddress,  
              RedirectUri = postLogoutRedirectUri,  
              PostLogoutRedirectUri = postLogoutRedirectUri 
      

      AD FS OpenID

      上記の変更によっては、次の手順をおは。

      • MetadataAddress経由で直接探索ドキュメント場所を指定して、機関を使用して、信頼された発行元に関するデータを通信するためのnstead、

      • Azure ADは、要求で、redirect_uriの存在を強制しませんが、adfsします。 そのため、ここで追加する必要があります。

アプリが動作を確認します。

上記の変更が加えられた後は、f5キーを押します。 これは、サンプルのページが表示されます。 ログをクリックします。

AD FS OpenID

AD FSのサインイン ページにリダイレクトされます。 ログイン。

AD FS OpenID

これは、成功した後ログインしていることが表示されます。

AD FS OpenID

© 2017 Microsoft