All checks were successful
Build And Test / build-and-push (push) Successful in 2m7s
- KVMServer 모델 추가 (멀티 서버 지원) - 서버별 SSH 키 암호화 저장 - msa-django-libvirt 연동용 SSH 정보 조회 API Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
46 lines
2.9 KiB
Python
46 lines
2.9 KiB
Python
from django.urls import path
|
|
from .views import (
|
|
RegisterView, MeView, CustomTokenObtainPairView,
|
|
SSHKeyUploadView, SSHKeyInfoView, SSHKeyRetrieveView,
|
|
UserListView, UserUpdateView,
|
|
NHNCloudCredentialsView, NHNCloudPasswordView,
|
|
# NHN Cloud 멀티 프로젝트 지원
|
|
NHNCloudProjectListView, NHNCloudProjectDetailView,
|
|
NHNCloudProjectActivateView, NHNCloudProjectPasswordView,
|
|
# KVM 서버 관리
|
|
KVMServerListView, KVMServerDetailView,
|
|
KVMServerActivateView, KVMServerSSHKeyView, KVMServerSSHKeyUploadView,
|
|
)
|
|
from rest_framework_simplejwt.views import TokenObtainPairView, TokenRefreshView, TokenVerifyView
|
|
from .views_jwks import jwks_view # django-jwks
|
|
|
|
urlpatterns = [
|
|
path('register/', RegisterView.as_view(), name='register'),
|
|
# path('login/', TokenObtainPairView.as_view(), name='token_obtain_pair'),
|
|
path('login/', CustomTokenObtainPairView.as_view(), name='token_obtain_pair'),
|
|
path('token/refresh/', TokenRefreshView.as_view(), name='token_refresh'),
|
|
path('verify/', TokenVerifyView.as_view(), name='token_verify'),
|
|
path('me/', MeView.as_view(), name='me'),
|
|
path("ssh-key/", SSHKeyUploadView.as_view(), name="ssh_key_upload"),
|
|
path("ssh-key/info/", SSHKeyInfoView.as_view(), name="ssh_key_info"),
|
|
path("ssh-key/view/", SSHKeyRetrieveView.as_view(), name="ssh_key_retrieve"),
|
|
path(".well-known/jwks.json", jwks_view, name="jwks"), # django-jwks
|
|
# 관리자용 사용자 관리 API
|
|
path('users/', UserListView.as_view(), name='user_list'),
|
|
path('users/<int:pk>/', UserUpdateView.as_view(), name='user_update'),
|
|
# NHN Cloud 자격증명 API (기존 - 단일 프로젝트 호환)
|
|
path('nhn-cloud/', NHNCloudCredentialsView.as_view(), name='nhn_cloud_credentials'),
|
|
path('nhn-cloud/password/', NHNCloudPasswordView.as_view(), name='nhn_cloud_password'),
|
|
# NHN Cloud 프로젝트 API (멀티 프로젝트 지원)
|
|
path('nhn-cloud/projects/', NHNCloudProjectListView.as_view(), name='nhn_cloud_projects'),
|
|
path('nhn-cloud/projects/<int:project_id>/', NHNCloudProjectDetailView.as_view(), name='nhn_cloud_project_detail'),
|
|
path('nhn-cloud/projects/<int:project_id>/activate/', NHNCloudProjectActivateView.as_view(), name='nhn_cloud_project_activate'),
|
|
path('nhn-cloud/projects/<int:project_id>/password/', NHNCloudProjectPasswordView.as_view(), name='nhn_cloud_project_password'),
|
|
# KVM 서버 관리 API (멀티 서버 지원)
|
|
path('kvm-servers/', KVMServerListView.as_view(), name='kvm_server_list'),
|
|
path('kvm-servers/<int:server_id>/', KVMServerDetailView.as_view(), name='kvm_server_detail'),
|
|
path('kvm-servers/<int:server_id>/activate/', KVMServerActivateView.as_view(), name='kvm_server_activate'),
|
|
path('kvm-servers/<int:server_id>/ssh-key/', KVMServerSSHKeyView.as_view(), name='kvm_server_ssh_key'),
|
|
path('kvm-servers/<int:server_id>/ssh-key/upload/', KVMServerSSHKeyUploadView.as_view(), name='kvm_server_ssh_key_upload'),
|
|
]
|