の検索結果 :

×

IDP として ADFS を使用した ASP.NET Core SAML シングル サインオン (SSO)


ASP.NET Core SAML シングル サインオン (SSO) ミドルウェアにより、ASP.NET Core アプリケーションの SAML シングル サインオンを有効にする機能が提供されます。シングル サインオンを使用すると、ASP.NET Core アプリケーションとサービスにアクセスするために 1 つのパスワードだけを使用できます。当社のミドルウェアは、SAML 準拠のすべての ID プロバイダーと互換性があります。ここでは、ADFS を IdP として考慮して、ASP.NET Core と ADFS の間でシングル サインオン (SSO) を構成するためのステップバイステップ ガイドを説明します。 ASP.NET Core SSO に提供される機能の詳細については、ここをクリックしてください。 こちら.

プラットフォームのサポート: ASP.NET Core SAML ミドルウェアは、ASP.NET Core 2.0 以降をサポートします。 Windows、Linux、macOS を含むすべての ASP.NET Core プラットフォームをサポートします。

前提条件: ダウンロードとインストール


PM> NuGet\Install-Package miniOrange.SAML.SSO
        
using Microsoft.AspNetCore.Authentication.Cookies; using miniOrange.saml; var builder = WebApplication.CreateBuilder(args); builder.Services.AddRazorPages(); // Add authentication services builder.Services.AddControllersWithViews(); builder.Services.AddAuthentication(options =>  { options.DefaultAuthenticateScheme = "SSO_OR_Admin"; options.DefaultScheme = "SSO_OR_Admin"; options.DefaultChallengeScheme = "SSO_OR_Admin";  }) .AddCookie("moAdmin", options =>  {  }) .AddCookie(CookieAuthenticationDefaults.AuthenticationScheme, options =>  { // Configure cookie options as needed for SSO Users }) .AddPolicyScheme("SSO_OR_Admin", "SSO_OR_Admin", options => { // runs on each request options.ForwardDefaultSelector = context => { // filter by auth type, here if the moAdmin cookie is coming in any request the Admin Authentication will work foreach (var cookie in context.Request.Cookies) { if (cookie.Key.Contains(".AspNetCore.Cookies")) { return CookieAuthenticationDefaults.AuthenticationScheme; } } // otherwise always check for cookie auth return "moAdmin"; }; }); var app = builder.Build(); if (!app.Environment.IsDevelopment())  {     app.UseExceptionHandler("/Error");     app.UseHsts();  } app.UseHttpsRedirection(); app.UseRouting(); app.UseAuthorization(); app.MapRazorPages(); app.UseCookiePolicy(); app.UseAuthentication(); app.UseStaticFiles(); app.UseminiOrangeSAMLSSOMiddleware(); app.Run();

ADFS を IDP として使用して ASP.NET Core シングル サインオン (SSO) を構成する手順

1.ASP.NET Coreアプリケーションにミドルウェアを追加する

  • 統合後、ブラウザを開いて、以下の URL でミドルウェア ダッシュボードを参照します。
    https://<asp-net-middleware-base-url>/?ssoaction=config
  • 登録ページまたはログイン ページが表示されたら、miniOrange ASP.NET SAML SSO ミドルウェアがアプリケーションに正常に追加されています。
  • ADFS を IDP として使用する ASP.NET Core SAML シングル サインオン (SSO) - saml dll レジスタ
  • をクリックしてアカウントに登録またはログインします。 登録する ボタンをクリックしてミドルウェアを設定します。

2. ADFS を ID プロバイダーとして構成する

  • プラグインの設定 タブ、選択 ADFS 表示されたリストから ID プロバイダーとして選択します。
  • ADFS を IDP として使用する ASP.NET Core SAML シングル サインオン (SSO) - ID プロバイダーとして ADFS を選択します

SAML SP メタデータを取得して ID プロバイダー側​​で構成するには、以下に 2 つの方法を詳しく説明します。

A] SAML メタデータ URL またはメタデータ ファイルを使用する:
  • プラグイン設定メニュー、 探す サービスプロバイダーの設定。その下に、メタデータ URL と SAML メタデータをダウンロードするオプションがあります。
  • メタデータ URL をコピーするか、メタデータ ファイルをダウンロードして、アイデンティティ プロバイダー側​​で同じ設定を行います。
  • 以下のスクリーンショットを参照してください。
  • ADFS を IDP として使用する ASP.NET Core SAML シングル サインオン (SSO) - ダウンロードされたメタデータのコピー
B] メタデータを手動でアップロードする:
  • ノーザンダイバー社の サービスプロバイダーの設定 セクションでは、次のようなサービス プロバイダーのメタデータを手動でコピーできます。 SP エンティティ ID、ACS URL、シングル ログアウト URL そして、それを構成のためにアイデンティティプロバイダーと共有します。
  • 以下のスクリーンショットを参照してください。
  • ADFS を IDP として使用する ASP.NET Core SAML シングル サインオン (SSO) - 手動メタデータ
  • まず、 ADFS 管理 ADFS サーバー上のアプリケーション。
  • ADFS を IDP として使用する ASP.NET Core SAML シングル サインオン (SSO) - adfs サーバー
  • [AD FS 管理] で、[AD FS 管理] を選択します。 依拠当事者の信頼 をクリックします。入力したコードが正しければ、MFAの設定は正常に完了します 依拠当事者の信頼を追加する.
  • ADFS を IDP として使用する ASP.NET Core SAML シングル サインオン (SSO) - 証明書利用者信頼の追加
  • 選択 クレーム対応 証明書利用者信頼ウィザードから、 をクリックします。 開始
  • ADFS を IDP として使用する ASP.NET Core SAML シングル サインオン (SSO) - クレーム対応
ミニオレンジ画像 データソースの選択
  • [データ ソースの選択] で、証明書利用者信頼を追加するデータ ソースを選択します。

  • MFAデバイスに移動する サービスプロバイダーのメタデータ ASP.NET Core SAML ミドルウェアのセクションをコピーし、 メタデータURL.
  • 選択 オンラインまたはローカル ネットワーク上で公開されている証明書利用者に関するデータをインポートする オプションを選択し、フェデレーション メタデータ アドレスにメタデータ URL を追加します。
  • ソフトウェアの制限をクリック Next.
  • ADFS を IDP として使用する ASP.NET Core SAML シングル サインオン (SSO) - SAML 2.0 ウィザード メタデータのサポート

    注: 次のステップで、希望する値を入力します 表示名 をクリックし Next.

ミニオレンジ画像 アクセス制御ポリシーの選択
  • 選択 全員許可 アクセス制御ポリシーとして選択し、 Next.
  • ADFS を IDP として使用する ASP.NET Core SAML シングル サインオン (SSO) - SAML 2.0 ウィザード多要素用
ミニオレンジ画像 信頼を追加する準備ができました
  • In 信頼を追加する準備ができました をクリックしてください Next その後 閉じる.
  • ADFS を IDP として使用する ASP.NET Core SAML シングル サインオン (SSO) - SAML 2.0 ウィザード編集要求
ミニオレンジ画像 請求発行ポリシーの編集
  • のリストで 依拠当事者の信頼、作成したアプリケーションを選択し、 をクリックします。 請求発行ポリシーの編集.
  • ADFS を IDP として使用する ASP.NET Core SAML シングル サインオン (SSO) - SAML 2.0 ウィザード編集要求
  • 「発行変換ルール」タブで、 をクリックします。 ルールを追加する
  • ADFS を IDP として使用する ASP.NET Core SAML シングル サインオン (SSO) - SAML 2.0 ウィザード要求ルール用
ミニオレンジ画像 ルールタイプを選択
  • 選択 LDAP属性をクレームとして送信する をクリックします。入力したコードが正しければ、MFAの設定は正常に完了します Next.
  • ADFS を IDP として使用する ASP.NET Core SAML シングル サインオン (SSO) - SAML 2.0 の場合 Configure_LDAP 属性
ミニオレンジ画像 クレームルールの構成
  • 加える クレームルール名 選択 属性ストア 必要に応じてドロップダウンから選択します。
  • LDAP 属性の発信クレーム タイプへのマッピング, [LDAP 属性] を選択します。 メールアドレス 発信要求タイプとして 名前ID.
  • ADFS を IDP として使用する ASP.NET Core SAML シングル サインオン (SSO) - SAML 2.0 の追加変換要求ルール用
  • 属性を設定したら、 終了.
  • ADFS を IDP として構成した後、次のものが必要になります。 フェデレーションメタデータ サービスプロバイダーを設定します。
  • ADFS フェデレーション メタデータを取得するには、次の URL を使用できます。
    https://< ADFS_Server_Name >/federationmetadata/2007-06/federationmetadata.xml
  • ADFS シングル サインオン (SSO) ログインを実現するために、ADFS を SAML IdP (アイデンティティ プロバイダー) として正常に構成しました。

Windows SSO (オプション)

Windows SSO を設定するには、以下の手順に従ってください。

ミニオレンジ画像 Windows 認証用に ADFS を構成する手順
  • ADFS サーバーで管理者特権のコマンド プロンプトを開き、次のコマンドを実行します。
    • ミニオレンジ画像 setspn -a HTTP/##ADFS サーバー FQDN## ##ドメイン サービス アカウント##

      ミニオレンジ画像 FQDN は完全修飾ドメイン名です (例: adfs4.example.com)

      ミニオレンジ画像 ドメイン サービス アカウントは、AD のアカウントのユーザー名です。

      ミニオレンジ画像 例: setspn -a HTTP/adfs.example.com ユーザー名/ドメイン

  • AD FS 管理コンソールを開き、次をクリックします。 サービス そして、に行きます 認証方法 セクション。右側で、 をクリックします プライマリ認証方法の編集。イントラネット ゾーンの Windows 認証を確認します。
  • ADFS を IDP として使用する ASP.NET Core SAML シングル サインオン (SSO) - プライマリ認証 ADFS を IDP として使用する ASP.NET Core SAML シングル サインオン (SSO) - 管理アプリケーション
  • Internet Explorer を開きます。 「インターネット オプション」の「セキュリティ」タブに移動します。
  • AD FS の FQDN をローカル イントラネットのサイトのリストに追加し、ブラウザーを再起動します。
  • セキュリティ ゾーンのカスタム レベルを選択します。オプションのリストで、「イントラネット ゾーンのみで自動ログオンする」を選択します。
  • ADFS を IDP として使用する ASP.NET Core SAML シングル サインオン (SSO) - SAML 2.0 用 Wizard_SAML を有効にする
  • PowerShell を開き、次の 2 つのコマンドを実行して、Chrome ブラウザーで Windows 認証を有効にします。
    •   Set-AdfsProperties -WIASupportedUserAgents ((Get-ADFSProperties | Select -ExpandProperty WIASupportedUserAgents) + "Chrome")
        Get-AdfsProperties | Select -ExpandProperty WIASupportedUserAgents;
  • Windows 認証用に ADFS が正常に構成されました。

3. ASP.NET SAML ミドルウェアをサービス プロバイダーとして構成する

ミドルウェアで SAML ID プロバイダーのメタデータを構成するには、以下に詳しく説明する 2 つの方法があります。

A] [IDP メタデータのアップロード] ボタンを使用してメタデータをアップロードします。
  • ID プロバイダーからメタデータ URL またはメタデータ ファイル (.xml 形式のみ) が提供されている場合は、 IDPメタデータのアップロード オプションを選択します。
  • 以下のスクリーンショットを参照してください。
  • ADFS を IDP として使用する ASP.NET Core SAML シングル サインオン (SSO) - メタデータのアップロード
  • 使用可能なメタデータ形式に応じて、オプションのいずれかを選択できます。
B] ID プロバイダーのメタデータを手動で構成します。
  • を構成した後 ID プロバイダー、それはあなたに提供します IDPエンティティID、IDPシングルサインオンURL & SAML X509証明書 それぞれフィールド。
  • クリック Save IDP の詳細を保存します。
  • ADFS を IDP として使用する ASP.NET Core SAML シングル サインオン (SSO) - SAML dll 構成

4. SAML SSO のテスト

  • セットアップボタンをクリックすると、セットアップが開始されます テスト構成 ボタンをクリックして、行った SAML 構成が正しいかどうかをテストします。
  • 以下のスクリーンショットは、成功した結果を示しています。 クリック SSO統合 SSO 統合をさらに続行します。
  • ADFS を IDP として使用する ASP.NET Core SAML シングル サインオン (SSO) - SAML dll テスト構成
  • ミドルウェア側でエラーが発生した場合は、以下のようなウィンドウが表示されます。
  • ADFS を IDP として使用する ASP.NET Core SAML シングル サインオン (SSO) - デバッグ ログを有効にする
  • エラーのトラブルシューティングを行うには、次の手順に従います。
    • 解決します タブで、プラグイン ログを受信するためのトグルを有効にします。
    • ADFS を IDP として使用する ASP.NET Core SAML シングル サインオン (SSO) - デバッグ ログを有効にする
    • 有効にすると、次の場所に移動してプラグイン ログを取得できるようになります。 プラグインの設定 タブをクリックしてクリックします テスト構成.
    • ダウンロード ログファイル 解決します タブをクリックして、何が問題だったかを確認してください。
    • あなたは共有することができます ログファイル 私たちと一緒に aspnetsupport@xecurify.com 私たちのチームが問題を解決するためにご連絡いたします。

5. 属性マッピング

  • 構成をテストした後、アプリケーション属性をアイデンティティ プロバイダー (IdP) 属性にマップします。
  • 注: マッピングされたすべての属性はセッションに保存されるため、アプリケーションでアクセスできるようになります。
  • ADFS を IDP として使用する ASP.NET Core SAML シングル サインオン (SSO) - 属性マッピング

6. 統合コード

  • この手順により、アプリケーション内の SSO ユーザー情報をユーザー クレームの形式で取得できます。
  • 見ることもできます セットアップツアー SSO 統合が asp.net ミドルウェア アプリケーションでどのように機能するかを理解します。
  • ユーザー属性にアクセスしたい場所にそのコード スニペットをコピーして貼り付けるだけです。
  • ASP.NET Core SAML シングル サインオン (SSO) | ASP.NET Core 認証 | ASP.NET Core SAML SSO - 統合コード
  • 注:この試用版ミドルウェアはクレーム内のユーザー情報のみをサポートしており、セッションおよびヘッダー内のユーザー情報の取得はプレミアム プラグインで利用できます。
  • 以下から統合コードをコピーすることもできます。
  •           
      string name="";   string claimtype="";   string claimvalue="";    if(User.Identity.IsAuthenticated)    {      foreach( var claim in User.Claims)      {        claimtype = claim.Type;        claimvalue = claim.Value;      }      //retrive custom attributes(for eg. Retrieve Mapped 'mobileNumber' attribute of your IDP)      var identity = (ClaimsIdentity)User.Identity;      IEnumerable claims = identity.Claims;      string mobileNumber = identity.FindFirst("mobileNumber")?.Value;    }
  • 注: マップされたすべての属性はクレームに保存され、アプリケーションでアクセスされます。
  • 統合コードに関してサポートが必要な場合は、次のアドレスまでご連絡ください。 aspnetsupport@xecurify.com

7. ログイン設定

  • ホバーオン アクションの選択 をクリックします。入力したコードが正しければ、MFAの設定は正常に完了します SSO リンクをコピーする. ADFS を IDP として使用する ASP.NET Core SAML シングル サインオン (SSO) - SSO リンクのコピー
  • SSO を実行するアプリケーション内のリンクとして次の URL を使用します。
    https://asp-net-middleware-base-url/?ssoaction=login
  • たとえば、次のように使用できます。
    <a href=”https://asp-net-middleware-base-url/?ssoaction=login”>Log in</a>

8. ログアウト設定

  • SLO を実行するアプリケーションへのリンクとして、次の URL を使用します。
    https://asp-net-middleware-base-url/?ssoaction=logout
  • たとえば、次のように使用できます。
    <a href=”https://asp-net-middleware-base-url/?ssoaction=logout”>Log out</a>

ASP.NET Core SAML 2.0 シングル サインオン (SSO) ミドルウェアは、次のような任意の ID プロバイダーで構成できます。 ADFS、Azure AD、Bitium、centrify、G Suite、JBoss Keycloak、Okta、OneLogin、Salesforce、AWS Cognito、OpenAM、Oracle、PingFederate、PingOne、RSA SecureID、Shibboleth-2、Shibboleth-3、SimpleSAML、WSO2 またはあなた自身のものでも カスタム ID プロバイダー。 ID プロバイダーのリストを確認する こちら.

その他のリソース


お困りですか?

ID プロバイダーが見つからない場合は、 メールでお問い合わせください aspnetsupport@xecurify.com また、お客様の IDP による SSO のセットアップをお手伝いし、お客様の要件に関する迅速なガイダンス (電子メール/会議経由) を提供します。また、当社のチームがお客様の要件に応じて最適なソリューション/プランを選択するお手伝いをします。

こんにちは!

助けが必要? 私たちはここにいます!

サポート
miniOrange サポートにお問い合わせください
成功

お問い合わせありがとうございます。

24 時間以内に当社からのご連絡がない場合は、お気軽にフォローアップ メールを送信してください。 info@xecurify.com