Skip to content

feat: complete HTTP authentication system with 5 built-in providers #496

Description

@JusterZhu

Problem

The authentication system was incomplete:

  1. No Basic Auth support (common in enterprise environments)
  2. No explicit way to select auth method — relied on implicit string scheme matching
  3. Factory priority bug: HMAC always won because AppSecretKey is required
  4. HMAC took precedence over explicit user choices

Solution (PR #495)

New features

  • BasicAuthProvider — RFC 7617 Basic Authentication with EncodeCredential helper
  • AuthScheme enum — explicit type-safe selection: Hmac | Bearer | ApiKey | Basic
  • BasicUsername / BasicPassword — new config fields flowing through full pipeline
  • Rename UpdateAuth to HttpAuth for naming consistency

Bug fix

  • Factory priority fixed: explicit AuthScheme now takes precedence over HMAC default

Files changed

10 files, +285/-24 lines in GeneralUpdate.Core

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

featuresNew feature or request

Type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions