콘텐츠로 이동

도메인 관리

개요

도메인은 각 사이트의 기본 단위이며, 도메인별로 독립적인 설정과 관리가 가능합니다.

도메인 구조

graph TD
    A[도메인] --> B[기본 정보]
    A --> C[수당 설정]
    A --> D[사용자 관리]

    B --> B1[도메인 이름]
    B --> B2[사이트 제목]
    B --> B3[관리자 입금 주소]
    B --> B4[SNP 충전 금액]

    C --> C1[최대 추천 단계]
    C --> C2[단계별 수당 비율]

    D --> D1[도메인 관리자]
    D --> D2[일반 사용자]

API 권한 구조

graph TD
    A[권한 레벨] --> B[SUPER_ADMIN]
    A --> C[DOMAIN_ADMIN]
    A --> D[DOMAIN_USER]

    B --> B1[전체 도메인 관리]
    B --> B2[도메인 생성/삭제]
    B --> B3[모든 설정 변경]

    C --> C1[자신의 도메인 관리]
    C --> C2[도메인 설정 변경]
    C --> C3[사용자 관리]

    D --> D1[도메인 정보 조회]

API 엔드포인트

도메인 생성

POST /v1/domains
Authorization: Bearer {access_token}

요청 예시:

{
  "name": "example.com",
  "title": "Example Site",
  "adminWalletAddress": "TRx...",
  "snpChargeAmount": 1000,
  "maxReferralLevel": 10,
  "referralRates": {
    "1": 10,
    "2": 5,
    "3": 3
  }
}

도메인 목록 조회

GET /v1/domains
Authorization: Bearer {access_token}

응답 예시:

{
  "domains": [
    {
      "name": "example.com",
      "title": "Example Site",
      "adminWalletAddress": "TRx...",
      "snpChargeAmount": 1000,
      "maxReferralLevel": 10,
      "referralRates": {
        "1": 10,
        "2": 5,
        "3": 3
      },
      "isActive": true,
      "createdAt": "2024-03-20T..."
    }
  ]
}

도메인 상세 조회

GET /v1/domains/{name}
Authorization: Bearer {access_token}

도메인 설정 수정

PATCH /v1/domains/{name}
Authorization: Bearer {access_token}

요청 예시:

{
  "title": "Updated Site Title",
  "snpChargeAmount": 2000,
  "referralRates": {
    "1": 15,
    "2": 7,
    "3": 4
  }
}

도메인 삭제

DELETE /v1/domains/{name}
Authorization: Bearer {access_token}

권한별 기능

SUPER_ADMIN

  • 모든 도메인 생성/수정/삭제 가능
  • 전체 도메인 목록 조회
  • 모든 도메인의 설정 변경 가능
  • 도메인 관리자 지정 가능

DOMAIN_ADMIN

  • 자신의 도메인 정보 조회/수정
  • 도메인 사용자 관리
  • 수당 비율 설정
  • 통계 조회

DOMAIN_USER

  • 도메인 기본 정보 조회만 가능

도메인 설정 항목

  1. 기본 정보
  2. 도메인 이름 (고유값)
  3. 사이트 제목
  4. 관리자 입금 주소 (TRON)
  5. SNP 충전 금액

  6. 추천 시스템 설정

  7. 최대 추천 단계 (1-30)
  8. 단계별 수당 비율 (%)
  9. 기본값:

    • 1단계: 10%
    • 2단계: 5%
    • 3단계: 3%
    • 4-30단계: 1%
  10. 상태 관리

  11. 활성화 여부
  12. 생성일/수정일

보안 고려사항

  1. 접근 제어
  2. 모든 API는 JWT 인증 필요
  3. 권한별 접근 제한 엄격히 적용
  4. 도메인 관리자는 자신의 도메인만 접근 가능

  5. 데이터 검증

  6. 도메인 이름 유효성 검사
  7. 수당 비율 범위 검증 (0-100%)
  8. TRON 주소 형식 검증

  9. 감사 로그

  10. 주요 설정 변경 이력 기록
  11. 관리자 작업 로그 유지