Skip to content

Add AppCheck limited-use token bindings#129

Merged
AdamEssenmacher merged 1 commit intomainfrom
codex/missing-binding-appcheck-limited-use-tokens
Apr 11, 2026
Merged

Add AppCheck limited-use token bindings#129
AdamEssenmacher merged 1 commit intomainfrom
codex/missing-binding-appcheck-limited-use-tokens

Conversation

@AdamEssenmacher
Copy link
Copy Markdown
Owner

Summary

  • Adds the missing AppCheck limited-use token selector limitedUseTokenWithCompletion:.
  • Adds the optional provider selector getLimitedUseTokenWithCompletion: to the AppCheck provider model and exposes it on AppCheckDebugProvider, which does not inherit the model surface directly.
  • Adds the targeted local E2E runtime drift case appcheck-limited-use-tokens.

Notes

This keeps the binding thin: no task wrapper or convenience helper is added. The E2E case treats native App Check configuration/platform errors as acceptable after the selector crosses the native boundary, and still fails on binding-layer issues such as missing managed API, unrecognized selector, bad marshaling, or ObjCRuntime.ObjCException.

Out of scope for this slice: unrelated AppCheck provider APIs, audit tooling, Firestore cache settings, and broader backlog cleanup.

Validation

  • dotnet tool run dotnet-cake -- --target=nuget --names="Firebase.AppCheck"
  • tools/e2e/run-firebase-foundation.sh --package-dir output --configuration Debug --runtime-drift-case appcheck-limited-use-tokens
  • tools/e2e/run-firebase-foundation.sh --package-dir output --configuration Debug
  • git diff --check

Targeted E2E result: RuntimeDrift:appcheck-limited-use-tokens passed. The native selector limitedUseTokenWithCompletion: invoked its callback and returned a native App Check platform/OS error on simulator rather than a binding-layer exception.

@AdamEssenmacher AdamEssenmacher marked this pull request as ready for review April 11, 2026 23:01
@AdamEssenmacher
Copy link
Copy Markdown
Owner Author

@codex review

@chatgpt-codex-connector
Copy link
Copy Markdown

Codex Review: Didn't find any major issues. Chef's kiss.

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

@AdamEssenmacher AdamEssenmacher merged commit 5321a57 into main Apr 11, 2026
1 check passed
@AdamEssenmacher AdamEssenmacher deleted the codex/missing-binding-appcheck-limited-use-tokens branch April 11, 2026 23:07
@Kapusch
Copy link
Copy Markdown
Collaborator

Kapusch commented Apr 12, 2026

Interesting, I didn't know about the limited token, so just for info on to what this binding just added:

The limitedUseToken is for securing requests to your custom backend services , offering replay protection. Standard App Check tokens, however, are automatically used by Firebase to secure calls to Firebase services directly. You explicitly request the limitedUseToken when needed for your own server, whereas standard tokens are typically managed behind the scenes by the Firebase SDK for Firebase APIs.

Thanks!

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.

2 participants