question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Flow to confirm WebId Ownership

See original GitHub issue

When a user signs up with an external WebId via the default Email-Password interaction, they should be asked to place a verification triple in their WebId so it is not possible to squat on WebIds.

  • Upon sign up, a verification token is generated and saved in the IdP’s database
  • A UI is rendered that tells the user how to put their verification token in their WebId and how to put the solid:oidcIssuer predicate in their WebId.
  • After pressing submit on that UI the server checks to see if the WebId has both the verification triple and the solid:oidcProvider triple
  • If the WebId does not, it returns the same instructions with an error message
  • If the WebId does, it creates an account and continues with the login flow as normal.

Issue Analytics

  • State:closed
  • Created 3 years ago
  • Comments:10 (10 by maintainers)

github_iconTop GitHub Comments

1reaction
matthieubosquetcommented, Mar 15, 2021

I’m glad it helps 😃

It is meant to be the default mechanism.

I’m not too sure what the use case for adding a version of the “enabling IdP protocol” where the IdP relies on another IdP to do so, but without having given it much thought myself, I think you could make a secure one if you wanted to. But you would still need to edit the WebID by adding the new issuer in any case before you can use your newly enabled IdP.

1reaction
RubenVerborghcommented, Mar 13, 2021

Mmm… if you’re registering with an external WebID, you’d expect to have the WebID setup, no?

So the use case we’re trying to cater for here is actually the more generic:

  • user has an external RDF document (but no IDP)
  • user wants to register for the IDP

OK. fair enough.

I’m not sure what you exactly mean by temporary Solid storage triple? Here too you just add one triple with the verification token/key/string that you can remove once registration is done.

I’m arguing that we don’t need any randomly generated token.

Assuming that https://example.org/people#alice registers for https://alicepod.other.example/, then I suggest Alice adds something like:

<https://example.org/people#alice> pim:storage <https://alicepod.other.example/>.

Why would this need to be a token?

Or why not even solid:oidcIssuer?

Read more comments on GitHub >

github_iconTop Results From Across the Web

Proving Ownership of a Flow Account - Flow Developers
Proving ownership of an on-chain account is a way to authenticate a user with an application backend. Fortunately, FCL provides a way to ......
Read more >
Change the owner of a cloud flow in Power Automate
Learn how to change the owner of a solution-aware cloud flow in Power Automate. ... Screenshot that shows confirmation for the owner change....
Read more >
Solid-OIDC Primer - Solid project
This primer is designed to provide the reader with the basic knowledge required to understand Solid OpenID Connect authentication flows.
Read more >
SharePoint Online: Get Site Collection ID (or Web ID) using ...
To Get Site Collection ID, hit this URL in the browser: https://<tenant>.sharepoint.com/sites/<site-url>/_api/site/id; To get the subsite ID (or ...
Read more >
Classic OIDC vs Solid OIDC - Documentation - Digita
We will demonstrate the differences between the classic OIDC flow and the Solid OIDC ... containing Claims that prove the identity of the...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found