데브허브 | DEVHUB | How to hide your API keys SAFELY on FlutterHow to hide your API keys SAFELY on Flutter
- Flutter 앱에서 API 키를 안전하게 숨기는 두 가지 주요 방법으로
dart-define 플래그와 .env 파일을 활용한 envied 패키지 사용법을 소개합니다. 🛡️
dart-define 플래그는 flutter run 명령어를 통해 직접 키를 전달하거나, 여러 키를 효율적으로 관리하기 위해 keys.json 파일에서 불러오는 방식(--dart-define-from-file)을 지원합니다. 🚀
dart-define-from-file 방식을 VS Code 디버거에서 사용하려면 launch.json 파일에 해당 인수를 추가하여 디버깅 환경을 설정해야 합니다. ⚙️
String.fromEnvironment('KEY_NAME')을 통해 dart-define으로 전달된 키에 접근하며, 키가 없을 경우를 대비한 예외 처리 로직을 추가하여 디버깅을 용이하게 하는 것이 권장됩니다. ⚠️
envied 패키지는 .env 파일을 통해 환경 변수를 관리하고, build_runner를 사용하여 키에 접근할 수 있는 코드를 자동으로 생성하여 사용 편의성을 높입니다. 📦
envied 패키지는 @Envied(obfuscate: true) 설정을 통해 생성된 코드에서 키 값을 난독화하여 보안을 강화하는 기능을 제공합니다. 🔒
- 이 방법들은 API 키를 앱 코드에 직접 노출하지 않고 안전하게 관리할 수 있도록 돕습니다. ✨