Khi xây dựng application ASP.NET Core, đôi khi cần sử dụng nhiều authentication schemes để hỗ trợ chuyển đổi identity provider. Trong trường hợp cụ thể tác giả đã giảm số lượng OIDC servers từ nhiều xuống một, thay vì di chuyển toàn bộ schemes về cookie default scheme. Việc triển khai multiple authentication schemes giúp giảm thiểu rủi ro và thời gian migration khi áp dụng identity provider mới. Bạn có thể implement bằng cách cấu hình AddAuthentication() với nhiều schemes và điều khiển flow thông qua properties như AuthenticationSchemes. Phương pháp này đặc biệt hữu ích khi đang trong quá trình di chuyển legacy system mà không muốn gián đoạn trải nghiệm người dùng.
Vì sao nên đọc: Bài viết này giải thích cách triển khai nhiều scheme xác thực trong ASP.NET Core giúp chuyển đổi hệ thống identity hiệu quả mà không cần thay đổi cookie scheme mặc định.
Trả lời 3 câu hỏi ngắn để nhận điểm thưởng cho bài này. Chỉ làm khi bạn muốn lấy điểm.
3 câu hỏi · dưới một phút · không bắt buộc
Nguồn: https://damienbod.com/2026/10/12/use-multiple-schemes-in-an-asp-net-core-web-application. 8 Sync News chỉ tóm tắt và dẫn link; bản quyền nội dung thuộc tác giả và nguồn gốc.
Đang tải bình luận…
Bối cảnh bài viết cung cấp hướng dẫn thực tế về Result pattern trong C# và .NET 10. Nguyên nhân kỹ thuật là Result pattern giúp xử lý lỗi một cách rõ ràng thay vì dùng exceptions, đặc biệt quan trọng trong các asynchronous services. Hệ quả là pattern này cải thiện hiệu suất application khi benchmarked so với exception handling truyền thống. Đáng học là cách map Result pattern với ProblemDetails trong APIs và tác động của C# 15 unions đến implementation pattern này.
Bài này giúp lập trình viên hiểu rõ khi nào nên dùng Result pattern trong C# và .NET 10 qua benchmark thực tế và ứng dụng với async services.
C# 15 và .NET 11 giới thiệu union types và closed class hierarchies để xử lý các giá trị có nhiều dạng JSON, minh họa qua trường hợp maxUnavailable của Kubernetes và payment-events. Union types khai báo một tập hợp các primitive, class hoặc interface cố định với switch statement đầy đủ do compiler kiểm tra, trong khi closed hierarchies hạn chế kế thừa để compiler xử lý các derived types đã biết là đầy đủ. System.Text.Json serialize union types mà không cần envelope hay discriminator, chỉ ghi JSON shape của case đang hoạt động, còn closed hierarchies có thể chọn discriminator-based polymorphism thông qua InferClosedTypePolymorphism. Cả hai tính năng đều tích hợp với Minimal APIs, MVC, SignalR's JsonHubProtocol, Blazor và OpenAPI, nhưng union types không hỗ trợ cho query strings, route values, headers hay form fields do các giá trị này chỉ bind chuỗi không có JSON parsing.
Bài viết giúp lập trình viên tận dụng union types và closed hierarchies trong C# để xử lý JSON đa dạng hiệu quả hơn trong ASP.NET Core.
Bài viết thảo luận về những thách thức khi triển khai Single Sign-On (SSO) trong môi trường self-hosted, đặc biệt là vấn đề bảo mật và rủi ro tiềm ẩn khi hệ thống gặp sự cố.
Lập trình viên tự host nên đọc bài này để hiểu cách quản lý các vấn đề về quyền riêng tư và thuế liên quan đến dịch vụ đăng nhập đơn lẻ (SSO) khi triển khai hệ thống riêng của mình.
Trong ASP.NET Core, CancellationTokens giúp tiết kiệm tài nguyên server khi xử lý các tác vụ dài. Token này hoạt động bằng cách cho phép bạn ngắt các operation chưa hoàn thành khi client disconnect hoặc timeout. Việc sử dụng CancellationTokens giảm đáng kể CPU, memory usage và số lượng database calls không cần thiết. Bạn nên học cách implement CancellationTokens trong cả controller actions và background workers để tối ưu performance. Điều quan trọng là kiểm tra token thường xuyên trong các loop dài và async operation để ứng dụng phản hồi nhanh hơn khi cần hủy.
CancellationTokens giúp lập trình viên tối ưu hóa tài nguyên server và cải thiện hiệu năng ứng dụng C# và ASP.NET Core.
OpenPubkey SSH (OPKSSH) là công cụ cho phép đăng nhập SSH bằng single sign‑on (OpenID Connect) thay vì quản lý khóa SSH dài hạn, và vừa được mã nguồn mở dưới giấy phép Apache 2.0 sau khi Cloudflare tặng код từ việc mua lại BastionZero cho dự án OpenPubkey. Công cụ hoạt động bằng cách nhúng OpenID ID Token, mở rộng bằng khóa công khai qua giao thức OpenPubkey, vào trường mở rộng của chứng chỉ SSH, chỉ cần thay đổi hai dòng trong sshd_config sử dụng AuthorizedKeysCommand mà không cần sửa mã khách hàng hoặc máy chủ. Thay thế khóa SSH tĩnh bằng khóa tạm thời, hết hạn và gắn liền với danh tính (ví dụ: địa chỉ email) thay vì khóa công khai thô, OPKSSH nâng cao bảo mật, dễ sử dụng và khả năng truy vết truy cập. Điều này cho thấy việc tích hợp SSO vào SSH có thể đạt được với cấu hình tối thiểu, mang lại lợi ích về quản lý danh tính và giảm rủi ro từ khóa vĩnh viễn. Đồng quyên góp công cụ nội bộ dưới giấy phép cho phép mở rộng cộng đồng và thúc đẩy việc áp dụng rộng rãi các phương pháp xác thực hiện đại.
OPKSSH giúp đăng nhập SSH đơn giản hóa bằng single sign-on thay vì quản lý khóa SSH dài hạn, nâng cao bảo mật và khả năng hiển thị quyền truy cập.
Redential là công cụ đọc lịch sử git trên máy cá nhân, tạo hồ sơ kỹ thuật dựa trên những gì nhà phát triển thực sự xây dựng mà không tiết lộ code. Người dùng có thể kiểm soát dữ liệu chia sẻ và bảo vệ trực tiếp trước nhà tuyển dụng thông qua các buổi phỏng vấn live, cung cấp bằng chứng đáng tin cậy hơn CV truyền thống.
Là một lập trình viên cần tìm kiếm cơ hội công việc hoặc chứng minh năng lực thực tế của mình, Redential là giải pháp giúp bạn chứng minh thành tích thực sự qua lịch sử code cá nhân mà không cần phụ thuộc vào CV dễ bị giả mạo.
Spring Boot tích hợp Azure AD authentication thông qua Spring Security, cho phép frontend không cần trực tiếp xử lý token. Cơ chế này hoạt động bằng cách sử dụng OAuth2LoginConfigurer để cấu hình client ID, client secret và authorization server URI. Khi người dùng đăng nhập, Spring Security tự động trao đổi authorization code lấy access token và refresh token mà không can thiệp vào frontend. Giải pháp này loại bỏ nhu cầu quản lý token trên client-side, giảm thiểu rủi ro bảo mật và đơn giản hóa mã frontend.
Bài này giúp lập trình viên hiểu cách Spring Security xử lý luồng OAuth2 với Azure AD mà không cần frontend can thiệp vào token.
URL được ký trước (Presigned URLs) có thể bị khai thác trong các cuộc tấn công replay do vô tình tạo ra lỗ hổng bảo mật. SigV4 sử dụng thời gian hệ thống để ký, cấp quyền truy cập tạm thời vào storage của Tigris, nhưng cũng tiềm ẩn rủi ro nếu không quản lý cẩn thận.
Lập trình viên nên đọc bài này để hiểu rõ cách presigned URLs có thể trở thành điểm yếu an ninh dễ bị exploit, từ đó tránh rủi ro như tấn công replay hoặc mất quyền kiểm soát dữ liệu khi sử dụng các dịch vụ lưu trữ như AWS S3.
Đọc tin ở đây, luyện code, học theo lộ trình và luyện IELTS trên các sản phẩm anh em — tất cả kết nối với nhau trong hệ sinh thái 8 Sync.
Cổng chính của hệ sinh thái: giới thiệu sản phẩm, blog và bảng giá trọn bộ.
Khám pháHọc theo lộ trình rõ từng chặng: video, quiz chấm tự động, certificate và mentor đang làm nghề.
Xem lộ trình1.000+ bài DSA, đề tiếng Việt, chấm tự động 7 ngôn ngữ — nhiều bài FREE, chạy ngay trên trình duyệt.
Luyện miễn phíChấm bốn kỹ năng IELTS bằng AI, phản hồi chi tiết theo rubric.
Dùng thử miễn phíAI IDE 22 MB cho dev Việt.
Tải miễn phíBộ nhớ tổ chức cho AI agent.
Khám pháAI trực Fanpage, tự sàng lọc lead.
Dùng thử