透かしなしで本番環境でテストしてください。
必要な場所で動作します。
30日間、完全に機能する製品をご利用いただけます。
数分で稼働させることができます。
製品トライアル期間中にサポートエンジニアリングチームへの完全アクセス
DotNetOpenAuth .NET Coreは、.NET Core向けに適応されたオリジナルのDotNetOpenAuthライブラリのバージョンであり、強力な公開APIを提供します。 このライブラリは、OAuth2およびOpenIDを使用して.NETアプリケーションに認証を追加するのに役立ちます。 IronPDFは、.NETでPDFファイルを作成、読み取り、および編集するためのライブラリです。 これは、.NETアプリケーションから直接レポートや請求書のようなドキュメントを生成するのに役立ちます。
DotNetOpenAuth .NET Core と IronPDF を使用して、共有コードを利用し、新しい機能を実装するために、ウェブやデスクトップアプリケーションなどのさまざまな種類のプロジェクトに活用できます。 それらは、ソフトウェアにおける認証およびPDFドキュメント管理を扱う開発者にとって不可欠です。
Microsoft のテクノロジでサポートされている .NET プロジェクトで DotNetOpenAuth .NET Core の使用を開始するには、以下の手順に従ってください:
Visual Studioでプロジェクトを開きます。
ソリューションエクスプローラーに移動します。
プロジェクト名を右クリックします。
「NuGet パッケージの管理」を選択してください。
NuGetパッケージマネージャーで、DotNetOpenAuth.NetCore
およびその他のNuGetパッケージを検索してください。
Install
をクリックしてプロジェクトに追加します。
これにより、DotNetOpenAuth .NET Coreライブラリがプロジェクトに追加され、認証機能の統合がサポートされます。
以下は、DotNetOpenAuth .NET Coreを使用してアプリケーションにOAuth2認証を設定する方法を示す簡単な例です:
using DotNetOpenAuth.OAuth2;
// Initialize the OAuth2 client
var client = new WebServerClient(new AuthorizationServerDescription
{
TokenEndpoint = new Uri("https://your-auth-server.com/token"),
AuthorizationEndpoint = new Uri("https://your-auth-server.com/authorize")
}, "your-client-id", "your-client-secret");
// Start the authentication process
IAuthorizationState state = client.ProcessUserAuthorization();
if (state != null && state.IsAuthorized)
{
// Authorized successfully, now you can access protected resources
}
using DotNetOpenAuth.OAuth2;
// Initialize the OAuth2 client
var client = new WebServerClient(new AuthorizationServerDescription
{
TokenEndpoint = new Uri("https://your-auth-server.com/token"),
AuthorizationEndpoint = new Uri("https://your-auth-server.com/authorize")
}, "your-client-id", "your-client-secret");
// Start the authentication process
IAuthorizationState state = client.ProcessUserAuthorization();
if (state != null && state.IsAuthorized)
{
// Authorized successfully, now you can access protected resources
}
このコードスニペットは、DotNetOpenAuth .NET Coreを使用してOAuth2クライアントを設定し、認証サーバーに接続してユーザー認証を処理します。
DotNetOpenAuth .NET Coreを使用してOpenID Connectを統合するには、次の基本的なアプローチに従うことができます:
using DotNetOpenAuth.OAuth2;
// Configure the OpenID Connect client
var openIdClient = new WebServerClient(new AuthorizationServerDescription
{
TokenEndpoint = new Uri("https://your-openid-provider.com/token"),
AuthorizationEndpoint = new Uri("https://your-openid-provider.com/authorize")
}, "your-client-id");
// Redirect user for authentication
Uri authUri = openIdClient.GetAuthorizationRequestUri("openid email profile");
Response.Redirect(authUri.AbsoluteUri);
using DotNetOpenAuth.OAuth2;
// Configure the OpenID Connect client
var openIdClient = new WebServerClient(new AuthorizationServerDescription
{
TokenEndpoint = new Uri("https://your-openid-provider.com/token"),
AuthorizationEndpoint = new Uri("https://your-openid-provider.com/authorize")
}, "your-client-id");
// Redirect user for authentication
Uri authUri = openIdClient.GetAuthorizationRequestUri("openid email profile");
Response.Redirect(authUri.AbsoluteUri);
このコードはOpenID Connectクライアントを設定し、ユーザーをOpenIDプロバイダーの認証ページにリダイレクトします。
以下は、DotNetOpenAuth .NET Core でアクセス トークンを処理する方法です:
// After user is authenticated, process the authorization response
IAuthorizationState authState = openIdClient.ProcessUserAuthorization();
if (authState != null && authState.IsAuthorized)
{
// Access token is available, and you can use it to make authenticated requests
string accessToken = authState.AccessToken;
}
// After user is authenticated, process the authorization response
IAuthorizationState authState = openIdClient.ProcessUserAuthorization();
if (authState != null && authState.IsAuthorized)
{
// Access token is available, and you can use it to make authenticated requests
string accessToken = authState.AccessToken;
}
このスニペットは、ユーザー認証応答を処理し、アクセストークンを取得して使用します。
トークンが期限切れになった場合にリフレッシュするには、次のコードを使用してください:
// Check if the access token is expired and refresh it
if (authState.AccessTokenExpirationUtc <= DateTime.UtcNow)
{
if (openIdClient.RefreshAuthorization(authState))
{
// Token refreshed successfully
}
}
// Check if the access token is expired and refresh it
if (authState.AccessTokenExpirationUtc <= DateTime.UtcNow)
{
if (openIdClient.RefreshAuthorization(authState))
{
// Token refreshed successfully
}
}
このコードは現在のトークンが期限切れかどうかを確認し、リフレッシュを試みます。
トークンを取り消す必要がある場合は、以下のように実装してください:
// Revoke the access token
bool success = openIdClient.RevokeAuthorization(authState);
if (success)
{
// Token revoked successfully
}
// Revoke the access token
bool success = openIdClient.RevokeAuthorization(authState);
if (success)
{
// Token revoked successfully
}
このスニペットは認証を取り消し、アクセス トークンを無効にします。
特定のニーズに合わせてトークンリクエストをカスタマイズするには、追加のパラメーターを追加します:
// Customize the token request
var additionalParams = new Dictionary<string, string>
{
{"custom_parameter", "value"}
};
IAuthorizationState customizedState = openIdClient.ProcessUserAuthorization(additionalParams);
if (customizedState != null && customizedState.IsAuthorized)
{
// Token request customized and processed successfully
}
// Customize the token request
var additionalParams = new Dictionary<string, string>
{
{"custom_parameter", "value"}
};
IAuthorizationState customizedState = openIdClient.ProcessUserAuthorization(additionalParams);
if (customizedState != null && customizedState.IsAuthorized)
{
// Token request customized and processed successfully
}
このコードはトークンリクエストにカスタムパラメータを追加します。これは、認可サーバーの特定の要件に対処するのに役立ちます。
IronPDFは、開発者が.NET環境でPDFファイルを作成、読み取り、操作できる包括的なライブラリです。 HTMLから、またはURLから直接PDFを生成するのに特に役立ちます。これは、レポート作成、請求書の生成、またはウェブページを静的な形式で保存するのに最適です。 DotNetOpenAuth .NET Coreと統合すると、これらの機能が安全であり、認証されたユーザーのみにアクセス可能であることが保証されます。
IronPDFとDotNetOpenAuth .NET Coreを統合する実際的な使用例は、認証されたユーザーが個別化されたレポートを生成してダウンロードする必要があるWebアプリケーションです。 たとえば、ユーザーがアプリケーションにログインして、PDFとして自分の財務報告書にアクセスするシナリオを想像してください。 DotNetOpenAuthはユーザーが適切に認証および認可されて、彼らのドキュメントにアクセスできるようにし、一方でIronPDFがこれらのパーソナライズされたPDFの作成と配信を担当します。
これを実装する方法を示す完全なコード例を見てみましょう。 次に、.NET Coreでユーザーを認証し、その後IronPDFを使用してPDFレポートを生成するシンプルなWeb APIを作成します:
using IronPdf;
using Microsoft.AspNetCore.Mvc;
using Microsoft.AspNetCore.Authorization;
[Route("api/[controller]")]
[ApiController]
public class ReportController : ControllerBase
{
[Authorize]
[HttpGet("download-pdf")]
public IActionResult DownloadPdfReport()
{
// Authentication is handled by DotNetOpenAuth .NET Core
var currentUser = HttpContext.User.Identity.Name;
// Generate PDF content using IronPDF
var Renderer = new ChromePdfRenderer();
var PDF = Renderer.RenderHtmlAsPdf($"<h1>Report for {currentUser}</h1><p>This is your personalized financial report.</p>");
// Set file name and content type for the PDF
var outputFileName = $"Report-{currentUser}.pdf";
Response.Headers.Add("Content-Disposition", $"attachment; filename={outputFileName}");
Response.ContentType = "application/pdf";
// Return the generated PDF file
return File(PDF.Stream.ToArray(), "application/pdf");
}
}
using IronPdf;
using Microsoft.AspNetCore.Mvc;
using Microsoft.AspNetCore.Authorization;
[Route("api/[controller]")]
[ApiController]
public class ReportController : ControllerBase
{
[Authorize]
[HttpGet("download-pdf")]
public IActionResult DownloadPdfReport()
{
// Authentication is handled by DotNetOpenAuth .NET Core
var currentUser = HttpContext.User.Identity.Name;
// Generate PDF content using IronPDF
var Renderer = new ChromePdfRenderer();
var PDF = Renderer.RenderHtmlAsPdf($"<h1>Report for {currentUser}</h1><p>This is your personalized financial report.</p>");
// Set file name and content type for the PDF
var outputFileName = $"Report-{currentUser}.pdf";
Response.Headers.Add("Content-Disposition", $"attachment; filename={outputFileName}");
Response.ContentType = "application/pdf";
// Return the generated PDF file
return File(PDF.Stream.ToArray(), "application/pdf");
}
}
この例では、次の [認証]認証されたユーザーのみがPDF生成エンドポイントにアクセスできるようにするために、
属性を使用してください。 IronPDFのChromePdfRenderer
クラスは、HTMLコンテンツからPDFを作成するために使用されます。この場合、HTMLコンテンツはユーザーの名前で動的に個別化されています。
DotNetOpenAuth .NET Core と IronPDF を統合することで、.NET アプリケーションのセキュリティおよび機能性を強化する強力なソリューションを提供します。 これらの技術を活用することにより、動的PDF生成を通じて機密データを効果的に保護し、パーソナライズされたユーザー体験を提供できます。
IronPDFは汎用性が高いだけでなく、開発者に優しいため、.NETアプリケーション内でPDFファイルを作成および管理するためのシンプルなアプローチを提供します。 もしあなたのプロジェクトにIronPDFを組み込むことを検討しているのであれば、次のことを検討することをお勧めします。IronPDF 公式ウェブサイト無料トライアルとライセンスオプションについては、こちらをご覧ください。