OAuth Application 어드민 관리 UI

ID: 1ceca5bc-6748-41cf-9248-b2f1d11fd835

높음 완료

## 작업 내용
1. 어드민 영역에 OAuth Application 관리 컨트롤러 생성
- `Admin::OauthApplicationsController` (CRUD)
2. 어드민 라우트 추가 (`admin/oauth_applications`)
3. 뷰 생성:
- index: 등록된 OAuth Application 목록 (이름, client_id, redirect_uri, scopes)
- new/edit: Application 등록/수정 폼
- show: Application 상세 (client_id, client_secret 표시, secret은 생성 시에만 표시)
4. 기존 어드민 레이아웃/스타일(Tailwind) 활용
5. 기존 어드민 사이드바에 메뉴 추가

## 참고 파일
- `app/controllers/admin/` — 기존 어드민 컨트롤러 패턴 참고
- `app/views/admin/` — 기존 어드민 뷰 패턴 참고
- `app/views/layouts/admin.html.erb` — 어드민 레이아웃
- `app/helpers/icon_helper.rb` — 아이콘 헬퍼

## 의존성
- backend-dev의 doorkeeper 설치 완료 후 작업 가능
- Doorkeeper::Application 모델 사용

## 완료 기준
- 어드민에서 OAuth Application 생성/수정/삭제 가능
- client_id/secret 발급 및 표시
- scopes, redirect_uri 설정 가능

첨부 이미지

이미지 추가 (Ctrl+V로 붙여넣기 또는 클릭)

JPEG, PNG, GIF, WebP / 최대 10MB

담당자: admin-dev
생성일: 2026년 03월 01일 00:13

활동 로그

  • 팀리드 상태 변경: 리뷰 → 완료

    2026년 03월 01일 00:26:24

  • A
    admin-dev 상태 변경: 할 일 → 리뷰

    2026년 03월 01일 00:25:25

  • A
    admin-dev OAuth Application 어드민 관리 UI 구현 완료

    2026년 03월 01일 00:25:25

    상세 보기

    ## 변경 사항

    ### 새로 생성한 파일
    - `app/controllers/admin/oauth_applications_controller.rb` - CRUD 컨트롤러 (index, show, new, create, edit, update, destroy)
    - `app/views/admin/oauth_applications/index.html.erb` - 목록 (검색, 정렬, 페이지네이션)
    - `app/views/admin/oauth_applications/show.html.erb` - 상세 (client_id, secret 경고, 토큰 목록)
    - `app/views/admin/oauth_applications/new.html.erb` - 생성 폼
    - `app/views/admin/oauth_applications/edit.html.erb` - 수정 폼
    - `app/views/admin/oauth_applications/_form.html.erb` - 공유 폼 partial
    - `test/controllers/admin/oauth_applications_controller_test.rb` - 16개 테스트 (전체 통과)

    ### 수정한 파일
    - `config/routes.rb` - `resources :oauth_applications` 추가
    - `app/views/admin/shared/_sidebar.html.erb` - OAuth 앱 메뉴 추가
    - `app/views/admin/shared/_nav_item.html.erb` - OAuth 아이콘(key) 추가
    - `config/locales/ko.yml` - 한국어 번역 추가

    ### 주요 기능
    - Doorkeeper::Application 모델 CRUD
    - client_secret은 생성 직후에만 flash로 1회 표시
    - 이름 검색, 정렬(name, created_at, confidential)
    - Access Token 목록 (최근 10개, 상태 표시)
    - 기존 어드민 UI 패턴(Tailwind) 일관성 유지
    - 권한 보호 (admin only)

    ### 테스트 결과
    - 16 tests, 50 assertions, 0 failures, 0 errors

  • A
    admin-dev 작업 시작 - 어드민 OAuth App UI

    2026년 03월 01일 00:19:50

    상세 보기

    ## 작업 계획
    - Admin::OauthApplicationsController CRUD 생성
    - 뷰 파일 생성 (index, show, new, edit, _form)
    - 라우트 추가
    - 사이드바 네비게이션 메뉴 추가
    - 한국어 locale 추가