Node.js 스크립트에서 AWS 액세스 키 오류 커밋 방지
5845 단어 Gitgit-secretsAWSNode.js
개시하다
이 기사는 노드다.js의 스크립트를 사용하여git의pre-commiit 갈고리 단계에서 AWS 액세스 키가 섞여 있는지 확인하고 제출을 강제로 정지하는 수법을 확인합니다.
문제.
AWS의 액세스 키를 감지하고 커밋을 방지하는 방법git-secrets이 있습니다.이 소프트웨어는 액세스 키의 검출과 유출을 방지하기 위해 코드를 고속으로 스캔할 수 있다.AWS-Labs에서 개발한 제품으로 안정성도 높습니다.
가져오기 어려움
git-secrets는 조개 스크립트로 구성되어 있습니다.mac는 Homebrew로 통일적으로 설치할 수 있지만 패키지로 구성되어 있습니다.제이슨 안 남았어.각 구성원이 설정해야 합니다.
GUI 응용 프로그램에서git-secrets를 조작할 때 내장된 응용 프로그램의git에 대해 기호 링크를 하거나 사용하는git를 시스템으로 전환해야 합니다.
yarn
를 해달라는 말 한마디로 끝난 환경을 설명하는 것보다 가져오는 시간이 많다.고스키와 공을 치다
husky는 간단한 패키지입니다.json에서 정의할 수 있는 패키지입니다.
▼package.json
{
"husky": {
"hooks": {
"pre-commit": "npm test",
"...": "..."
}
}
}
git의 다양한 훅을 이렇게 정의해서 패키지를 만듭니다.json 내의 스크립트를 호출할 수 있습니다.예를 들어 pretty-quick와 함께 사용하면 제출하기 전에 스테이지의 파일Prettier을 성형한 후 제출할 수 있다.
하지만 이 포장은git-secrets와 함께 공을 칠 것이다.git hook 파일이 설치할 때 다시 쓰기 때문에
git secrets --install
생성된 파일을 덮어씁니다.이 문제는 허스키뿐만 아니라 훅 파일을 다시 쓰는 모든 패키지에서 발생한다.물론 훅 파일을 수동으로 합치면 두 가지 기능을 동시에 사용할 수 있지만 포장을 다시 설치할 때 파괴되기 때문에 사용하기가 어렵다.
대책안
상술한 문제의 대책으로 삼다
확인
그래서 나는 각본을 짜 보았다.
작업을 검증하려면 로컬 클론 웨어하우스 npm install 또는 yarn을 통해 의존 패키지 가져오기 AWS 키가 포함된 텍스트 파일 로드 제출 후 pre-commiit에 의해 차일 수 있습니다 pretty-quick과 공존 동작 나는 이런 일련의 동작이 확인할 수 있을 것이라고 생각한다. CLI 모듈로 가져오기 방법 2018/09/12 검증 스크립트를 CLI 모듈로 수정하고 업데이트하려면 이 문서를 참조하십시오.감사합니다.
yarn add https://github.com/MasatoMakino/node-secrets -D
node-secrets
명령은 npm-Sripts 또는 husky에서 호출할 수 있습니다.▼package.json
"scripts": {
"secrets": "node-secrets"
},
"husky": {
"hooks": {
"pre-commit": "pretty-quick --staged && node-secrets"
}
}
시험 시 주의사항
테스트에서 진정한 열쇠를 사용하는 것을 절대 피하세요.
git-secrets를 사용하여 클라우드 파산을 피하다
본고에서 말한 바와 같이git-secrets는 우리에게 테스트용 가짜 열쇠를 준비했습니다. 그 위에 걸려 있는지 시험해 보세요.
검증되지 않은 부분
이 스크립트에서 다음 사항을 확인하지 못했습니다:.
Reference
이 문제에 관하여(Node.js 스크립트에서 AWS 액세스 키 오류 커밋 방지), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/masato_makino/items/53329ca084d51bfcf243텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)