피드로 돌아가기
Code Signing a Tauri App for macOS — The Complete Flow
Dev.toDev.to
Security

Gatekeeper 보안 경고 제거를 위한 Tauri macOS Code Signing 및 Notarization 자동화 파이프라인 구축

Code Signing a Tauri App for macOS — The Complete Flow

hiyoyo2026년 5월 27일2intermediate

Context

서명되지 않은 macOS 애플리케이션 배포 시 Gatekeeper가 이를 멀웨어로 인식하여 사용자 접근을 차단하는 문제 발생. 신뢰할 수 있는 소프트웨어 배포를 위해 Apple Developer ID 기반의 Code Signing과 Notarization으로의 전환이 필수적인 상황.

Technical Solution

  • tauri.conf.jsonsigningIdentityproviderShortName 설정을 통한 Tauri v2 내장 서명 자동화 체계 구축
  • APPLE_SIGNING_IDENTITY, APPLE_ID 등 환경 변수 주입을 통한 빌드-서명-제출 프로세스의 단일화
  • notarytoolstapler를 활용한 DMG 파일의 수동 Notarization 및 티켓 결합(Stapling) 절차 확보
  • com.apple.security.cs.allow-unsigned-executable-memory 등 Entitlements 설정을 통한 셸 명령어 실행 권한 제어 및 Gatekeeper 차단 해제
  • codesignspctl 도구를 이용한 최종 서명 상태와 Notarization 승인 여부 검증 루틴 적용

- Apple Developer Account($99/year) 확보 및 Developer ID Application 인증서 생성 확인 - Tauri v2 환경 변수 설정 및 `tauri.conf.json` 내 Signing Identity 일치 여부 검토 - 셸 명령어 실행이 필요한 앱의 경우 Entitlements 파일 내 보안 예외 설정 적용 여부 확인 - 배포 전 `spctl -a -v` 명령어를 통한 Notarization 'accepted' 상태 최종 검증

원문 읽기