2017-12-06 14 views
4

일반적인 관행은 무엇입니까? gcloud에서 제공하는 도구가없는 것으로 보입니다. 현재 로컬 컴퓨터에서 기능을 배포 중이므로 비밀을 하드 코딩 할 수 있지만 이는 부적절한 것으로 보입니다. CI/CD는 어떨까요? 이 경우 환경 변수로 비밀을 전달해야합니다. 이것도 가능합니까?Google 클라우드 기능에서 비밀을 어떻게 처리합니까?

+0

아니요, 불행히도 이것은 불가능합니다. 그런 단순한 기능은 Google과 같은 회사에서 내놓은 제품으로는 불가능하지만, 그냥해야만합니다. 구름 기능이 베타 버전에서 나오면이 기능을 추가하면 좋겠다. –

답변

0

내 의견을 제출 한 이래로 비교적 간단한 방법을 발견했습니다. .json 파일을 제공하십시오.

config.json 하는 index.js과 같은 디렉토리에 파일 : 여기에 내가 함께 그들의 여유 함수 예에 근거를 해킹 예입니다

{ 
    "foo": "bar" 
} 

하는 index.js는

const config = require('./config.json'); 

exports.envTest = (req, res) => { 
    res.status(200).send(config.foo); 
}; 

함수를 배포하고 URL로 이동하면 bar 응답을 얻어야합니다.

장점과 단점 :

장점 :

  1. 쉬운 설정 및 IDE에서 마우스 오른쪽 버튼을 구성 할 수
  2. 구성 파일은 비밀이 종료되지 않도록하기 위해 .gitignore에 투입 할 수 repo 최대
  3. 파일 자체는 안전한 위치에 저장 될 수 있으며 기능 구현 책임자에게만 제공됩니다.

단점 : 적절한 비밀 관리

  • 에 비해

    1. 투박한는
    2. 파일은 Google 클라우드에 일반 텍스트로 읽을 수 있습니다 다른 사람 손에 들어 가지 않도록 파일을 보장하기 위해주의가 필요합니다 콘솔을보고 콘솔을보고

    전체적으로 볼 때 실제 비밀 관리 시스템과는 거리가 있지만 이 기능이 결국 클라우드 기능 코어에 포함될 때까지 나를 붙들어 둘만큼 쓸모가 있습니다.