2020-11-15 21:42:02 +00:00
|
|
|
---
|
2021-10-20 14:01:41 +00:00
|
|
|
title: User
|
2020-11-15 21:42:02 +00:00
|
|
|
---
|
|
|
|
|
2021-10-20 14:01:41 +00:00
|
|
|
## Attributes
|
|
|
|
|
|
|
|
### `goauthentik.io/user/can-change-username`
|
|
|
|
|
|
|
|
Optional flag, when set to false prevents the user from changing their own username.
|
|
|
|
|
2021-10-27 09:54:19 +00:00
|
|
|
### `goauthentik.io/user/can-change-email`
|
|
|
|
|
|
|
|
Optional flag, when set to false prevents the user from changing their own email.
|
|
|
|
|
2021-10-20 14:01:41 +00:00
|
|
|
### `goauthentik.io/user/token-expires`:
|
|
|
|
|
|
|
|
Optional flag, when set to false, Tokens created by the user will not expire.
|
|
|
|
|
|
|
|
### `goauthentik.io/user/debug`:
|
|
|
|
|
|
|
|
See [Troubleshooting access problems](../troubleshooting/access.md), when set, the user gets a more detailed explanation of access decisions.
|
|
|
|
|
|
|
|
## Object attributes
|
|
|
|
|
2020-11-15 21:42:02 +00:00
|
|
|
The User object has the following attributes:
|
|
|
|
|
2021-03-02 21:10:54 +00:00
|
|
|
- `username`: User's username.
|
|
|
|
- `email` User's email.
|
|
|
|
- `name` User's display name.
|
|
|
|
- `is_staff` Boolean field if user is staff.
|
|
|
|
- `is_active` Boolean field if user is active.
|
|
|
|
- `date_joined` Date user joined/was created.
|
|
|
|
- `password_change_date` Date password was last changed.
|
2021-10-20 14:01:41 +00:00
|
|
|
- `attributes` Dynamic attributes, see above
|
|
|
|
- `group_attributes()` Merged attributes of all groups the user is member of and the user's own attributes.
|
2021-03-02 21:10:54 +00:00
|
|
|
- `ak_groups` This is a queryset of all the user's groups.
|
2020-11-15 21:42:02 +00:00
|
|
|
|
2021-05-29 19:47:35 +00:00
|
|
|
You can do additional filtering like
|
|
|
|
```python
|
|
|
|
user.ak_groups.filter(name__startswith='test')
|
|
|
|
```
|
|
|
|
see [here](https://docs.djangoproject.com/en/3.1/ref/models/querysets/#id4)
|
2020-11-15 21:42:02 +00:00
|
|
|
|
2021-05-29 19:47:35 +00:00
|
|
|
To get the name of all groups, you can do
|
|
|
|
```python
|
|
|
|
[group.name for group in user.ak_groups.all()]
|
|
|
|
```
|
2020-11-15 21:42:02 +00:00
|
|
|
|
|
|
|
## Examples
|
|
|
|
|
|
|
|
List all the User's group names:
|
|
|
|
|
|
|
|
```python
|
2020-12-05 21:08:42 +00:00
|
|
|
for group in user.ak_groups.all():
|
2020-11-15 21:42:02 +00:00
|
|
|
yield group.name
|
|
|
|
```
|