-
Android) 앱 서명 키 안전하게 보안하는 방법Android 2021. 5. 30. 13:15
이전 포스팅에서 release 모드에서 앱을 테스트해보는 방법을 알아봤습니다.
signingConfigs { release { storeFile file('keystore 경로') storePassword '비밀번호' keyAlias 'keyAlias 이름' keyPassword '비밀번호' } }
기본 방법은 위와 같은데, 이처럼 keystore 정보가 노출된 채로 Git이나 외부에 공유된다면 악용될 가능성이 있거나 보안상 좋지 않겠죠?
그래서 별도의 파일을 생성해서 keystore 정보를 관리하는 것을 권장하고 있습니다.
1. 프로젝트의 루트 디렉토리에 keystore.properties 파일을 생성합니다.
2. keystore.properties 파일 안에 keystore의 정보를 넣어줍니다.
// keystore.properties storePassword=myStorePassword keyPassword=mykeyPassword keyAlias=myKeyAlias storeFile=myStoreFileLocation // 싱글 쿼테이션으로 묶지 않고 입력해줍니다. 즉, ' '을 제외한 내용을 넣어줍니다.
3. 모듈의 build.gradle 파일에서 apply와 android 사이에 keystore.properties 파일을 로드하는 코드를 추가해줍니다.
// Keystore Security def keystorePropertiesFile = rootProject.file("keystore.properties") def keystoreProperties = new Properties() keystoreProperties.load(new FileInputStream(keystorePropertiesFile))
4. 모듈의 build.gradle 파일에 keystore.properties에 저장된 속성을 참조할 수 있도록 signingConfigs 블록을 수정합니다.
android { signingConfigs { release { keyAlias keystoreProperties['keyAlias'] keyPassword keystoreProperties['keyPassword'] storeFile file(keystoreProperties['storeFile']) storePassword keystoreProperties['storePassword'] } } ... } buildTypes { release { signingConfig signingConfigs.release ... } }
이후 keystore.properties 파일을 제외한 수정사항을 Git에 올려주시면 됩니다.
반응형'Android' 카테고리의 다른 글
Android) Navigation Component IllegalStateException, IllegalArgumentException 예외 (0) 2021.06.10 Android) 안드로이드 고유 식별자 뭘로할까? (6) 2021.06.07 Android) logcat의 ResourceType Warning 지우는 방법 (0) 2021.05.26 Android) Firebase Analytics 알아보기 (0) 2021.05.24 Android) Debug 모드에서는 작동하는데 Release 모드에서 Crash 발생할때 (Debug, Release 차이점) (2) 2021.05.23