Skip to content

fix(onvif): authenticate ONVIF over HTTP Basic#3

Open
keyldev wants to merge 1 commit into
mainfrom
feat/onvif-http-basic-auth
Open

fix(onvif): authenticate ONVIF over HTTP Basic#3
keyldev wants to merge 1 commit into
mainfrom
feat/onvif-http-basic-auth

Conversation

@keyldev
Copy link
Copy Markdown
Collaborator

@keyldev keyldev commented May 31, 2026

Summary

  • onvif_simple_server gates device service behind HTTP Basic; Onvif.Core's factory only does WS-UsernameToken over Anonymous transport, so probe 401s
  • add OnvifClientBuilder: builds clients via the internal ctor and injects a preemptive Authorization header alongside the existing WS-UsernameToken
  • HttpBasicAuthBehavior adds the header at the message layer (binding untouched)
  • credential-less endpoints keep prior behavior (no Basic header)

Related

Type

  • Bug fix
  • Feature
  • Refactor / cleanup
  • Docs / CI
  • Other:

Checklist

  • Builds with 0 warnings (TreatWarningsAsErrors=true).
  • Tests pass (dotnet test); new Core logic has unit tests.
  • No layering violation — App references Core only (Infrastructure / Video / Devices wired via DI in a head).
  • Scope stays within one phase (didn't pull work from a later phase's "Не входит").
  • README / docs updated if public commands, options, or setup changed.

Platforms tested

  • Windows
  • Linux
  • macOS
  • Android
  • iOS
  • CI build only

Screenshots / notes

- onvif_simple_server gates device service behind HTTP Basic; Onvif.Core's
  factory only does WS-UsernameToken over Anonymous transport, so probe 401s
- add OnvifClientBuilder: builds clients via the internal ctor and injects a
  preemptive Authorization header alongside the existing WS-UsernameToken
- HttpBasicAuthBehavior adds the header at the message layer (binding untouched)
- credential-less endpoints keep prior behavior (no Basic header)
@keyldev keyldev self-assigned this May 31, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant