Files
jumpserver/apps/authentication/urls/api_urls.py
Jiangjie Bai 0d15c50e1f Feat authcert (#16856)
* feat: add auth cert config

* feat: add auth cert api driver.js

* feat: add auth cert enroll api - draft

* feat: add auth cert demo config yaml

* feat: finished gmssl sign user csr to cert

* feat: support auth cert login

* feat: support auth cert login

* perf: user login via cert, and driver config

* feat: user profile api add can_cert_auth field

* feat: add cert auth log

* feat: add cert auth support check acl, ip_block etc.

* feat: cert auth support mfa check

* feat: cert auth support mfa check

* feat: little perf

* feat: cert config add i18n

* feat: cert login html add i18n

* feat: add i18n lina

* feat: add driver config demo

* feat: add cert auth to settings

* feat: add gmssl dockerfile-ee

* feat: add user source choices

* feat: remove gmssl-python sdk
2026-05-25 16:41:47 +08:00

61 lines
3.0 KiB
Python

# coding:utf-8
#
from django.urls import path
from django.conf import settings
from rest_framework.routers import DefaultRouter
from .. import api
from ..backends.passkey.urls import urlpatterns as passkey_urlpatterns
from ..backends.cert.api_urls import urlpatterns as cert_api_urlpatterns
app_name = 'authentication'
router = DefaultRouter()
router.register('access-keys', api.AccessKeyViewSet, 'access-key')
router.register('sso', api.SSOViewSet, 'sso')
router.register('temp-tokens', api.TempTokenViewSet, 'temp-token')
router.register('connection-token', api.ConnectionTokenViewSet, 'connection-token')
router.register('super-connection-token', api.SuperConnectionTokenViewSet, 'super-connection-token')
router.register('admin-connection-token', api.AdminConnectionTokenViewSet, 'admin-connection-token')
router.register('confirm', api.UserConfirmationViewSet, 'confirm')
router.register('ssh-key', api.SSHkeyViewSet, 'ssh-key')
router.register('access-tokens', api.AccessTokenViewSet, 'access-token')
urlpatterns = [
path('<str:backend>/qr/unbind/', api.QRUnBindForUserApi.as_view(), name='qr-unbind'),
path('<str:backend>/qr/unbind/<uuid:user_id>/', api.QRUnBindForAdminApi.as_view(), name='qr-unbind-for-admin'),
path('feishu/event/subscription/callback/', api.FeiShuEventSubscriptionCallback.as_view(),
name='feishu-event-subscription-callback'),
path('lark/event/subscription/callback/', api.LarkEventSubscriptionCallback.as_view(),
name='lark-event-subscription-callback'),
path('face/callback/', api.FaceCallbackApi.as_view(), name='face-callback'),
path('face/context/', api.FaceContextApi.as_view(), name='face-context'),
path('face-monitor/callback/', api.FaceMonitorCallbackApi.as_view(), name='face-monitor-callback'),
path('face-monitor/context/', api.FaceMonitorContextApi.as_view(), name='face-monitor-context'),
path('auth/', api.TokenCreateApi.as_view(), name='user-auth'),
path('confirm-oauth/', api.ConfirmBindORUNBindOAuth.as_view(), name='confirm-oauth'),
path('tokens/', api.TokenCreateApi.as_view(), name='auth-token'),
path('mfa/verify/', api.MFAChallengeVerifyApi.as_view(), name='mfa-verify'),
path('mfa/challenge/', api.MFAChallengeVerifyApi.as_view(), name='mfa-challenge'),
path('mfa/select/', api.MFASendCodeApi.as_view(), name='mfa-select'),
path('mfa/send-code/', api.MFASendCodeApi.as_view(), name='mfa-send-code'),
path('password/reset-code/', api.UserResetPasswordSendCodeApi.as_view(), name='reset-password-code'),
path('password/verify/', api.UserPasswordVerifyApi.as_view(), name='user-password-verify'),
path('login-confirm-ticket/status/', api.TicketStatusApi.as_view(), name='login-confirm-ticket-status'),
path('user-session/', api.UserSessionApi.as_view(), name='user-session'),
]
if settings.AUTH_CUSTOM_SSO:
urlpatterns += [
path('custom-sso/login/', api.CustomSSOLoginAPIView.as_view(), name='custom-sso-login'),
]
if settings.AUTH_CERT:
urlpatterns += cert_api_urlpatterns
urlpatterns += router.urls + passkey_urlpatterns