Use data returned by a CAS server¶
The following methods of CASProvider
are used to extract data from the CAS
responses.
-
CASProvider.
extract_uid
(data)¶ Extract the user uid.
Notes
Each pair
(provider_id, uid)
is unique and related to a single user.Parameters: data (uid (str), extra (dict)) – CAS response. Example: ('alice', {'name': 'Alice'})
Returns: Default to data[0]
, user identifier for the CAS server.Return type: str
-
CASProvider.
extract_common_fields
(data)¶ Extract the data to pass to SOCIALACCOUNT_ADAPTER.populate_user().
Parameters: data (uid (str), extra (dict)) – CAS response. Example: ('alice', {'name': 'Alice'})
Returns: Default: { 'username': extra.get('username', uid), 'email': extra.get('email'), 'first_name': extra.get('first_name'), 'last_name': extra.get('last_name'), 'name': extra.get('name'), }
Return type: dict
-
CASProvider.
extract_email_addresses
(data)¶ Extract the email addresses.
Parameters: data (uid (str), extra (dict)) – CAS response. Example: ('alice', {'name': 'Alice'})
Returns: By default, []
.Example:
[ EmailAddress( email='user@domain.net', verified=True, primary=True, ), EmailAddress( email='alias@domain.net', verified=True, primary=False, ), ]
Return type: list of EmailAddress
-
CASProvider.
extract_extra_data
(data)¶ Extract the data to save to SocialAccount.extra_data.
Parameters: data (uid (str), extra (dict)) – CAS response. Example: ('alice', {'name': 'Alice'})
Returns: By default, data
.Return type: dict