authentik.sources.scim.views.v2.service_provider_config
SCIM Meta views
1"""SCIM Meta views""" 2 3from django.conf import settings 4from rest_framework.request import Request 5from rest_framework.response import Response 6 7from authentik.sources.scim.views.v2.base import SCIMView 8 9 10class ServiceProviderConfigView(SCIMView): 11 """ServiceProviderConfig, https://ldapwiki.com/wiki/SCIM%20ServiceProviderConfig%20endpoint""" 12 13 # pylint: disable=unused-argument 14 def get(self, request: Request, source_slug: str) -> Response: 15 """Get ServiceProviderConfig""" 16 auth_schemas = [ 17 { 18 "type": "oauthbearertoken", 19 "name": "OAuth Bearer Token", 20 "description": "Authentication scheme using the OAuth Bearer Token Standard", 21 "primary": True, 22 }, 23 ] 24 if settings.TEST or settings.DEBUG: 25 auth_schemas.append( 26 { 27 "type": "httpbasic", 28 "name": "HTTP Basic", 29 "description": "Authentication scheme using HTTP Basic authorization", 30 }, 31 ) 32 return Response( 33 { 34 "schemas": ["urn:ietf:params:scim:schemas:core:2.0:ServiceProviderConfig"], 35 "authenticationSchemes": auth_schemas, 36 "patch": {"supported": True}, 37 "bulk": {"supported": False, "maxOperations": 0, "maxPayloadSize": 0}, 38 "filter": { 39 "supported": True, 40 "maxResults": request.tenant.pagination_default_page_size, 41 }, 42 "changePassword": {"supported": False}, 43 "sort": {"supported": False}, 44 "etag": {"supported": False}, 45 } 46 )
11class ServiceProviderConfigView(SCIMView): 12 """ServiceProviderConfig, https://ldapwiki.com/wiki/SCIM%20ServiceProviderConfig%20endpoint""" 13 14 # pylint: disable=unused-argument 15 def get(self, request: Request, source_slug: str) -> Response: 16 """Get ServiceProviderConfig""" 17 auth_schemas = [ 18 { 19 "type": "oauthbearertoken", 20 "name": "OAuth Bearer Token", 21 "description": "Authentication scheme using the OAuth Bearer Token Standard", 22 "primary": True, 23 }, 24 ] 25 if settings.TEST or settings.DEBUG: 26 auth_schemas.append( 27 { 28 "type": "httpbasic", 29 "name": "HTTP Basic", 30 "description": "Authentication scheme using HTTP Basic authorization", 31 }, 32 ) 33 return Response( 34 { 35 "schemas": ["urn:ietf:params:scim:schemas:core:2.0:ServiceProviderConfig"], 36 "authenticationSchemes": auth_schemas, 37 "patch": {"supported": True}, 38 "bulk": {"supported": False, "maxOperations": 0, "maxPayloadSize": 0}, 39 "filter": { 40 "supported": True, 41 "maxResults": request.tenant.pagination_default_page_size, 42 }, 43 "changePassword": {"supported": False}, 44 "sort": {"supported": False}, 45 "etag": {"supported": False}, 46 } 47 )
ServiceProviderConfig, https://ldapwiki.com/wiki/SCIM%20ServiceProviderConfig%20endpoint
def
get( self, request: rest_framework.request.Request, source_slug: str) -> rest_framework.response.Response:
15 def get(self, request: Request, source_slug: str) -> Response: 16 """Get ServiceProviderConfig""" 17 auth_schemas = [ 18 { 19 "type": "oauthbearertoken", 20 "name": "OAuth Bearer Token", 21 "description": "Authentication scheme using the OAuth Bearer Token Standard", 22 "primary": True, 23 }, 24 ] 25 if settings.TEST or settings.DEBUG: 26 auth_schemas.append( 27 { 28 "type": "httpbasic", 29 "name": "HTTP Basic", 30 "description": "Authentication scheme using HTTP Basic authorization", 31 }, 32 ) 33 return Response( 34 { 35 "schemas": ["urn:ietf:params:scim:schemas:core:2.0:ServiceProviderConfig"], 36 "authenticationSchemes": auth_schemas, 37 "patch": {"supported": True}, 38 "bulk": {"supported": False, "maxOperations": 0, "maxPayloadSize": 0}, 39 "filter": { 40 "supported": True, 41 "maxResults": request.tenant.pagination_default_page_size, 42 }, 43 "changePassword": {"supported": False}, 44 "sort": {"supported": False}, 45 "etag": {"supported": False}, 46 } 47 )
Get ServiceProviderConfig