.NET ヘルプ

IdentityServer .NET (開発者のための仕組み)

更新済み 8月 13, 2024
共有:

イントロダクション

今日のソフトウェア・アーキテクチャにおいて、セキュリティは極めて重要である。 を置くためのトップ・フレームワークとして オープンID コネクトとOAuth 2.0の実践、 IDENTITYSERVER4 は、分散したネットワークにおける中央集中型の認証と認可のための信頼できるオプションを提供する。 開発者がペアを組む場合 IronPDFPDF生成のための強力なC#ライブラリと、セキュアなID管理の2つを組み合わせれば、さまざまなアプリケーション要件を満たすPDF文書を簡単に作成できる。

IdentityServer4は、ID管理のインストールを容易にするモジュール式の標準ベースのソリューションを提供する。 IdentityServer4があれば、開発者はさまざまなサービスやアプリのユーザー認証、アクセス、トークンの検証・発行、権限検証を行う一元化されたIDプロバイダを作成することができます。IdentityServer4は、ユーザー名/パスワード、ソーシャルログイン、多要素認証など多くの認証方法をサポートするため、開発者は安全で直感的な認証エクスペリエンスを作成できます。

このチュートリアルでは、C#による IDENTITYSERVER4 と一緒に IronPDFIdentityServer4を使って認可と認証のためのセキュアなプロセスを作成する方法と、作成されたユーザーIDを使ってIronPDFのPDFドキュメント作成をカスタマイズする方法を紹介します。 IdentityServer4を一元化されたIDおよび認証プロバイダーとして設定する方法から、IronPDFを統合してダイナミックPDFを作成する方法まで、C#アプリケーションのセキュリティと機能を向上させる方法について説明します。

IdentityServer4 c#とは何ですか?

というよく知られたオープンソースのフレームワークがある。 IDENTITYSERVER4 は、.NET および C# アプリケーションで使用され、ID 管理、認可、認証を実行する。 OpenID ConnectやOAuth 2.0のような最新のセキュリティ・プロトコルに準拠しているため、ウェブ・アプリケーション、API、マイクロサービスを保護するための柔軟なソリューションである。

IdentityServer4は、基本的に集中型認証サーバーとして機能し、ユーザー識別と許可管理のコア・アイデンティティ、有効なアクセストークンの発行、およびクレデンシャルの検証を処理する。 プログラマーは、統合認証とシングルサインオンを統合することができる。 (SSO) を複数のアプリケーションやサービスに組み込むことで、安全でスムーズなエンドユーザー・エクスペリエンスを実現している。

IdentityServer .NET (開発者のための仕組み):図 1 - IdentityServer4: .NET Core Identity の使用

IdentityServer4の特徴

SSO(シングルサインオン

認証情報を再入力することなく、ユーザーは1回の認証で異なるアプリケーションやサービスにアクセスできる。

OpenID ConnectとOAuth 2.0のサポート

幅広いクライアントアプリケーションとプラットフォームとの互換性を提供し、サポートするために、IdentityServer4 は安全な認証と承認のための業界標準プロトコルを提供している。

適応可能なセットアップ

開発者は、認証と許可ポリシーの構成方法を細かく制御できるため、特定のアプリケーション要件に合わせてセキュリティ設定をカスタマイズできる。

.NET Coreとの接続性

IdentityServer4 のフレームワークとのスムーズな統合により、ASP.NET Core Web アプリや API の認証は簡単に実装できます。

パーソナライゼーションと適応性

フレームワークは拡張性とカスタマイズ性に優れているため、開発者は必要に応じて新しいユーザー・ストア、IDプロバイダー、テスト・ユーザー、認証ワークフローを追加することができる。

ユーザー検証

IdentityServer4 は、Web アプリケーションの要件に最適な認証メカニズム構成を柔軟に選択できる。 これらの仕組みには、ユーザー名/パスワード、ソーシャル・ログインが含まれる。 (グーグルやフェイスブックなどのように。)および外部 ID プロバイダ (Active DirectoryやAzure ADなど。).

認可に関する方針

認可されたユーザのみが特定のリソースにアクセスしたり、アプリケーション内で特定のアクションを実行できることを保証するために、開発者はユーザのロール、クレーム、またはその他の基準に基づいて、きめ細かい認可ポリシーを構築することができます。

トークンの管理

アクセストークン、トークンリフレッシュトークン、ID トークンはすべて IdentityServer4 によって管理され、ID サーバーによって保護されているリソースへのアクセス許可とユーザー認証の安全な方法を提供する。

作成と設定

Visual Studio* の C# プロジェクトで IdentityServer4 を設定するには、以下の手順を実行する 必要がある:

Visual Studioで新しいプロジェクトを作成

Visual Studioアプリケーションを起動したら、"Create a new project "オプションを選択するか、File menu > Add > "New project "を選択します。 次に、「Asp.NET core Web App」を選択します。 (モデル-ビュー-コントローラ)新規プロジェクト "を選択した後、"新規プロジェクト "を選択する。 このチュートリアルでは、このアプリケーションを使ってPDF文書を作成します。

"Newプロジェクト"オプションを選択します。 次に、.NET Core Web App"を選択します;" />

ファイルパスを選択し、対応するテキストボックスにプロジェクト名を入力します。 次に、以下のスクリーンショットのように、Createボタンをクリックして必要な.NET Frameworkを選択します。

IdentityServer .NET (開発者向けの仕組み):図3 - 次に、プロジェクト名と場所を指定してプロジェクトを構成します。 [次へ]をクリック。

次に、どのフレームワークが必要かを決め、作成ボタンを押す。

IdentityServer .NET (開発者向けの仕組み):図4 - フレームワーク、認証タイプなどの追加情報を指定し、HTTPを構成するかどうかを選択し、Dockerを有効にする。 次に「作成」をクリックする。

選択したアプリケーションの構造は、Visual Studioプロジェクトによって生成されます。 この例ではASP.NET MVCを使用しています。 コードを記述するために、新しいコントローラーを作成するか、すでに存在するコントローラーを利用することができる。

IdentityServer .NET (開発者向けの仕組み):図5 - ASP.NET Core Webアプリ (MVC) プロジェクトの作成に成功した。

コードをテストするには、ライブラリを追加すればいい。

IdentityServer4パッケージのインストール

.NET CLI または Visual Studio* の NuGet Package Manager を使用して、IdentityServer4 パッケージをプロジェクトに追加する。 パッケージマネージャーコンソールまたはターミナルを使用して、以下のコマンドを入力し、最新バージョンのパッケージをインストールします:

Install-Package IdentityServer4
Install-Package IdentityServer4
IRON VB CONVERTER ERROR developers@ironsoftware.com
VB   C#

.NET CoreプロジェクトでIdentityServer4を構成する

ASP.NET Core アプリケーションで、必要な認証ミドルウェアとサービスを Startup.cs ファイルに追加して、IdentityServer4 を構成する。IdentityServer4 を設定する入門的なコード例をここに示す:

using Microsoft.AspNetCore.Builder;
using Microsoft.AspNetCore.Hosting;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Hosting;
public class Startup
{
    public void ConfigureServices(IServiceCollection services)
    {
        services.AddIdentityServer()
            .AddInMemoryClients(Config.Clients)
            .AddInMemoryIdentityResources(Config.IdentityResources)
            .AddInMemoryApiScopes(Config.ApiScopes)
            .AddInMemoryApiResources(Config.ApiResources)
            .AddTestUsers(Config.Users);
    }
    public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
    {
        if (env.IsDevelopment())
        {
            app.UseDeveloperExceptionPage();
        }
        app.UseIdentityServer();
    }
}
using Microsoft.AspNetCore.Builder;
using Microsoft.AspNetCore.Hosting;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Hosting;
public class Startup
{
    public void ConfigureServices(IServiceCollection services)
    {
        services.AddIdentityServer()
            .AddInMemoryClients(Config.Clients)
            .AddInMemoryIdentityResources(Config.IdentityResources)
            .AddInMemoryApiScopes(Config.ApiScopes)
            .AddInMemoryApiResources(Config.ApiResources)
            .AddTestUsers(Config.Users);
    }
    public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
    {
        if (env.IsDevelopment())
        {
            app.UseDeveloperExceptionPage();
        }
        app.UseIdentityServer();
    }
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
VB   C#

クライアント、ID リソース、API リソースの構成

クライアント、IDリソースの設定 (スコープ)IdentityServer4 には、設定、データベース、API リソースが必要である。これらの設定は、Config.cs のような別のクラスで定義することができる:

public class Config
{
    public static IEnumerable<Client> Clients { get; set; }
    public static IEnumerable<IdentityResource> IdentityResources { get; set; }
    public static IEnumerable<ApiScope> ApiScopes { get; set; }
    public static IEnumerable<ApiResource> ApiResources { get; set; }
    public static List<TestUser> Users { get; set; }
}
public class Config
{
    public static IEnumerable<Client> Clients { get; set; }
    public static IEnumerable<IdentityResource> IdentityResources { get; set; }
    public static IEnumerable<ApiScope> ApiScopes { get; set; }
    public static IEnumerable<ApiResource> ApiResources { get; set; }
    public static List<TestUser> Users { get; set; }
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
VB   C#

以下の手順に従い、C# プロジェクトで IdentityServer4 を作成および構成することで、ASP.NET Core アプリで安全な認証および認可を有効にできます。

IronPDFでIdentityServer4を始める

を設定する手順を説明します。 IDENTITYSERVER4 安全な認証・認可コードと IronPDF C# プロジェクトで PDF 文書を作成します。 この指示に従って、基本的なセットアップに基づいたプロジェクトの作成方法を学びます。

IronPDFとは何ですか?

.NET アプリケーション用、 IronPDF は、PDF文書を操作するための機能豊富なライブラリです。 その豊富な機能セットにより、ユーザーはPDFをゼロから作成したり、HTMLコンテンツから作成したり、既存のPDF文書にセクションを追加したり、削除したり、並べ替えたりすることができます。 IronPDFは開発者にPDFファイルの生成、変更、変換のための堅牢なAPIを提供し、.NETアプリケーションでPDFを扱うことを簡素化します。

IdentityServer .NET (開発者のための仕組み):図6 - IronPDF for .NET:C# PDFライブラリ

IronPDFの主な機能

HTMLからPDFへの変換

IronPDFを使えば、以下のような優れた品質のPDF文書を作成することができます。 HTMLコンテンツの使用JavaScriptとCSSを含む。 この機能は、ウェブサイトや動的な情報からPDFを作成するときに便利です。

**PDFの変更と改善

IronPDFでは、 PDF文書の変更 がすでに存在する。多くのPDFを1つの文書にまとめたり、PDFからページを抽出したり、テキスト、写真、透かし、コメントを追加したりすることができます。

すぐにPDFを作成する

IronPDFのAPIを使えば、新しく作成されたPDFドキュメントにテキスト、写真、図形、その他のオブジェクトをプログラムで追加することができます。 これにより、PDFの請求書や報告書、その他の文書ベースの出力を動的に生成することが可能になります。

PDFのセキュリティ

以下の方法でアクセスを管理し、重要なデータを保護することができます。 PDF文書の暗号化 IronPDFと パスワード・セキュリティの追加.

PDFフォーム

IronPDFを使えば、ユーザーはPDFドキュメントを作成、記入、操作することができます。 PDFフォームの送信また、フォームフィールドにデータを入力することもできる。

テキスト

IronPDFは、テキストデータの操作、分析、検索を支援するツールです。 テキスト情報の抽出 PDFドキュメントから。

画像フォーマットへの変換

IronPDFはPDFをPNG、JPEG、BMPなどの一般的な画像フォーマットに変換できるので、PDFの代わりに写真が必要な場合に便利です。

IronPDF をインストール

.NET CLIまたはNuGet Package Managerを使用して、最新バージョンの IronPDF を今すぐプロジェクトに追加してください。

dotnet add package IronPdf
dotnet add package IronPdf
'INSTANT VB TODO TASK: The following line uses invalid syntax:
'dotnet add package IronPdf
VB   C#

IdentityServer4とIronPDFの統合 C#num;

上記のコードと同様に、Startup.cs ファイルで IdentityServer4 に必要なサービスとミドル ウェアを設定する。 次にPdfController.csという新しいMVCコントローラーを作成し、IronPDFを使用してPDF生成を処理します。

using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Mvc;
using IronPdf;
using System.Threading.Tasks;
[Authorize]
public class PdfController : Controller
{
    public async Task<IActionResult> GeneratePdf()
    {
        // Create IronPDF Renderer
        var Renderer = new IronPdf.ChromePdfRenderer();
        // HTML content to be converted to PDF
        string htmlContent = "<h1>Hello, IronPDF!</h1><p>This is a generated PDF document.</p>";
        // Convert HTML to PDF asynchronously
        var pdfDocument = await Task.Run(() => Renderer.RenderHtmlAsPdf(htmlContent));
        // Return the PDF as a file
        return File(pdfDocument.BinaryData, "application/pdf", "example.pdf");
    }
}
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Mvc;
using IronPdf;
using System.Threading.Tasks;
[Authorize]
public class PdfController : Controller
{
    public async Task<IActionResult> GeneratePdf()
    {
        // Create IronPDF Renderer
        var Renderer = new IronPdf.ChromePdfRenderer();
        // HTML content to be converted to PDF
        string htmlContent = "<h1>Hello, IronPDF!</h1><p>This is a generated PDF document.</p>";
        // Convert HTML to PDF asynchronously
        var pdfDocument = await Task.Run(() => Renderer.RenderHtmlAsPdf(htmlContent));
        // Return the PDF as a file
        return File(pdfDocument.BinaryData, "application/pdf", "example.pdf");
    }
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
VB   C#

IdentityServer4を使ってセキュアなユーザー認証と認可を設定し、IronPDFを使って認証されたユーザーのみがアクセスできるPDFドキュメントを作成する。 提供されたコード例では、Startup.cs ファイルで IdentityServer4 が構成され、メモリ内構成によってユー ザー ID 管理を処理し、クライアント資格情報を処理している。

で保護されているため、許可されたユーザーのみが PdfController の操作にアクセスできます。 [認証] 属性を持つ。 このコントローラは非同期メソッドを使用して、IronPDFライブラリを使用してHTML情報をPDF形式にレンダリングします。 PDF生成プロセスの手順は次のとおりです:ChromePdfRendererレンダラーを構築する; 変換 HTMLテキスト をPDF文書に変換します; を送信し、PDFをファイル・レスポンスとして送り返す。

強力なセキュリティとダイナミックな文書生成機能を組み合わせるために、統合は、IdentityServer4によって検証されたユーザーのみがPDF作成を開始できることを保証する、セキュリティで保護されたエンドポイント内にPDF生成ロジックを組み込む。 この方法は、IdentityServer4 を介して厳重なアクセス制御を実施しながら、請求書、レポート、 ユーザ固有の情報に基づくカスタマイズされたコンテンツの作成など、ドキュメントを安全に 扱う必要があるアプリケーションで特に効果的である。

IdentityServer .NET (開発者のための仕組み):図7-IdentityServer4によって提供される安全なユーザー認証と承認でIronPDFを使用して生成された出力PDF。

結論

まとめると、次のようなことだ。 IDENTITYSERVER4 と一緒に IronPDF C#プロジェクトでは、強力なセキュリティとダイナミックPDF作成機能をうまく融合させています。 複数のアプリケーションやサービスにまたがるユーザー ID とアクセス制御を管理する単一で標準化された方法を提供することで、IDServer4 は安全なユーザー認証と認可を保証します。 IronPDF**を使用することで、開発者は認証されたユーザーデータに基づいて、認証されたユーザーのみがアクセスできる優れた品質のPDF文書を作成することができます。

この統合により、アプリケーションのセキュリティと機能性が向上し、安全な文書処理が求められる請求書、レポート、パーソナライズされたコンテンツの作成などのシナリオに最適です。 すべてのことを考慮すると IDENTITYSERVER4 以下のコンテンツを日本語に翻訳してください: IronPDF は、.NET Framework内で安全かつ効果的で、ユーザー重視のアプリを作成するための強力な選択肢を提供する。

いつ IronPDF 以下のコンテンツを日本語に翻訳してください: IronSoftware テクノロジーをエンタープライズアプリケーション開発スタックに統合することで、IronPDFは豊富な機能を開発者に提供することができます。 ドキュメント 顧客とエンドユーザー向けのプレミアムソフトウェアソリューション。 この強固な基盤があれば、プロジェクトやバックエンドシステム、プロセス強化も容易になる。

IronPDF.NETのAPI製品9種類を組み合わせたものです。 ライセンス価格 わずか2!

これらの技術は、豊富なドキュメント、活発なオンライン開発者コミュニティ、定期的なアップグレードがあるため、最新のソフトウェア開発プロジェクトに最適な選択肢である。

< 以前
OData C# (開発者のための仕組み)
次へ >
Flurl C# (開発者のための仕組み)

準備はできましたか? バージョン: 2024.9 新発売

無料のNuGetダウンロード 総ダウンロード数: 10,659,073 View Licenses >