Skip to content

Improve claim binding in policies #3755

Description

@aaronburtle

Database authorization policy processing currently converts referenced claim values into OData filter text before parsing. This does not provide a strict separation between policy syntax and claim data because URI processing may transform the serialized value.

Refactor policy processing so that:

  • Claim references become OData parameter aliases.
  • Claim values remain separate from policy text.
  • Values are injected as typed AST constants before type promotion.
  • Generated SQL and Cosmos DB queries use bound parameters.
  • Legitimate encoded and percent-containing values are preserved exactly.
  • Invalid primitive claim values fail closed.

Add regression coverage for literal apostrophes, percent-encoded values, nested/mixed encoding, legitimate percent characters, supported primitive types, and Cosmos DB parameterization.

Metadata

Metadata

Assignees

Labels

Type

Projects

Status
Review In Progress

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions