の検索結果 :

×

会員登録 お問い合わせ

PingFederate を IDP として使用して ASP.NET Core SAML SSO を構成するためのガイド

ASP.NET Core SAML シングル サインオン (SSO) ミドルウェア を有効にする能力を与えます SAML シングル サインオン ASP.NET Coreアプリケーションにシングルサインオンを使用すると、1つのパスワードだけでアクセスできます。 ASP.NET コアアプリケーション およびサービス。当社のミドルウェアは、すべての SAML準拠のIDプロバイダーここでは、シングルサインオン(SSO)を設定するための手順を段階的に説明します。 ASP.NETコア および Pingフェデレート 考えると Pingフェデレート IdP として。

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


NuGetパッケージ
.NET CLI

PM> NuGet\Install-Package miniOrange.SAML.SSO


注意: アプリケーションに miniOrange ASP.NET SAML SSO ミドルウェアを統合するには、以下の名前空間、サービス、ミドルウェアをプロジェクトに追加する必要があります。以下は参考用のサンプル実装です。

  using miniOrange.saml;
  using System.Reflection
  var builder=WebApplication.CreateBuilder(args);

  // Add services to the container.
  builder.Services.AddRazorPages();
  builder.Services.AddminiOrangeServices(Assembly.GetExecutingAssembly());

  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();

  #if NET9_0_OR_GREATER
  app.MapStaticAssets();
  #else
  app.UseStaticFiles();
  #endif

  app.UseminiOrangeSAMLSSOMiddleware();
  app.Run();
NuGet パッケージ
.NET CLI

PM> NuGet\Install-Package miniOrange.SAML.SSO


注意: アプリケーションに miniOrange ASP.NET SAML SSO ミドルウェアを統合するには、以下の名前空間、サービス、ミドルウェアをプロジェクトに追加する必要があります。以下はサンプルです。

  using miniOrange.saml;
  using System.Reflection;

  public class Startup
  {

    public Startup(IConfiguration configuration)
    {
      Configuration = configuration;
    }
    public IConfiguration Configuration { get; }

    // This method gets called by the runtime. Use this method to add services to the container.
    public void ConfigureServices(IServiceCollection services)
    {
      services.AddRazorPages();
      services.AddminiOrangeServices(Assembly.GetExecutingAssembly());
    }

    // This method gets called by the runtime. Use this method to configure the HTTP request pipeline.
    public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
    {
      if (env.IsDevelopment())
      {
        app.UseDeveloperExceptionPage();
      }
      else
      {
        app.UseExceptionHandler("/Error");
        // The default HSTS value is 30 days. You may want to change this for production scenarios, see         https://aka.ms/aspnetcore-hsts.
        app.UseHsts();
      }

      app.UseHttpsRedirection();

      app.UseCookiePolicy();
      app.UseAuthentication();

      #if NET9_0_OR_GREATER
      app.MapStaticAssets();
      #else
      app.UseStaticFiles();
      #endif

      app.UseminiOrangeSAMLSSOMiddleware();

      app.UseRouting();
      app.UseAuthorization();
      app.UseEndpoints(endpoints =>
      {
        endpoints.MapRazorPages();
      });
    }
  }

PingFederate を ID プロバイダーとして使用する ASP.NET Core SAML SSO のステップ バイ ステップ ガイド。


  • 統合後、ブラウザを開き、以下の URL でコネクタ ダッシュボードを参照します。
 http(s)<your-dotnet-application-base-url>?ssoaction=config
  • 登録ページまたはログイン ページがポップアップ表示されたら、アプリケーションに miniOrange SAML SSO ミドルウェアが正常に追加されています。
ASP.NET Core 登録ページ

  • をクリックしてアカウントに登録またはログインします。 会員登録する ボタンをクリックしてミドルウェアを設定します。
  • 登録が完了すると、登録したメールアドレスに試用ライセンス キーが送信されます。
  • ミドルウェアをアクティブ化するには、次のいずれかを実行します。
    • 入力する ライセンスキー 指定された入力フィールドに電子メールで受信されます。

    OR

    • ダウンロードしたライセンスファイルをアップロードするには、 詳細
ASP.NET ミドルウェア 試用ライセンスの確認

  • 次に、「上記の条件を読み、ミドルウェアを有効化します」のボックスにチェックを入れ、 ライセンス認証
ASP.NET ミドルウェア ライセンスの有効化

以下に、SAML SP メタデータを取得して ID プロバイダー側​​で構成する方法が 2 つあります。

A] SAMLメタデータURLまたはメタデータファイルを使用する

  • プラグイン設定メニュー、 探す サービスプロバイダーの設定。 その下に、メタデータ URL と SAML メタデータをダウンロードするオプションがあります。
  • メタデータ URL をコピーするか、メタデータ ファイルをダウンロードして、ID プロバイダー側​​で同じものを構成します。
  • 以下のスクリーンショットを参照してください。
ASP.NET Core - サービスプロバイダーメタデータ

B] メタデータを手動でアップロードする

  • ノーザンダイバー社の サービスプロバイダーの設定 セクションでは、サービスプロバイダのメタデータを手動でコピーすることができます。 SP エンティティ ID、ACS URL、シングル ログアウト URL そして、それを構成のためにアイデンティティプロバイダーと共有します。
  • 以下のスクリーンショットを参照してください。
ASP.NET Core - spデータを手動で入力する
  • Ping Federate User Admin ダッシュボードにログインします。
  • 以下を行うには、 ID プロバイダー 左側のナビゲーション メニューにあります。
  • SP接続 新規作成
Ping フェデレート ユーザー管理ダッシュボード

  • まず ブラウザの SSO プロファイル の接続テンプレート 接続タイプ タブをクリックして 次へ.
ブラウザの SSO プロファイル

  • でブラウザ SSO を選択します。 接続オプション タブをクリックして「次へ」をクリックします。
PingFederate - 接続オプション

  • 選択する File メタデータをインポートする方法として「ファイルを選択」をクリックし、miniOrange SSOプラグインのメタデータを選択します。 メタデータのインポート タブ。 クリック 次へ.
PingFederate - メタデータのインポート

  • の情報を確認します。 メタデータの概要 タブをクリックして 次へ.
  • 一般的な情報 タブで サービスプロバイダーのエンティティID, 接続名, Base URL フィールドはメタデータに基づいて事前に設定されます。 クリック 次へ.
  • に移動します ブラウザSSO タブをクリックして ブラウザのSSOを構成する。 ブラウザ SSO セットアップ ウィザードにリダイレクトされます。
    • まず IdP によって開始される SSO および SP によって開始される SSO のオプション SAMLプロファイル タブをクリックして 次へ.
    SP と IDP による SSO の開始

    • 希望するアサーション有効時間を入力します。 アサーションの存続期間 タブをクリックして「次へ」をクリックします。デフォルトでは、どちらも5分に設定されています。
    • アサーション作成に移動し、「アサーション作成の構成」をクリックします。 アサーション作成セットアップ ウィザードにリダイレクトされます。
      • 「アイデンティティ・マッピング」タブで「標準」を選択し、「次へ」をクリックします。
      • SAML_SUBJECT のサブジェクト名の形式を選択します。 属性契約 タブをクリックして「次へ」をクリックします。
      • 詳しくはこちら 新しいアダプター インスタンスをマップする 認証ソースのマッピング.
      新しいアダプター インスタンスをマップする

      • 選択する アダプターインスタンス をクリックし 次へ。 アダプターにはユーザーの電子メール アドレスが含まれている必要があります。
      アダプターインスタンス

      • まず SAML アサーションではアダプター コントラクト値のみを使用します。 オプション マッピング方法 タブをクリックして 次へ.
      • アダプタ インスタンスを ソース そして電子メールは 属性契約の履行 タブをクリックして 次へ.
      属性契約の履行

      • (オプション) 必要な認可条件を選択します。 発行基準 タブをクリックして 次へ.
      • 詳しくはこちら クリックします 製品概要.
      • 詳しくはこちら 次へ 認証ソースのマッピング タブには何も表示されないことに注意してください。
      • 詳しくはこちら クリックします [概要] タブで。
      • 詳しくはこちら 次へ アサーションの作成.
  • ブラウザ SSO ウィザードの [プロトコル設定] タブに移動し、[プロトコル設定の構成] をクリックします。
    • 投稿を選択してください バインディング シングルサインオンを指定します エンドポイント URL の「エンドポイント URL」フィールドに、 アサーション コンシューマ サービス URL 詳しくはこちら 次へ.
    アサーション コンシューマ サービス URL

    • 選択する POST 許可される SAML バインディング タブをクリックして 次へ.
    • アサーションに必要な署名ポリシーを選択します。 署名ポリシー タブをクリックして 次へ.
    署名ポリシー

    • アサーションに必要な暗号化ポリシーを選択します。 暗号化ポリシー タブをクリックして 次へ.
    • 詳しくはこちら クリックします プロトコル設定の概要 タブには何も表示されないことに注意してください。
  • に移動します Credentials とをクリックしてください 資格情報の構成。 にリダイレクトされます Credentials セットアップウィザード。
    • シングルサインオンサービスで使用する署名証明書を選択し、署名要素に証明書を含めるを選択します。 デジタル署名の設定 タブ。[完了]をクリックします。
    デジタル署名の設定

    • 詳しくはこちら クリックします 製品概要.
    • 詳しくはこちら 次へ Credentials .
  • 選択する 有効 接続状態 アクティベーションと概要 タブをクリックして Save.
  • 次に、Ping Federate User Admin ダッシュボードの Identity Provider に移動します。
  • 詳しくはこちら すべてを管理SP接続.
  • 詳しくはこちら メタデータのエクスポート 必要なサービスプロバイダー接続に対応します。
  • 詳しくはこちら エクスポート エクスポートとサマリー タブをクリックして、「完了」をクリックします。

  • 以下を行うには、 新しい IDP を追加 新しい ID プロバイダーを構成するためのボタン。
Azure AD を IDP として使用する ASP.NET Core SAML SSO - 新しい IDP の追加

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

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

A] [IDP メタデータのアップロード] ボタンを使用してメタデータをアップロードします。

  • ID プロバイダーからメタデータ URL またはメタデータ ファイル (.xml 形式のみ) が提供されている場合は、 IDPメタデータのアップロード オプションを選択します。
  • メタデータ URL をコピーするか、メタデータ ファイルをダウンロードして、ID プロバイダー側​​で同じものを構成します。
  • 以下のスクリーンショットを参照してください。
ASP.NET Core - IDP メタデータのアップロード

  • 使用可能なメタデータ形式に応じて、オプションのいずれかを選択できます。

B] ID プロバイダーのメタデータを手動で構成します。

  • を構成した後 ID プロバイダー、それはあなたに提供します IDPエンティティID、IDPシングルサインオンURL および SAML X509証明書 それぞれフィールド。
  • 詳しくはこちら Save IDP の詳細を保存します。
ASP.NET Core - IDP を手動で構成する
  • メタデータの詳細をアップロードした後、 ID プロバイダーの設定 セクション。 アクションの選択 ドロップダウンをクリックして テスト構成.
ASP.NET Core - テスト構成

  • 以下のスクリーンショットは、成功した結果を示しています。 クリック SSO統合 SSO 統合をさらに続行します。
ASP.NET Core - テスト構成

  • ミドルウェア側でエラーが発生した場合は、以下のようなウィンドウが表示されます。
ASP.NET Core - テスト構成エラー

  • エラーのトラブルシューティングを行うには、次の手順に従います。
  • 解決します タブで、プラグイン ログを受信するためのトグルを有効にします。
ASP.NET Core - トラブルシューティング

  • 有効にすると、次の場所に移動してプラグイン ログを取得できるようになります。 プラグインの設定 タブをクリックしてクリックします テスト構成.
  • ダウンロード ログファイル 解決します タブをクリックして、何が問題だったかを確認してください。
  • あなたは共有することができます ログファイル 私たちと一緒に aspnetsupport@xecurify.com 私たちのチームが問題を解決するためにご連絡いたします。
  • 構成をテストした後、アプリケーション属性をアイデンティティ プロバイダー (IdP) 属性にマップします。
  • miniOrange ASP.NET SAML SSOミドルウェアの左側のメニューから、 属性/役割のマッピング 画像に示すようにタブをクリックします。
ASP.NET Core - 属性マッピング

  • IdPから追加の属性を渡したい場合は、属性名と対応する属性値を入力します。 カスタム属性マッピング.
  • 注意: マップされたすべての属性はセッションに保存されるため、アプリケーションでアクセスできるようになります。
  • 属性がマッピングされたら、 属性マッピングの保存 変更を適用します。
ASP.NET Core - 属性マッピング
  • この手順により、アプリケーション内の SSO ユーザー情報をユーザー クレームの形式で取得できます。
  • 見ることもできます セットアップツアー SSO 統合が asp.net ミドルウェア アプリケーションでどのように機能するかを理解します。
  • ユーザー属性にアクセスしたい場所に、そのコード スニペットをコピーして貼り付けるだけです。
ASP.NET Core - 統合コード

  • 注意: トライアル版ミドルウェアでは、認証されたユーザー情報はデフォルトの.NET Cookie認証を使用してユーザークレームに保存されます。プレミアムプラグインでは、ヘッダーベース、セッションベース、JWTベースの認証を使用したユーザークレームの設定がサポートされています。
  • 以下から統合コードをコピーすることもできます。

  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;
  }

  • ホバーオン アクションの選択 をクリックします。入力したコードが正しければ、MFAの設定は正常に完了します SSO リンクをコピーします。
ASP.NET Core SSO リンクのコピー

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

 ご返答ありがとうございます。 すぐにご連絡させていただきます。

何か問題が発生しました。 もう一度質問を送信してください

できるだけ早くご連絡いたします!


ADFS_sso ×
こんにちは!

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

対応