You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Add configurable model endpoint identity header for APIM policies #1250
Add an admin-configurable model endpoint identity header that sends a stable, non-reversible per-user key with outbound model endpoint calls.
User Value
APIM and backend policies need a consistent user-specific value for counters, quotas, routing, and throttling without exposing raw user identifiers such as UPN, object ID, or tenant ID.
Proposed Behavior
Admins can enable or disable the header globally.
Admins can customize the header name while blocking reserved auth/protocol headers.
Admins can choose the identity input used for the HMAC: UPN, UPN + tenant ID, object ID, or object ID + tenant ID.
Individual model endpoints can inherit, force-enable, force-disable, or override header name/value behavior.
SimpleChat sends only an HMAC-SHA256 digest, never raw user identity values.
Background/workflow calls use the owning or initiating user where available; otherwise the header is omitted.
Acceptance Criteria
Global admin settings control header enablement, name, and identity value type.
Per-endpoint overrides are saved and applied at runtime.
Configured model endpoint calls and legacy GPT/APIM model calls include the header when enabled and identity values are available.
Reserved headers cannot be used as the custom identity header name.
Functional and UI coverage validate HMAC stability, privacy, disablement, override behavior, and endpoint override serialization.
Feature documentation explains setup, APIM usage, and limitations.
Notes
Implementation is underway in the current working branch for version 0.250.186.
Closing as completed. This issue stayed open after the fix merged because pull requests target Development while the repository default branch is main, so GitHub never applied the Fixes # keyword automatically.
Activity
paullizer commentedon Aug 19, 2026
Shipped in v0.250.203 via #1251.
Release note entries:
Full notes: https://microsoft.github.io/simplechat/explanation/release_notes/
Closing as completed. This issue stayed open after the fix merged because pull requests target
Developmentwhile the repository default branch ismain, so GitHub never applied theFixes #keyword automatically.