Code development platform for open source projects from the European Union institutions

Skip to content
Snippets Groups Projects

Add new SAML Configuration for a Mapping

Merged Vincent SIMONIN requested to merge saml_config into main
1 unresolved thread
8 files
+ 510
71
Compare changes
  • Side-by-side
  • Inline
Files
8
from rest_framework import serializers
from ..models import Mapping, HttpHeader
from ..models import Mapping, HttpHeader, SamlConfig
from netbox.api.serializers import NetBoxModelSerializer, WritableNestedSerializer
from pprint import pp
class NestedMappingSerializer(WritableNestedSerializer):
url = serializers.HyperlinkedIdentityField(
view_name='plugins-api:netbox_rps_plugin-api:mapping-detail'
view_name="plugins-api:netbox_rps_plugin-api:mapping-detail"
)
class Meta:
model = Mapping
fields = ('id', 'url', 'display')
fields = ("id", "url", "display")
class NestedSamlConfigSerializer(WritableNestedSerializer):
url = url = serializers.HyperlinkedIdentityField(
view_name="plugins-api:netbox_rps_plugin-api:samlconfig-detail"
)
class Meta:
model = SamlConfig
fields = (
"id",
"url",
"acs_url",
"logout_url",
"force_nauth",
)
class SamlConfigSerializer(NetBoxModelSerializer):
url = serializers.HyperlinkedIdentityField(
view_name="plugins-api:netbox_rps_plugin-api:samlconfig-detail"
)
mapping = NestedMappingSerializer()
class Meta:
model = SamlConfig
fields = (
"id",
"url",
"acs_url",
"logout_url",
"force_nauth",
"mapping",
"custom_fields",
"created",
"last_updated",
"tags",
)
class HttpHeaderSerializer(NetBoxModelSerializer):
url = serializers.HyperlinkedIdentityField(
view_name='plugins-api:netbox_rps_plugin-api:httpheader-detail'
view_name="plugins-api:netbox_rps_plugin-api:httpheader-detail"
)
mapping = NestedMappingSerializer()
class Meta:
model = HttpHeader
fields = ('id', 'url', 'name', 'value', 'apply_to', 'mapping', 'custom_fields', 'created', 'last_updated', 'tags')
fields = (
"id",
"url",
"name",
"value",
"apply_to",
"mapping",
"custom_fields",
"created",
"last_updated",
"tags",
)
class NestedHttpHeaderSerializer(WritableNestedSerializer):
url = serializers.HyperlinkedIdentityField(
view_name='plugins-api:netbox_rps_plugin-api:httpheader-detail'
view_name="plugins-api:netbox_rps_plugin-api:httpheader-detail"
)
class Meta:
model = HttpHeader
fields = ('id', 'url', 'name', 'value', 'apply_to')
fields = ("id", "url", "name", "value", "apply_to")
class MappingSerializer(NetBoxModelSerializer):
url = serializers.HyperlinkedIdentityField(
view_name='plugins-api:netbox_rps_plugin-api:mapping-detail'
view_name="plugins-api:netbox_rps_plugin-api:mapping-detail"
)
http_headers = NestedHttpHeaderSerializer(many=True, read_only=True)
saml_config = NestedSamlConfigSerializer(read_only=True)
class Meta:
model = Mapping
fields = (
'id',
'url',
'display',
'source',
'target',
'authentication',
'testingpage',
'webdav',
'Comment',
'custom_fields',
'created',
'last_updated',
'tags',
'http_headers'
"id",
"url",
"source",
"target",
"authentication",
"testingpage",
"webdav",
"Comment",
"custom_fields",
"created",
"last_updated",
"tags",
"http_headers",
"saml_config",
)
Loading