PublicShow sourceuser_profile.pl -- User profile configuration

Configure maintenance of user profiles. This config file may be optionally enabled if one or more, notably federated, authentication modules are loaded. It maintains a database of identified users.

The user profile infra structure depends on the pack profile, which is linked to SWISH as a git submodule. To use profiles, run

git submodule update --init pack/profile
Source user_profile:attribute(?Name, ?Type, ?Options) is nondet[multifile]
Declare profile properties.
Source user_profile:attribute_mapping(+ProfileAttr, +IDProvider, -IDProviderAttr)[multifile]
Provide a mapping from profile attributed (e.g., oauth2 scopes) to our profile attributes. This is used to fill the initial profile after a user was identified by IDProvider.