の検索結果 :

×

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


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

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

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


PM> NuGet\Install-Package miniOrange.SAML.SSO.Middleware - バージョン 5.0.2
      
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();

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

1. ASP.NET Coreアプリケーションにモジュールを追加します

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

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

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

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

A] SAML メタデータ URL またはメタデータ ファイルを使用する:
  • プラグイン設定メニュー、 探す サービスプロバイダーの設定。 その下に、メタデータ URL と SAML メタデータをダウンロードするオプションがあります。
  • メタデータ URL をコピーするか、メタデータ ファイルをダウンロードして、アイデンティティ プロバイダー側​​で同じ設定を行います。
  • 以下のスクリーンショットを参照してください。
  • PingFederate を IDP として使用する ASP.NET Core SAML シングル サインオン (SSO) - ダウンロードされたメタデータのコピー
B] メタデータを手動でアップロードする:
  • ノーザンダイバー社の サービスプロバイダーの設定 セクションでは、次のようなサービス プロバイダーのメタデータを手動でコピーできます。 SP エンティティ ID、ACS URL、シングル ログアウト URL そして、それを構成のためにアイデンティティプロバイダーと共有します。
  • 以下のスクリーンショットを参照してください。
  • PingFederate を IDP として使用する ASP.NET Core SAML シングル サインオン (SSO) - 手動メタデータ
  • Ping Federate User Admin ダッシュボードにログインします。
  • セットアップボタンをクリックすると、セットアップが開始されます ID プロバイダー 左側のナビゲーションメニューにあります。
  • SP接続 新規作成
  • PingFederate を IDP として使用する ASP.NET Core SAML シングル サインオン (SSO) - SP 接続
  • 現在地に最も近い ブラウザの SSO プロファイル の接続テンプレート 接続タイプ タブをクリックして Next.
  • PingFederate を IDP として使用する ASP.NET Core SAML シングル サインオン (SSO) - ブラウザー SSO プロファイル
  • でブラウザ SSO を選択します。 接続オプション タブをクリックして Next.
  • PingFederate を IDP として使用する ASP.NET Core SAML シングル サインオン (SSO) - 接続オプション
  • 選択 File メタデータをインポートする方法として選択し、 選択する ファイルを使用して、miniOrange SSO プラグインのメタデータを選択します。 メタデータのインポート タブ。 クリック Next.
  • PingFederate を IDP として使用する ASP.NET Core SAML シングル サインオン (SSO) - メタデータのインポート
  • の情報を確認します。 メタデータの概要 タブをクリックして Next.
  • 「一般情報」タブ を確認してください サービスプロバイダーのエンティティID、接続名, ベースURL フィールドはメタデータに基づいて事前に設定されます。 クリック Next.
  • に移動します ブラウザSSO タブをクリックして ブラウザのSSOを構成する。 ブラウザ SSO セットアップ ウィザードにリダイレクトされます。
    • 現在地に最も近い IdP によって開始される SSO & SP によって開始される SSO のオプション SAMLプロファイル タブをクリックして Next.
    • PingFederate を IDP として使用する ASP.NET Core SAML シングル サインオン (SSO) - SAML プロファイル
    • 希望するアサーション有効時間を入力します。 アサーションの存続期間 タブをクリックして Next。 デフォルトでは設定されています 5 両方とも数分。
    • アサーション作成に移動し、「アサーション作成の構成」をクリックします。 アサーション作成セットアップ ウィザードにリダイレクトされます。
      • 「アイデンティティ・マッピング」タブで「標準」を選択し、「次へ」をクリックします。
      • SAML_SUBJECT のサブジェクト名の形式を選択します。 属性契約 タブをクリックして「次へ」をクリックします。
      • 認証ソース マッピングで [新しいアダプター インスタンスのマッピング] をクリックします。
      • PingFederate を IDP として使用する ASP.NET Core SAML シングル サインオン (SSO) - 認証ソース マッピング
      • 選択する アダプターインスタンス をクリックし Next。 アダプターにはユーザーの電子メール アドレスが含まれている必要があります。
      • PingFederate を IDP として使用する ASP.NET Core SAML シングル サインオン (SSO) - アダプター インスタンス
      • 現在地に最も近い SAML アサーションではアダプター コントラクト値のみを使用します。 オプション マッピング方法 タブをクリックして Next.
      • アダプタ インスタンスを ソース そして電子メールは 属性契約の履行 タブをクリックして Next.
      • PingFederate を IDP として使用する ASP.NET Core SAML シングル サインオン (SSO) - マッピング方法
      • (オプション) 必要な認可条件を選択します。 発行基準 タブをクリックして Next.
      • クリック クリックします まとめ.
      • クリック Next 認証ソースのマッピング タブには何も表示されないことに注意してください。
      • クリック クリックします [概要] タブで。
      • クリック Next アサーションの作成
  • ブラウザ SSO ウィザードの [プロトコル設定] タブに移動し、[プロトコル設定の構成] をクリックします。
    • 投稿を選択してください バインディング シングルサインオンを指定します エンドポイント URL の「エンドポイント URL」フィールドに、 アサーション コンシューマ サービス URL クリック Next.
    • PingFederate を IDP として使用する ASP.NET Core SAML シングル サインオン (SSO) - ブラウザー SSO ウィザード
    • 選択 POST 許可される SAML バインディング タブをクリックして Next.
    • アサーションに必要な署名ポリシーを選択します。 署名ポリシー タブをクリックして Next.
    • PingFederate を IDP として使用する ASP.NET Core SAML シングル サインオン (SSO) - 署名ポリシー
    • アサーションに必要な暗号化ポリシーを選択します。 暗号化ポリシー タブをクリックして Next.
    • クリック クリックします プロトコル設定の概要 タブには何も表示されないことに注意してください。
  • に移動します Credentials とをクリックしてください 資格情報の構成。 にリダイレクトされます Credentials セットアップウィザード。
    • シングル サインオン サービスで使用する署名証明書を選択し、[デジタル署名設定] タブの [署名要素に証明書を含める] を選択します。 「完了」をクリックします。
    • PingFederate を IDP として使用する ASP.NET Core SAML シングル サインオン (SSO) - 署名証明書
    • クリック クリックします まとめ.
    • クリック Next Credentials .
  • 選択 アクティブ 接続状態 アクティベーションと概要 タブをクリックして Save.
  • 次に、[Ping フェデレート ユーザー管理] ダッシュボード、[ID プロバイダー] に移動します。
  • クリック すべてを管理 SP接続.
  • クリック メタデータのエクスポート 必要なサービスプロバイダー接続に対応します。
  • クリック 輸出 エクスポートとサマリー タブをクリックして 完了しました。

3. ASP.NET SAML モジュールをサービス プロバイダーとして構成する

モジュール内で SAML ID プロバイダーのメタデータを構成できる XNUMX つの方法については、以下で詳しく説明します。

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

4. SAML SSO のテスト

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

5. 属性マッピング

  • 構成をテストした後、アプリケーション属性をアイデンティティ プロバイダー (IdP) 属性にマップします。
  • 注: マッピングされたすべての属性はセッションに保存されるため、アプリケーションでアクセスできるようになります。
  • PingFederate を 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>

7. ログイン設定

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