Files
authentik/authentik/providers/radius/api/property_mappings.py
Jens L. 61c6887e82 providers/radius: Add support for custom attributes (#10509)
* unrelated: show logs for failed blueprints

Signed-off-by: Jens Langhammer <jens@goauthentik.io>

* add dictionaries

Signed-off-by: Jens Langhammer <jens@goauthentik.io>

* unrelated: remove some unused api functions

Signed-off-by: Jens Langhammer <jens@goauthentik.io>

* add initial api

Signed-off-by: Jens Langhammer <jens@goauthentik.io>

* placeholder backend

Signed-off-by: Jens Langhammer <jens@goauthentik.io>

* idk

Signed-off-by: Jens Langhammer <jens@goauthentik.io>

* add proper mappings

Signed-off-by: Jens Langhammer <jens@goauthentik.io>

* fix

Signed-off-by: Jens Langhammer <jens@goauthentik.io>

* format

Signed-off-by: Jens Langhammer <jens@goauthentik.io>

* fix tests

Signed-off-by: Jens Langhammer <jens@goauthentik.io>

* fix

Signed-off-by: Jens Langhammer <jens@goauthentik.io>

---------

Signed-off-by: Jens Langhammer <jens@goauthentik.io>
2024-07-25 19:08:33 +02:00

40 lines
1.4 KiB
Python

"""Radius Property mappings API Views"""
from django_filters.filters import AllValuesMultipleFilter
from django_filters.filterset import FilterSet
from drf_spectacular.types import OpenApiTypes
from drf_spectacular.utils import extend_schema_field
from rest_framework.viewsets import ModelViewSet
from authentik.core.api.property_mappings import PropertyMappingSerializer
from authentik.core.api.used_by import UsedByMixin
from authentik.providers.radius.models import RadiusProviderPropertyMapping
class RadiusProviderPropertyMappingSerializer(PropertyMappingSerializer):
"""RadiusProviderPropertyMapping Serializer"""
class Meta:
model = RadiusProviderPropertyMapping
fields = PropertyMappingSerializer.Meta.fields
class RadiusProviderPropertyMappingFilter(FilterSet):
"""Filter for RadiusProviderPropertyMapping"""
managed = extend_schema_field(OpenApiTypes.STR)(AllValuesMultipleFilter(field_name="managed"))
class Meta:
model = RadiusProviderPropertyMapping
fields = "__all__"
class RadiusProviderPropertyMappingViewSet(UsedByMixin, ModelViewSet):
"""RadiusProviderPropertyMapping Viewset"""
queryset = RadiusProviderPropertyMapping.objects.all()
serializer_class = RadiusProviderPropertyMappingSerializer
filterset_class = RadiusProviderPropertyMappingFilter
search_fields = ["name"]
ordering = ["name"]