Skip to content

rfc: gateway authorization flow - migration#75

Open
fforbeck wants to merge 1 commit intomainfrom
rfc/gateway-auth-migration
Open

rfc: gateway authorization flow - migration#75
fforbeck wants to merge 1 commit intomainfrom
rfc/gateway-auth-migration

Conversation

@fforbeck
Copy link
Member

📖 Preview

This RFC proposes a simplified authorization mechanism for migrating legacy spaces to the new Storacha gateway infrastructure. Legacy spaces lack private keys, and we cannot create valid UCAN delegations, requiring a special authorization flow using ucan/attest, but it fails. The proposal is that the gateway creates and signs delegations on behalf of legacy spaces, then trusts its own signatures without complex attestation validations.

@fforbeck fforbeck requested review from a team, alanshaw, hannahhoward and travis November 12, 2025 15:39
@fforbeck fforbeck self-assigned this Nov 12, 2025
Copy link
Member

@hannahhoward hannahhoward left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

was never a huge fan of the original ucan/attest plan.

I'm a little fuzzy on why it's not working ... would want @alanshaw 's input before we go forward

question: can't this be done from the delegation we have for the account for most spaces on the upload service?

IOW,

  • we have a store of space/* to email, valid signature from the space key
  • now we make a account email to gateway pub key, w/ space/content/serve, attested in the facts by the upload service
  • this is exactly the flow we use for delegating between devices so I don't know why we'd not be able to do it.

essentially it's running the email validation flow but w/o the actual confirmation (don't love, but c'est l'vie)

@hannahhoward
Copy link
Member

FWIW I think that the ucan/attest in the email flow is in the facts, not the direct chain

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