소개
secure-file은 AppVeyor에서 개발한 파일 암호화/복호화 명령줄 유틸리티입니다. Rijndael 방법을 사용하여 임의 파일을 암호화하고 복호화할 수 있도록 설계되었으며, 주로 CI/CD 환경에서 민감한 파일을 안전하게 관리하는 데 사용됩니다.
상세정보
파일 암호화
Windows 환경에서 다음 PowerShell 명령을 사용하여 secure-file 유틸리티를 다운로드할 수 있습니다.
iex ((New-Object Net.WebClient).DownloadString(‘https://raw.githubusercontent.com/appveyor/secure-file/master/install.ps1’))
암호화 명령은 다음과 같습니다. 암호화된 파일은 원본 파일과 동일한 디렉토리에 .enc 확장자가 추가되어 저장됩니다.
appveyor-toolssecure-file -encrypt C:path-tofilename-to-encrypt.ext -secret MYSECRET1234
-out 매개변수를 사용하여 출력 파일 이름을 지정할 수 있으며, 암호화 과정에서 생성된 솔트가 콘솔에 출력됩니다.
파일 복호화
AppVeyor 빌드 환경에서 파일을 복호화하려면 secret과 Base64로 인코딩된 salt 값을 프로젝트 환경 변수에 설정해야 합니다. 복호화 명령은 다음과 같습니다.
appveyor-toolssecure-file -decrypt path-toencrypted-filename.ext.enc -secret %my_secret% -salt %my_salt%
Linux 환경에서는 sh: 접두사와 함께 동일한 명령을 사용할 수 있습니다.
이런 경우에 유용합니다
- CI/CD 파이프라인에서 민감한 설정 파일이나 자격 증명을 안전하게 관리해야 할 때
- 소스 제어 시스템에 민감한 파일을 커밋해야 하지만 평문으로 저장할 수 없을 때
- Windows 및 Linux 환경 모두에서 파일 암호화/복호화 기능이 필요할 때
지원 환경·시스템 요구사항
- 운영 체제: Windows 또는 Linux
- 런타임: .NET Core Runtime 2.0
- 도구: Windows에서는 PowerShell, Linux에서는 curl이 필요합니다
제한 사항·확인 사항
- Pull Request 빌드에서는 secure variables가 설정되지 않으므로 파일 복호화가 작동하지 않습니다
- 암호화에 사용할 secret과 salt 값을 안전하게 관리해야 합니다
시스템 요구사항
Array


