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 server #607

Closed
20 tasks
bmarty opened this issue Oct 7, 2019 · 0 comments · Fixed by #1354
Closed
20 tasks

Identity server #607

bmarty opened this issue Oct 7, 2019 · 0 comments · Fixed by #1354
Assignees
Labels
X-Needs-Design May require input from the design team Z-riotx-go-live
Milestone

Comments

@bmarty
Copy link
Member

bmarty commented Oct 7, 2019

THE CURRENT DESCRIPTION IS WIP

Introduction

Identity Servers support contact discovery on Matrix by letting people look up Third Party Identifiers to see if the owner has publicly linked them with their Matrix ID.

Related MSCs

The list can be found here: https://matrix.org/blog/2019/09/27/privacy-improvements-in-synapse-1-4-and-riot-1-4

Steps and requirements

  • Only one identity server by account can be set. The choice is stored in account data with key m.identity_server. But every clients will managed its own token to log in to the identity server
{
  "type": "m.identity_server",
  "content": {
    "base_url": "https://matrix.org"
  }
}
  • The accepted terms are stored in the account data:
{
  "type": "m.accepted_terms",
  "content": {
    "accepted": [
      "https://vector.im/identity-server-privacy-notice-1"
    ]
  }
}
  • Only API v2 will be supported (see https://matrix.org/docs/spec/identity_service/latest)
  • Default identity server URL, from Wellknown data is proposed to the user.
  • Identity server can be set
  • Identity server can be changed on another user's device, so when the change is detected (thanks to account data sync) RiotX should properly disconnect from a previous identity server (I think it was not the case in Riot-Android, where we keep the token forever)
  • Registration to the identity server is managed with an openId token
  • TOS can be accepted
  • Identity server can be modified
  • Identity server can be disconnected. Riot-Web displays a warning if there are current bound 3pid on this identity server.
  • Email can be bound
  • Email can be unbound
  • Phone can be bound
  • Phone can be unbound
  • Look up can be performed, to get matrixIds from local contact book (phone and email): Android permission correctly handled
  • Look up pepper can be updated if it is rotated on the identity server
  • Invitation using 3PID can be done (See [Feature] 3pid invite #548)
  • Homeserver access-token will never be sent to an identity server
  • When user sign-out: logout from the identity server if any?
  • When user deactivate account: logout from the identity server if any?

Screenshots of current Android application

Settings

image

Discovery screen

No identity server configured

image

Identity server configured

image

On Riot-Web

image

Configure an Identity server

image

Error

image

TOS

image

Binding an email

image

Lookup

TODO

Ref:

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
X-Needs-Design May require input from the design team Z-riotx-go-live
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants