WIP: Store per-device user agent for remoteStorage authorizations #257
Draft
raucao
wants to merge 2 commits from
feature/rs_device_tokens into feature/rs_auth_pkce
pull from: feature/rs_device_tokens
merge into: kosmos:feature/rs_auth_pkce
kosmos:master
kosmos:feature/rs_storage_dashboard
kosmos:feature/rs_auth_pkce
kosmos:feature/nostr-onboarding-ruby
kosmos:live
kosmos:chore/btcpay_expired_paid-late
kosmos:feature/nostr-onboarding
kosmos:feature/import_deno_modules
kosmos:docs/integrations
kosmos:feature/ldap_aci
kosmos:feature/contribution_nav
No Reviewers
Labels
Clear labels
bug
design
dev environment
docs
duplicate
enhancement
feature
good first issue
idea
invalid
kredits-1
kredits-2
kredits-3
on hold
ops
question
security
ui/ux
wontfix
integration
btcpay
integration
discourse
integration
ejabberd
integration
email
integration
ldap
integration
lndhub
integration
mastodon
integration
nostr
integration
remotestorage
Something is not working
Graphic/visual design
Config, builds, CI, deployment, etc.
Documentation
This issue or pull request already exists
Improving existing functionality
New functionality
Dive in, and start contributing
Something to consider
Not a bug
Small contribution
Medium contribution
Large contribution
Currently not actionable
Manual IT ops activities
Looking for an answer
All your base are belong to us
User interface, process design, etc.
This won't be fixed
release
major
release
minor
release
patch
Milestone
No items
No Milestone
No Assignees
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: kosmos/akkounts#257
Reference in new issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Second of three PRs for #254. Stacked on #256 (PKCE core) — please review/merge that first.
What
user_agentcolumn toremote_storage_authorizationsandrs_authorization_codes, captured at consent, carried on the authorization code, and stored on the authorization at exchange (and directly for the implicit flow).Because the existing-token reuse shortcut was removed in #256, every authorization is already a distinct per-device token.
Storage-first
Documents the storage-first launch (remoteStorage spec section 11) with an explicit spec:
launch_apphands the app only#remotestorage=<address>, never an access token. The app then runs the application-first (now PKCE-capable) flow itself.Tests
bundle exec rspec— 350 examples, 0 failures.Part of #254.
25856a7ca7toe3bf932c51Store per-device user agent for remoteStorage authorizationsto Per-device remoteStorage tokens: user agent and supersede on consent44e4488a4fto918d2622c6Per-device remoteStorage tokens: user agent and supersede on consentto Store per-device user agent for remoteStorage authorizationsView command line instructions
Checkout
From your project repository, check out a new branch and test the changes.