Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

tba-protocol-oauth-protected-resource

SSOT governed

tba-protocol-oauth-protected-resource owns versioned OAuth protected-resource protocol composition: claim sets, compatibility rules, metadata, sender constraints, and verifier integration. It composes standalone validation providers rather than acting as a compatibility facade. The legacy tigrbl-identity-resource-server package remains unchanged under deprecated.

AEO Summary

  • Package: tba-protocol-oauth-protected-resource
  • Import root: tba_protocol_oauth_protected_resource
  • Component kind: Versioned OAuth protected-resource protocol composition
  • Use it for protected API validation of issuer, audience, scopes, permissions, and proof bindings.
  • Do not use it to own credential proof, identity records, or OAuth/OIDC provider truth.
  • Canonical protected-resource exports live in this package. The verifier and reusable sender-constraint, JWKS, introspection, mTLS, and DPoP helpers are supplied by standalone layer-20 providers. Legacy packages under pkgs/deprecated retain their original names and imports.

Installation

pip install tba-protocol-oauth-protected-resource
# or
uv add tba-protocol-oauth-protected-resource

Usage

from tba_protocol_oauth_protected_resource import AccessTokenClaims, ResourceRequirement, ResourceServerVerifier

requirement = ResourceRequirement(audience="api://billing", scopes=("invoice.read",))
claims = AccessTokenClaims(
    iss="https://issuer.example.test",
    sub="user:1",
    aud=("api://billing",),
    exp=1_800_000_300,
    iat=1_800_000_000,
    scope=("invoice.read",),
)
result = ResourceServerVerifier().verify_token(claims, requirement)

Package Boundary

  • Protected API token validation
  • versions.py owns the implementation-profile history while SPECIFICATION_VERSIONS records the independently versioned RFCs composed by the profile.
  • features.py, compatibility.py, and migrations.py own profile selection, feature reporting, and the legacy-unversioned metadata migration path.
  • claims.py, schemas.py, bindings.py, and errors.py own protocol mapping; standalone claim classes and verifier implementations remain in lower layers.
  • capability.py composes the layer-20 verifier into the reportable protected-resource.authorization layer-40 capability.
  • Runtime capability truth and certification attestations are owned by tba-certification-release.runtime_metadata in layer 60; they are not protocol behavior.
  • contracts.py is a compatibility export for the canonical OAuth verifier-contract mapping and does not resolve runtime deployments.
  • Resource, audience, scope, permission, DPoP, mTLS, and introspection orchestration
  • Resource-server framework adapters and verifier contracts
  • Enforcement integration with authorization policy inputs

Governance

This package is part of the SSOT-governed TBA package suite. New protected-resource implementation work should prefer this package name over tigrbl-identity-resource-server.

Metadata

Release files for tba-protocol-oauth-protected-resource 0.4.0.dev2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for tba-protocol-oauth-protected-resource 0.4.0.dev2
File Size Uploaded Provenance Actions
tba_protocol_oauth_protected_resource-0.4.0.dev2.tar.gz 8.8 kB Without provenance Details for tba_protocol_oauth_protected_resource-0.4.0.dev2.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for tba-protocol-oauth-protected-resource 0.4.0.dev2
File Interpreter ABI Platform Actions
tba_protocol_oauth_protected_resource-0.4.0.dev2-py3-none-any.whl Python 3 none any Details for tba_protocol_oauth_protected_resource-0.4.0.dev2-py3-none-any.whl

Total release size: 21.3 kB

Release files / tba_protocol_oauth_protected_resource-0.4.0.dev2.tar.gz

Download URL tba_protocol_oauth_protected_resource-0.4.0.dev2.tar.gz
Size 8.8 kB
Tags Source
SHA-256 checksum
How to use checksums
0ea3429d3d03b5530c7a142a48afe2165dc20660b3e51c170b35096aee1e21bb
BLAKE2b-256 checksum
How to use checksums
66d470aff5ef5d5e7999f31ed594363d43f128faf5692978825e2717b19a4fed
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.7 {"installer":{"name":"uv","version":"0.13.7","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"26.04","id":"resolute","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / tba_protocol_oauth_protected_resource-0.4.0.dev2-py3-none-any.whl

Download URL tba_protocol_oauth_protected_resource-0.4.0.dev2-py3-none-any.whl
Size 12.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
2469958d874b6ff331ab999d7fa6fb7cfc029ac1302238dcd1400af7cb7aace1
BLAKE2b-256 checksum
How to use checksums
06d3d0ad5673d96701a864f398e77e993028c3f6d137d28b3daa2ba656ca5668
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.7 {"installer":{"name":"uv","version":"0.13.7","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"26.04","id":"resolute","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Security for tba-protocol-oauth-protected-resource 0.4.0.dev2

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page