diff --git a/README.md b/README.md index 6af0772..5e7b133 100644 --- a/README.md +++ b/README.md @@ -132,6 +132,7 @@ This wrapper now delegates to `BlackWall\Auth\AuthClient`. - Expect `access_denied` even after the consent page is displayed if provider-side project membership or tenant scope changes before consent submission. - Register only HTTPS redirect URIs in provider client settings (HTTP should be used only for localhost loopback during development). - Use OAuth/portal authentication endpoints for end users; provider admin login endpoints enforce separate admin scope checks. +- For provider admin enrollment URL export operations, use `POST` with CSRF protection; do not automate them via unauthenticated `GET` links. - Never place client secrets, refresh tokens, or access tokens in URL query strings. - For OIDC providers, include a per-request `nonce` in authorisation requests. - For direct Cryptbin API usage, send `key_b64url` on unwrap calls; provider rejects key-mismatch unwrap attempts with `403 Forbidden`. diff --git a/docs/INTEGRATION_GUIDE.md b/docs/INTEGRATION_GUIDE.md index ff6acba..2676f6d 100644 --- a/docs/INTEGRATION_GUIDE.md +++ b/docs/INTEGRATION_GUIDE.md @@ -151,6 +151,7 @@ Provider user/project assignment views may exclude disabled projects even if his - For token exchange and refresh, apply bounded retry/backoff on transient provider failures instead of immediate repeated retries. - Use exactly one client authentication method per token/control request (do not send both HTTP Basic and `client_secret` form fields together). - If you call provider WebAuthn login challenge/verify endpoints directly, use `POST` only. +- Treat admin enrollment URL export as a state-changing operation: call it with `POST` and include a valid CSRF token. - Configure OAuth client redirect URIs as HTTPS in production; reserve HTTP for localhost loopback testing only. - Assume provider rate limits are enforced per source identity (for example IP) and shared across related auth endpoints. - Treat report/export-style provider endpoints as high-cost and expect stricter rate limits.