Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Identity equality check #13

Open
danielterwiel opened this issue Dec 17, 2022 · 4 comments
Open

Identity equality check #13

danielterwiel opened this issue Dec 17, 2022 · 4 comments

Comments

@danielterwiel
Copy link

danielterwiel commented Dec 17, 2022

This thread on the Dfinity Discord brought me here: https://discord.com/channels/748416164832608337/1050180909053259776

I've laid out two scenarios: the green and the orange rectangles.

ii-wg

The green rectangle illustrates the happy flow. But then there is the path where two different identities are used for the two dApps. My issue is that: though I do have cross-tab communication (the 🕶️ dApp integrates a script) between the two windows, I have no way of knowing the identities connected in these two windows are exactly the same.

And thus I am forced to let my users reconnect, where the user shouldn't necessarily have to, if I had a way to check if the identities are identical

I can provide a minimum reproducible repo if needed.

@paulyoung
Copy link

Have you considered an intermediate step where users confirm which identity they’d like to use?

Something like where Google says “continue as” and you can choose to continue or change to use a different identity.

I suppose it depends if your motivation is to prevent people from proceeding using the wrong identity, or optimizing the flow for people who are already authenticated with the correct one.

By the way, I think the npm package you linked to must be private.

@danielterwiel
Copy link
Author

danielterwiel commented Dec 17, 2022

I think what you are proposing is what I am doing right now; when the user enters the page of the payment provider I am forcing them to reconnect. If there's such a thing as an identity picker I must have missed that.

But even then: when the user connects to the payment provider with a different identity than the one which they connected to the webshop, it is technically allowed. What I'm searching for is a detection mechanism for this scenario

I believe I must emphasize that we have no control over the sunglasses dApp in the example: this is an arbitrary third party dApp that integrates our script.

I suppose it depends if your motivation is to prevent people from proceeding using the wrong identity, or optimizing the flow for people who are already authenticated with the correct one.

That's exactly the choice I am now forced to make because principals between dApps are different for the same identity, which is great for privacy of course. But I was hoping I missed something that would allow me to check if the two principals belong to the same identity.

My bad. The link is updated.

@marydwyer
Copy link
Collaborator

Would you like to discuss this with the identity and authentication working group? Here is the meeting information.

@danielterwiel
Copy link
Author

@marydwyer hey! I saw this right in time. I'll be there

marydwyer added a commit that referenced this issue Feb 7, 2023
Including the use cases that the working group created and reviewed in issue #12 , as well as the suggestion in issue #13 .
marydwyer added a commit that referenced this issue Apr 4, 2023
Including the use cases that the working group created and reviewed in issue #12 , as well as the suggestion in issue #13 .
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

No branches or pull requests

3 participants