Jenkins 안드로이드 연동
다목적 오픈 소스 자동화 서버인 Jenkins는 향상된 보안 자동화를 위해 DoveRunner Mobile App Security CLI 도구와 효과적으로 결합될 수 있습니다. 구성 파일 사용을 통한 간단한 설치 및 통합을 위한 단계별 가이드를 따르세요. 또한 맞춤형 보안 조치를 위해 Jenkins 매개변수 설정을 통한 고급 통합 옵션을 탐색하세요.
Jenkins 매개변수 설정
Section titled “Jenkins 매개변수 설정”| 매개변수 | 정의 | 유형 | 설정 값 |
|---|---|---|---|
| AS_JAR_PATH <필수> | sealing.jar 파일 경로 | String | 예) /opt/appsealing/sealing.jar |
| AS_URL <필수> | 실링 API URL — 계정 리전에 맞게 선택하세요 (위 표 참고) | String | 리전별 URL |
| AS_AUTH_KEY <필수> | 인증 키 | String | ( 별도 제공 ) |
| AS_SRC_APK <필수> | 원본 APK/AAB 파일 경로 | String | 예)./source/application.apk |
| AS_SEALED_APK <필수> | 실링된 APK/AAB 파일을 저장할 경로 | String | 예)./source/application_sealed.apk |
| AS_DEPLOY_MODE <필수> | 배포 모드 - test : DoveRunner 워터마크 표시 - release : DoveRunner 워터마크 없음 | Choice | {test / release} 기본값 : test |
| AS_SERVICE_VERSION | 실링 서비스 버전 번호 위협 대응 정책 옵션( action_*)을 사용하는 경우 3.3.0.0 이상이어야 합니다. | String | 예) 3.3.0.0 기본값: latest |
| AS_SERVICE_TYPE | 서비스 유형 옵션 - HYBRID_AOS : React Native, Ionic, Cordova 프레임워크는 이 옵션을 사용해야 합니다. - NATIVE_AOS : 그 외 모든 앱. | Choice | { NATIVE_AOS / HYBRID_AOS } 기본값 : NATIVE_AOS |
| AS_FRAMEWORK | 앱의 프레임워크 (HYBRID_AOS인 경우 필수) - REACT_NATIVE: React Native 앱을 업로드할 때 사용합니다. - IONIC: Ionic 앱을 업로드할 때 사용합니다. - CORDOVA: Cordova 앱을 업로드할 때 사용합니다. | Choice | {REACT_NATIVE / IONIC / CORDOVA} 기본값 : 선택 안 함 |
| AS_APP_SIGNING | 실링 후 자동 앱 서명 옵션 앱 서명은 실링과 함께 적용될 수 있습니다. - none : 추가 앱 서명 없이 실링만 적용됩니다. - appsealing_key : 실링 후 테스트 목적의 서명 키로 서명됩니다. AAB 패키지의 경우 이 옵션은 ‘none’ 값으로 적용되고 앱은 서명되지 않습니다. - registered_key : 실링 후 계정으로 DoveRunner 콘솔에 등록된 앱 서명 키로 서명됩니다. | Choice | {none / appsealing_key / registered_key} 기본값 : none |
| AS_PRESET_NAME | 콘솔에서 생성한 실링 프리셋 이름. 프리셋의 모든 보호 옵션이 적용됩니다. | String | 예) my-preset-name |
| AS_CONFIG_PATH | config.txt 파일 경로. config.txt 파일로 보호 옵션을 관리할 때 사용합니다. | String | 예) /opt/appsealing/config.txt |
[필수] 매개변수는 구성되어야 하며 기본값은 구성되지 않습니다
실행 스크립트 구성
Section titled “실행 스크립트 구성”프리셋 사용 (권장)
Section titled “프리셋 사용 (권장)”java -jar ${AS_JAR_PATH} -url ${AS_URL} -authkey ${AS_AUTH_KEY} -srcapk ${AS_SRC_APK} -sealedapk ${AS_SEALED_APK} -deploymode ${AS_DEPLOY_MODE} -sealing_preset_name ${AS_PRESET_NAME} -app_signing ${AS_APP_SIGNING}java -jar %AS_JAR_PATH% -url %AS_URL% -authkey %AS_AUTH_KEY% -srcapk %AS_SRC_APK% -sealedapk %AS_SEALED_APK% -deploymode %AS_DEPLOY_MODE% -sealing_preset_name %AS_PRESET_NAME% -app_signing %AS_APP_SIGNING%config.txt 파일 사용
Section titled “config.txt 파일 사용”보호 옵션은 config.txt에 설정하고, Jenkins에서는 파일 경로만 전달합니다. 명령행으로 전달한 옵션은 config.txt의 옵션과 함께 적용됩니다.
java -jar ${AS_JAR_PATH} -config ${AS_CONFIG_PATH} -srcapk ${AS_SRC_APK} -sealedapk ${AS_SEALED_APK}java -jar %AS_JAR_PATH% -config %AS_CONFIG_PATH% -srcapk %AS_SRC_APK% -sealedapk %AS_SEALED_APK%옵션 직접 전달
Section titled “옵션 직접 전달”아래 예제는 일부 위협 대응 정책 옵션(3.3.0.0 이상)을 Jenkins 매개변수로 추가한 것입니다. 각 AS_ACTION_* 매개변수는 block, monitor, callback, allow 값을 가진 Choice 매개변수로 만드세요. 3.2.x 이하는 기존 버전 옵션을 사용하세요.
java -jar ${AS_JAR_PATH} -url ${AS_URL} -authkey ${AS_AUTH_KEY} -srcapk ${AS_SRC_APK} -sealedapk ${AS_SEALED_APK} -deploymode ${AS_DEPLOY_MODE} -service_version ${AS_SERVICE_VERSION} -service_type ${AS_SERVICE_TYPE} -action_rooting ${AS_ACTION_ROOTING} -action_emulator ${AS_ACTION_EMULATOR} -action_macro ${AS_ACTION_MACRO} -action_sniff ${AS_ACTION_SNIFF} -app_signing ${AS_APP_SIGNING}java -jar %AS_JAR_PATH% -url %AS_URL% -authkey %AS_AUTH_KEY% -srcapk %AS_SRC_APK% -sealedapk %AS_SEALED_APK% -deploymode %AS_DEPLOY_MODE% -service_version %AS_SERVICE_VERSION% -service_type %AS_SERVICE_TYPE% -action_rooting %AS_ACTION_ROOTING% -action_emulator %AS_ACTION_EMULATOR% -action_macro %AS_ACTION_MACRO% -action_sniff %AS_ACTION_SNIFF% -app_signing %AS_APP_SIGNING%Hybrid 앱은 AS_SERVICE_TYPE을 HYBRID_AOS로 설정하고 -framework ${AS_FRAMEWORK}(Windows는 %AS_FRAMEWORK%)를 추가하세요.