네이버웍스

다운로드 3
업데이트 2026. 4. 28.

설치 매뉴얼

개요

NAVER WORKS 앱은 NAVER WORKS API를 통해 조직의 부서 구조와 임직원 정보를 소나 쿼리로 조회할 수 있는 확장 명령어(naverworks-departments, naverworks-employees)를 제공합니다. 실험실 앱의 sonar-sync-* 명령어와 함께 사용하면 NAVER WORKS 조직도를 소나 인사 정보와 주기적으로 동기화할 수 있습니다.

적용 범위

Note
소나 4.0 이상에서 동작합니다. NAVER WORKS는 상용 환경(worksmobile.com)을 기준으로 합니다.

요구 사항

항목요구 사항비고
NAVER WORKS 계정 권한Developer Console 접근 가능한 관리자 계정서비스 계정 발급 시 관리자 알림 전송됨
발급 필요 자격증명Client ID, Client Secret, Service Account, Private KeyNAVER WORKS Developer Console에서 발급
네트워크 허용HTTPS/443 (소나 → auth.worksmobile.com, www.worksapis.com, Outbound)방화벽 정책 반영 필요
로그프레소 소나 권한관리자 권한 이상의 계정접속 프로파일 메뉴 접근

NAVER WORKS 설정

Note
NAVER WORKS Developer Console에서 소나와의 연동에 필요한 자격증명을 발급합니다. 이 정보는 소나의 접속 프로파일에 사용됩니다.

단계 1: 클라이언트 앱 추가

NAVER WORKS Developer Console > API > ClientApp에 접속합니다.

Developer Console ClientApp 목록

앱 추가(+)를 클릭하면 추가 다이얼로그가 열립니다. OAuth 연동을 선택하고 앱 이름을 입력한 뒤 확인을 클릭합니다.

앱 추가 다이얼로그

Tip
앱 이름은 20자 이내, 기존 클라이언트와 중복되지 않아야 합니다. 이름 입력 후 확인을 클릭하면 Client ID가 생성됩니다.

단계 2: Client ID · Client Secret 확인

앱이 생성되면 다시 ClientApp 메뉴로 이동한 후 생성된 앱을 클릭합니다.

상세 화면에서 인증 정보 항목의 Client IDClient Secret을 확인합니다. 각 항목의 복사 버튼으로 값을 안전한 곳에 보관합니다.

Client ID / Client Secret 확인

Note
Client Secret은 이 화면에서만 전체 값을 확인할 수 있습니다. 반드시 즉시 복사해 보관하세요.

단계 3: OAuth Scope 추가

같은 앱 상세 화면에서 OAuth Scopes 항목의 관리 버튼을 클릭합니다.

OAuth Scopes 관리 버튼 위치

scope 선택 모달에서 directory.read 를 체크하고 저장합니다.

API scope 선택 — directory.read 체크

저장 후 앱 상세 화면의 OAuth Scopes 항목에 directory.read가 표시되면 정상입니다.

OAuth Scopes에 directory.read 추가된 상태

단계 4: 서비스 계정 발급

같은 앱 상세 화면을 아래로 스크롤하면 서비스 계정 인증 정보 섹션이 있습니다. Service Account 항목의 발급 버튼을 클릭합니다.

서비스 계정 발급 버튼

Note
서비스 계정 발급 시 NAVER WORKS 도메인 관리자에게 알림이 전송됩니다.

발급이 완료되면 {영문자}.serviceaccount@{도메인}.com 형식의 이메일 주소가 표시됩니다. 복사 버튼으로 값을 안전한 곳에 보관합니다.

단계 5: Private Key 발행

서비스 계정 발급 후 Private Key 항목의 발행 / 재발행 버튼을 클릭합니다.

Private Key 발행 버튼

PKCS#8 PEM 형식(.key 파일)이 자동으로 다운로드됩니다. 파일을 열면 아래와 같은 형식입니다.

-----BEGIN PRIVATE KEY-----
(Base64 인코딩된 키 내용)
-----END PRIVATE KEY-----
Caution
Private Key는 재발행 시 이전 키가 즉시 무효화됩니다. 소나에 등록된 접속 프로파일이 있다면 함께 갱신해야 합니다.

로그프레소 소나 설정

단계 1: 접속 프로파일 추가

시스템 > 접속 프로파일 > 추가를 클릭합니다.

접속 프로파일 추가 화면

구분항목설정
필수이름접속 프로파일을 식별할 고유한 이름
필수식별자쿼리에서 profile= 옵션에 사용할 고유 식별자 (예: naver_works)
필수유형네이버웍스 선택
필수클라이언트 IDNAVER WORKS Developer Console에서 발급받은 Client ID
필수클라이언트 시크릿NAVER WORKS Developer Console에서 발급받은 Client Secret
필수서비스 계정발급된 서비스 계정 이메일 (예: user@example.worksmobile.com)
필수비공개 키Private Key 파일의 전체 내용 (-----BEGIN PRIVATE KEY----- 포함)
선택HTTP 프록시IP:포트 (프록시 환경인 경우)
선택연결 타임아웃연결 타임아웃 초 단위 (기본값: 30)
선택읽기 타임아웃읽기 타임아웃 초 단위 (기본값: 60)

단계 2: 검증

아래 쿼리를 분석 > 쿼리에서 실행해 조직도 데이터가 정상적으로 반환되는지 확인합니다.

naverworks-departments profile=naver_works
| limit 5

naverworks-departments 실행 결과 예시

naverworks-employees profile=naver_works
| limit 5

naverworks-employees 실행 결과 예시

  • 정상: 부서 또는 임직원 레코드가 1건 이상 반환됩니다.
  • 비정상: 레코드가 0건이거나 오류 메시지가 표시되면 접속 프로파일 자격증명, NAVER WORKS OAuth Scope(directory.read) 설정, 네트워크 도달(HTTPS/443) 순서로 재확인합니다.

참고 자료