IRONSOFTWAREHOME
AKTUALNOŚCI DLA PROGRAMISTÓW

Dotnetopenauth .NET Core (jak to działa dla programistów)

Jacob Mellor, Dyrektor Technologiczny @ Team Iron
Jacob Mellor
Updated: 23 kwietnia 2026

DotNetOpenAuth .NET Core to wersja oryginalnej biblioteki DotNetOpenAuth dostosowana do .NET Core, zapewniająca solidny publiczny interfejs API. Ta biblioteka pomaga dodać uwierzytelnianie za pomocą OAuth2 i OpenID do aplikacji .NET. IronPDF to biblioteka służąca do tworzenia, odczytu i edycji plików PDF w środowisku .NET. Jest to przydatne do generowania dokumentów, takich jak raporty i faktury, bezpośrednio z aplikacji .NET.

Możesz używać DotNetOpenAuth .NET Core i IronPDF w różnych typach projektów, takich jak aplikacje internetowe i desktopowe, aby wykorzystać wspólny kod i wdrażać nowe funkcje. Są one niezbędne dla programistów, którzy chcą w swoim oprogramowaniu obsługiwać uwierzytelnianie i zarządzanie dokumentami PDF.

Pierwsze kroki z DotNetOpenAuth .NET Core

Konfiguracja DotNetOpenAuth .NET Core w projektach .NET

Aby rozpocząć korzystanie z DotNetOpenAuth .NET Core w projektach .NET obsługiwanych przez technologie Microsoft, wykonaj następujące czynności:

  1. Otwórz swój projekt w Visual Studio.
  2. Przejdź do okna Solution Explorer.
  3. Kliknij prawym przyciskiem myszy nazwę swojego projektu.
  4. Wybierz Manage NuGet Packages.
  5. W Menedżerze pakietów NuGet wyszukaj DotNetOpenAuth.NetCore oraz inne pakiety NuGet.
  6. Kliknij Install, aby dodać go do swojego projektu.

Spowoduje to dodanie biblioteki DotNetOpenAuth .NET Core do projektu, zapewniając obsługę integracji funkcji uwierzytelniania.

Podstawowy przykład kodu wykorzystujący DotNetOpenAuth .NET Core

Oto prosty przykład pokazujący, jak skonfigurować uwierzytelnianie OAuth2 w aplikacji przy użyciu DotNetOpenAuth .NET Core:

using DotNetOpenAuth.OAuth2;

// Initialize the OAuth2 client with the authorization server details
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 and get the authorization state
IAuthorizationState state = client.ProcessUserAuthorization();
if (state != null && state.IsAuthorized)
{
    // Authorized successfully, now you can access protected resources
}

Ten fragment kodu konfiguruje klienta OAuth2 przy użyciu DotNetOpenAuth .NET Core, łączy się z serwerem autoryzacji i przetwarza autoryzację użytkownika.

Wdrożenie funkcji DotNetOpenAuth .NET Core

Integracja z OpenID Connect

Aby zintegrować OpenID Connect przy użyciu DotNetOpenAuth .NET Core, można postępować zgodnie z poniższym podstawowym podejściem:

using DotNetOpenAuth.OAuth2;

// Configure the OpenID Connect client with authority details
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);

Ten kod konfiguruje klienta OpenID Connect i przekierowuje użytkownika na stronę uwierzytelniania dostawcy OpenID.

Obsługa tokenów dostępu

Oto jak można obsługiwać tokeny dostępu za pomocą DotNetOpenAuth .NET Core:

// After the user is authenticated, process the authorization response to retrieve the token
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;
}

Ten fragment kodu przetwarza odpowiedź dotyczącą autoryzacji użytkownika w celu pobrania i wykorzystania tokenu dostępu.

Odświeżanie tokenów

Aby odświeżyć tokeny po ich wygaśnięciu, użyj następującego kodu:

// Check if the access token is expired and refresh it
if (authState.AccessTokenExpirationUtc <= DateTime.UtcNow)
{
    if (openIdClient.RefreshAuthorization(authState))
    {
        // Token refreshed successfully
    }
}

Ten kod sprawdza, czy aktualny token wygasł, i próbuje go odświeżyć.

Cofanie tokenów

Jeśli chcesz unieważnić tokeny, zrób to tak, jak pokazano poniżej:

// Revoke the access token
bool success = openIdClient.RevokeAuthorization(authState);
if (success)
{
    // Token revoked successfully
}

Ten fragment kodu cofa autoryzację, skutecznie unieważniając token dostępu.

Dostosowywanie żądań tokenów

Aby dostosować żądania tokenów do konkretnych potrzeb, np. dodając dodatkowe parametry:

// Customize the token request with additional parameters
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
}

Ten kod dodaje niestandardowe parametry do żądania tokenu, co może być przydatne przy spełnianiu konkretnych wymagań serwera autoryzacyjnego.

DotNetOpenAuth .NET Core z IronPDF

IronPDF to kompleksowa biblioteka, która umożliwia programistom tworzenie, odczytywanie i edycję plików PDF w środowiskach .NET. Jest to szczególnie przydatne do generowania plików PDF z HTML lub bezpośrednio z adresów URL, co może być świetnym rozwiązaniem do tworzenia raportów, generowania faktur lub po prostu przechowywania stron internetowych w formacie statycznym. Po zintegrowaniu z DotNetOpenAuth .NET Core zapewnia, że funkcje te są bezpieczne i dostępne wyłącznie dla uwierzytelnionych użytkowników.

Przykład zastosowania połączenia IronPDF z DotNetOpenAuth .NET Core

Praktycznym przykładem zastosowania połączenia IronPDF z DotNetOpenAuth .NET Core jest aplikacja internetowa, w której uwierzytelnieni użytkownicy muszą generować i pobierać spersonalizowane raporty. Wyobraźmy sobie na przykład sytuację, w której użytkownicy logują się do aplikacji i uzyskują dostęp do swoich raportów finansowych w formacie PDF. DotNetOpenAuth zapewnia, że użytkownicy są prawidłowo uwierzytelniani i autoryzowani do dostępu do swoich dokumentów, podczas gdy IronPDF zajmuje się tworzeniem i dostarczaniem tych spersonalizowanych plików PDF.

Przykładowy kod przedstawiający przypadek użycia

Przyjrzyjmy się kompletnemu przykładowi kodu, który pokazuje, jak to zaimplementować. Stworzymy proste API internetowe w .NET Core, które uwierzytelnia użytkownika, a następnie generuje raport PDF przy użyciu IronPDF:

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

W tym przykładzie używamy atrybutu [Authorize], aby upewnić się, że tylko uwierzytelnieni użytkownicy mogą uzyskać dostęp do punktu końcowego generowania PDF. Klasa ChromePdfRenderer z IronPDF jest używana do tworzenia PDF z treści HTML, która w tym przypadku jest dynamicznie personalizowana za pomocą imienia użytkownika.

DotNetOpenAuth .NET Core (Jak to działa dla deweloperów): Rycina 1

Wnioski

Zintegrowanie DotNetOpenAuth .NET Core z IronPDF stanowi potężne rozwiązanie zwiększające bezpieczeństwo i funkcjonalność aplikacji .NET. Wykorzystując te technologie, można skutecznie chronić poufne dane i zapewnić spersonalizowane doświadczenia użytkownika dzięki dynamicznemu generowaniu plików PDF.

IronPDF jest nie tylko wszechstronny, ale także przyjazny dla programistów, oferując proste podejście do tworzenia plików PDF i zarządzania nimi w aplikacjach .NET. Jeśli rozważasz włączenie IronPDF do swojego projektu, zalecamy zapoznanie się z oficjalną stroną internetową IronPDF, gdzie znajdziesz informacje o bezpłatnej wersji próbnej i opcjach licencyjnych.

Jacob Mellor, Dyrektor Technologiczny @ Team Iron
Dyrektor ds. technologii

Jacob Mellor jest Chief Technology Officer w Iron Software i wizjonerskim inżynierem, pionierem technologii C# PDF. Jako pierwotny deweloper głównej bazy kodowej Iron Software, kształtuje architekturę produktów firmy od jej początku, przekształcając ją wspólnie z CEO Cameron Rimington w firmę liczącą ponad 50 osób, obsługującą NASA, Teslę i światowe agencje rządowe.

...
Czytaj więcej

Powiązane artykuły

Key in blue circle

Uzyskaj natychmiast swój darmowy 30-dniowy Klucz Testowy.

Brak ograniczeń. 100% dostępności. Bez karty kredytowej.

bullet_checkedNie wymaga karty kredytowej ani tworzenia kontaBrak ograniczeń. 100% dostępności. Bez karty kredytowej.
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
Zarezerwuj swoje darmowe Demo na żywo
Booking Badge

Zaufane przez miliony inżynierów na całym świecie

Logotypy klientów Iron Software
Otrzymaj swoje Konsultacja Bez Zobowiązań
Wypełnij poniższy formularz lub wyślij e-mail na sales@ironsoftware.com
Twoje dane zawsze będą utrzymywane w tajemnicy.
Zaufane przez miliony inżynierów na całym świecie
Logotypy klientów Iron Software
Otrzymaj swój darmowy Klucz Próbny na 30 dni natychmiast.
Nie wymaga karty kredytowej ani tworzenia konta