-
Notifications
You must be signed in to change notification settings - Fork 4.4k
Separate OAuth2 info from Sessions into Identities #5953
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
Conversation
This allows us to retain the OAuth2 info even if the session is deleted. This also provides a foundation for allowing multiple emails, phone numbers, etc, not from an OAuth2 provider.
Setting a password can cause problems with other APIs that expect the password to be null. In addition, it doesn't match the implementation for the other APIs that create a user without a password (Create Magic URL Session, Create Phone Session, Create Anonymous Session, etc).
Until we have a clearer picture of why we need it, it would be best to remove it since it's easier to add it later than to remove it after it's released.
This will allow developers to set up a job to find expired access tokens so they can refresh them.
84f2df6
to
f3fa792
Compare
These secrets can be used to store data from the provider that may or may not be sensitive. For example, this will be used by the migration API when connecting to Firebase to store the service account used for the migration. This data will only be used internally inside Appwrite and not exposed to an end user or developer.
@@ -0,0 +1 @@ | |||
10000 | Get currently logged in user list of identities. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Get currently logged in user list of identities. | |
Get the list of identities for the currently logged in user. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I matched the convention of some of the other descriptions like list-sessions.md so I'll update that too like:
-Get currently logged in user list of active sessions across different devices.
+Get the list of active sessions across different devices for the currently logged in user.
and how about these two?
account/get-prefs.md:
-Get currently logged in user preferences as a key-value object.
+Get the preferences as a key-value object for the currently logged in user
account/get.md:
-Get currently logged in user data as JSON object.
+Get currently logged in user.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yeap lets do it 👍
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
updated!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Lets also implement your recommendations for the descriptions
This has been merged into |
What does this PR do?
This allows us to retain the OAuth2 info even if the session is deleted. This also provides a foundation for allowing multiple emails, phone numbers, etc, not from an OAuth2 provider.
This PR was created to target cl-1.4.x.
In addition, this PR adds a secrets attribute to the identities collection. These secrets can be used to store data from the provider that may or may not be sensitive.
For example, this will be used by the migration API when connecting to Firebase to store the service account used for the migration.
This data will only be used internally inside Appwrite and not exposed to an end user or developer.
Data here is tied to the user identity so that it can be removed when the user or the user identity is removed.
Test Plan
Manual
Related PRs and Issues
Checklist