authentik.enterprise.reports.serializers

 1from rest_framework.fields import CharField, IntegerField, SerializerMethodField
 2
 3from authentik.core.api.users import UserSerializer
 4from authentik.core.models import User
 5from authentik.events.api.events import EventSerializer
 6
 7
 8class ExportUserSerializer(UserSerializer):
 9    """Serializer for exporting users"""
10
11    groups = SerializerMethodField(source="get_groups")
12
13    def get_groups(self, instance: User) -> str:
14        return ",".join([group.name for group in instance.groups.all()])
15
16    class Meta(UserSerializer.Meta):
17        fields = [f for f in UserSerializer.Meta.fields if f != "groups_obj"] + ["groups"]
18
19
20class ExportEventSerializer(EventSerializer):
21    """Serializer for exporting events"""
22
23    user_pk = IntegerField(source="user.pk", read_only=True)
24    username = CharField(source="user.username", read_only=True)
25    email = CharField(source="user.email", read_only=True)
26
27    class Meta(EventSerializer.Meta):
28        fields = [f for f in EventSerializer.Meta.fields if f != "user"] + [
29            "user_pk",
30            "username",
31            "email",
32        ]
class ExportUserSerializer(authentik.core.api.users.UserSerializer):
 9class ExportUserSerializer(UserSerializer):
10    """Serializer for exporting users"""
11
12    groups = SerializerMethodField(source="get_groups")
13
14    def get_groups(self, instance: User) -> str:
15        return ",".join([group.name for group in instance.groups.all()])
16
17    class Meta(UserSerializer.Meta):
18        fields = [f for f in UserSerializer.Meta.fields if f != "groups_obj"] + ["groups"]

Serializer for exporting users

groups
def get_groups(self, instance: authentik.core.models.User) -> str:
14    def get_groups(self, instance: User) -> str:
15        return ",".join([group.name for group in instance.groups.all()])
class ExportUserSerializer.Meta(authentik.core.api.users.UserSerializer.Meta):
17    class Meta(UserSerializer.Meta):
18        fields = [f for f in UserSerializer.Meta.fields if f != "groups_obj"] + ["groups"]
fields = ['pk', 'username', 'name', 'is_active', 'last_login', 'date_joined', 'is_superuser', 'groups', 'roles', 'roles_obj', 'email', 'avatar', 'attributes', 'uid', 'path', 'type', 'uuid', 'password_change_date', 'last_updated', 'groups']
class ExportEventSerializer(authentik.events.api.events.EventSerializer):
21class ExportEventSerializer(EventSerializer):
22    """Serializer for exporting events"""
23
24    user_pk = IntegerField(source="user.pk", read_only=True)
25    username = CharField(source="user.username", read_only=True)
26    email = CharField(source="user.email", read_only=True)
27
28    class Meta(EventSerializer.Meta):
29        fields = [f for f in EventSerializer.Meta.fields if f != "user"] + [
30            "user_pk",
31            "username",
32            "email",
33        ]

Serializer for exporting events

user_pk
username
email
class ExportEventSerializer.Meta(authentik.events.api.events.EventSerializer.Meta):
28    class Meta(EventSerializer.Meta):
29        fields = [f for f in EventSerializer.Meta.fields if f != "user"] + [
30            "user_pk",
31            "username",
32            "email",
33        ]
fields = ['pk', 'action', 'app', 'context', 'client_ip', 'created', 'expires', 'brand', 'user_pk', 'username', 'email']