authentik.enterprise.providers.microsoft_entra.api.users

MicrosoftEntraProviderUser API Views

 1"""MicrosoftEntraProviderUser API Views"""
 2
 3from rest_framework import mixins
 4from rest_framework.viewsets import GenericViewSet
 5
 6from authentik.core.api.groups import PartialUserSerializer
 7from authentik.core.api.used_by import UsedByMixin
 8from authentik.core.api.utils import ModelSerializer
 9from authentik.enterprise.providers.microsoft_entra.models import MicrosoftEntraProviderUser
10from authentik.lib.sync.outgoing.api import OutgoingSyncConnectionCreateMixin
11
12
13class MicrosoftEntraProviderUserSerializer(ModelSerializer):
14    """MicrosoftEntraProviderUser Serializer"""
15
16    user_obj = PartialUserSerializer(source="user", read_only=True)
17
18    class Meta:
19
20        model = MicrosoftEntraProviderUser
21        fields = [
22            "id",
23            "microsoft_id",
24            "user",
25            "user_obj",
26            "provider",
27            "attributes",
28        ]
29        extra_kwargs = {"attributes": {"read_only": True}}
30
31
32class MicrosoftEntraProviderUserViewSet(
33    OutgoingSyncConnectionCreateMixin,
34    mixins.CreateModelMixin,
35    mixins.RetrieveModelMixin,
36    mixins.DestroyModelMixin,
37    UsedByMixin,
38    mixins.ListModelMixin,
39    GenericViewSet,
40):
41    """MicrosoftEntraProviderUser Viewset"""
42
43    queryset = MicrosoftEntraProviderUser.objects.all().select_related("user")
44    serializer_class = MicrosoftEntraProviderUserSerializer
45    filterset_fields = ["provider__id", "user__username", "user__id"]
46    search_fields = ["provider__name", "user__username"]
47    ordering = ["user__username"]
class MicrosoftEntraProviderUserSerializer(authentik.core.api.utils.ModelSerializer):
14class MicrosoftEntraProviderUserSerializer(ModelSerializer):
15    """MicrosoftEntraProviderUser Serializer"""
16
17    user_obj = PartialUserSerializer(source="user", read_only=True)
18
19    class Meta:
20
21        model = MicrosoftEntraProviderUser
22        fields = [
23            "id",
24            "microsoft_id",
25            "user",
26            "user_obj",
27            "provider",
28            "attributes",
29        ]
30        extra_kwargs = {"attributes": {"read_only": True}}

MicrosoftEntraProviderUser Serializer

user_obj
class MicrosoftEntraProviderUserSerializer.Meta:
19    class Meta:
20
21        model = MicrosoftEntraProviderUser
22        fields = [
23            "id",
24            "microsoft_id",
25            "user",
26            "user_obj",
27            "provider",
28            "attributes",
29        ]
30        extra_kwargs = {"attributes": {"read_only": True}}
fields = ['id', 'microsoft_id', 'user', 'user_obj', 'provider', 'attributes']
extra_kwargs = {'attributes': {'read_only': True}}
class MicrosoftEntraProviderUserViewSet(authentik.lib.sync.outgoing.api.OutgoingSyncConnectionCreateMixin, rest_framework.mixins.CreateModelMixin, rest_framework.mixins.RetrieveModelMixin, rest_framework.mixins.DestroyModelMixin, authentik.core.api.used_by.UsedByMixin, rest_framework.mixins.ListModelMixin, rest_framework.viewsets.GenericViewSet):
33class MicrosoftEntraProviderUserViewSet(
34    OutgoingSyncConnectionCreateMixin,
35    mixins.CreateModelMixin,
36    mixins.RetrieveModelMixin,
37    mixins.DestroyModelMixin,
38    UsedByMixin,
39    mixins.ListModelMixin,
40    GenericViewSet,
41):
42    """MicrosoftEntraProviderUser Viewset"""
43
44    queryset = MicrosoftEntraProviderUser.objects.all().select_related("user")
45    serializer_class = MicrosoftEntraProviderUserSerializer
46    filterset_fields = ["provider__id", "user__username", "user__id"]
47    search_fields = ["provider__name", "user__username"]
48    ordering = ["user__username"]

MicrosoftEntraProviderUser Viewset

queryset = <QuerySet []>
serializer_class = <class 'MicrosoftEntraProviderUserSerializer'>
filterset_fields = ['provider__id', 'user__username', 'user__id']
search_fields = ['provider__name', 'user__username']
ordering = ['user__username']
name = None
description = None
suffix = None
detail = None
basename = None