User Story
As a user, I want the platform to know who I am for a project so that I can do things relative to the project personalized to me.
Description
We need a way to access and change project user info via papi:
New PDP mandatory data type UserInfo - can mandatory data types allow flexible return types with additional properties?
Selector is string user id
Special user id __anonymous__ gives generic user information for a user that is not identified. Leave the choice for how to treat anonymous user to the project to implement. If no __anonymous__ user is defined, no permissions or maybe read-only
getUserInfo returns project user info (as much or little as the PDP wants, I suppose. It can provide very little info or more info about users if it wants more privacy or more information associated like role)
If requesting __anonymous__, should return however the project wants to treat anonymous users when requesting
If requesting a user id that is unknown, Project Data Provider can return whatever it wants as appropriate to the project or can throw to indicate the user should have no permissions
setUserInfo is a partial set - if they provide only some of the project user info like name, it will only update what they provided.
New PDP mandatory data type UserInfos
If selector is undefined, gives project user info for all defined users including __anonymous__ if defined
If selector is array of strings, gives project user info for users with given ids
setUserInfos is a partial set - if they provide only some of the project user info like name, it will only update what they provided.
Probably implement in some fake way on the hello world pdp so we have an implementation to test
User Story As a user, I want the platform to know who I am for a project so that I can do things relative to the project personalized to me.
Description
We need a way to access and change project user info via
papi
:UserInfo
- can mandatory data types allow flexible return types with additional properties?__anonymous__
gives generic user information for a user that is not identified. Leave the choice for how to treat anonymous user to the project to implement. If no__anonymous__
user is defined, no permissions or maybe read-onlygetUserInfo
returns project user info (as much or little as the PDP wants, I suppose. It can provide very little info or more info about users if it wants more privacy or more information associated like role)__anonymous__
, should return however the project wants to treat anonymous users when requestingsetUserInfo
is a partial set - if they provide only some of the project user info like name, it will only update what they provided.UserInfos
__anonymous__
if definedsetUserInfos
is a partial set - if they provide only some of the project user info like name, it will only update what they provided.Platform.Bible User Identity Design