- 인쇄
- PDF
App Safer Open API 사용
- 인쇄
- PDF
Classic/VPC 환경에서 이용 가능합니다.
App Safer의 App Management 기능을 Open API로 사용하는 방법을 설명합니다.
AppSafer Open API는 별도의 이용 신청 없이 사용할 수 있으며, API 명세서는 Swagger UI를 통해 확인할 수 있습니다.
빌드 자동화
App Safer Open API에서 앱을 빌드할 때 App Safer가 자동으로 적용되도록 설정할 수 있습니다. 빌드 자동화를 설정하는 방법은 다음과 같습니다.
빌드 자동화는 간편 적용 방식으로 등록한 안드로이드 앱에서만 사용할 수 있습니다.
네이버 클라우드 플랫폼 콘솔의 Region 메뉴와 Platform 메뉴에서 이용 중인 환경을 클릭해 주십시오.
Services > Security > App Safer 메뉴를 차례대로 클릭해 주십시오.
App Management 메뉴에서 앱을 등록해 주십시오.
- 앱 등록 방법에 대한 자세한 설명은 앱 등록을 참조해 주십시오.
App Management 메뉴에서 나타나는 앱 목록 중 원하는 앱을 클릭해 주십시오.
선택 시 펼쳐지는 상세 정보 영역에서 등록 설정의 [상세 보기] 버튼을 클릭해 주십시오.
등록 설정 보기 팝업 창의 하단에 있는 [스크립트 다운로드] 버튼을 클릭해 주십시오.
- 스크립트 파일이 로컬 PC로 다운로드됩니다.
네이버 클라우드 플랫폼 포털의 마이페이지 > 계정관리 > 인증키 관리 메뉴에서 API 인증키를 확인해 주십시오.
- API 이용 시 필요하므로 Access Key와 Secret Key 값을 복사해 주십시오.
- 서브 계정 이용 시, 포털에서 인증키 관리 메뉴가 표시되지 않는다면 메인 계정이 API Gateway 접근을 허용하지 않은 것입니다. 메인 계정에게 API Gateway 접근 권한을 요청해 주십시오.
- 서브 계정의 경우 권한이 없는 API 요청은 거부됩니다. 스크립트를 실행하기 전에 다음의 권한이 추가되어 있는지 확인해 주십시오.
- createPackage
- getPackageDetail
- downloadPackage
API 툴에서 스크립트가 정상적으로 실행되는지 확인해 주십시오.
usage: appsafer.py [-h] --access-key ACCESS_KEY --secret-key SECRET_KEY package out
- 정상 실행 시 다음의 화면이 나타납니다.
- 정상 실행 시 다음의 화면이 나타납니다.
다운로드한 스크립트 파일을 프로젝트 내의 build.gradle 파일과 동일한 경로에 복사해 주십시오.
build.gradle 파일에 아래 코드를 추가하고, Access Key와 Secret Key를 입력해 주십시오.
- APK
// * prepare for apk * / applicationVariants.all { variant -> def accessKey = "{ACCESS_KEY}"; def secretKey = "{SECRET_KEY}"; def apkPath = variant.outputs.stream().map({i -> i.getOutputFile()}).findFirst().get().getAbsolutePath(); variant.getPackageApplicationProvider().get().doLast() { exec { commandLine 'python', 'appsafer.py', apkPath, apkPath, "--access-key", accessKey, "--secret-key", secretKey } } }
- App Bundle
// * prepare for bundle * / applicationVariants.all { variant -> def accessKey = "{ACCESS_KEY}"; def secretKey = "{SECRET_KEY}"; def bundleTaskName = "package${variant.name.capitalize()}Bundle" def bundleTask = tasks.findByPath(bundleTaskName) def bundlePath = bundleTask.bundleFile.get().getAsFile().getAbsolutePath() bundleTask.doLast { exec { commandLine 'python', 'appsafer.py', bundlePath, bundlePath, "--access-key", accessKey, "--secret-key", secretKey } } }
빌드를 실행하여 결과를 확인해 주십시오.
- 성공 시 outputs 파일에 자동으로 App Safer가 적용된 앱이 생성되며, 네이버 클라우드 플랫폼 콘솔에서도 앱이 등록됩니다.
- 성공 시 outputs 파일에 자동으로 App Safer가 적용된 앱이 생성되며, 네이버 클라우드 플랫폼 콘솔에서도 앱이 등록됩니다.