문제

내 Ruby on Rails 응용 프로그램 데이터베이스입니다.yml 은 일반 텍스트 파일로 저장되는 데이터베이스의 자격 증명입니다.

배포할 경우 내 레일 응용 프로그램 난 후에 배포 콜백에 카피스트라노 레시피를 만드는 상징적 인 링크를 응용 프로그램 내에서의/config 디렉토리 데이터베이스에 있습니다.yml 파일입니다.파일 자체가 별도의 디렉토리에 저장되는 외부 표준을 카피스트라노/releases 디렉토리 구조.I chmod400 도록 파일만 읽을 수 있는 사용자에 의해 만들어집니다.

  • 이것이 충분한 잠금까요?하지 않을 경우,당신은 다른 무엇을 할까?
  • 은 사람이 암호화의 데이터베이스입니다.yml 파일이 있는가?
도움이 되었습니까?

해결책

당신은 또한 있는지 확인하려면 SSH 시스템은 보안 사람들을 방지하기 위해 로그인 귀하의 카피스트라노 로봇이다.나는 제안에 대한 액세스를 제한하는 암호로 보호된 키 쌍이다.

암호화.yml 서버에 있는 파일은 쓸모가 없기 때문이 있을 제공하 봇 키는 것이 저장됩니다...같은 서버에 있습니다.암호화하여 컴퓨터에서는 아마도 좋은 생각이 아니다.카피스트라노 해독할 수 있습니다.

다른 팁

방법은 내가 달려드는 이를 데이터베이스 암호를 가진 파일에 읽기 권한에 대해서만 사용자 실행 응용 프로그램으로.그런 다음 데이터베이스에서.yml 사용 ERB 파일을 읽:

production:
  adapter: mysql
  database: my_db
  username: db_user
  password: <%= begin IO.read("/home/my_deploy_user/.db") rescue "" end %>

니고 있습니다.

을 살펴 이 github 솔루션: https://github.com/NUBIC/bcdatabase.bcdatabase 제공하는 암호화된 저장소 암호를 유지할 수 있습에서 분리 yaml 파일이 있습니다.

bcdatabase

bcdatabase 은 라이브러리 및 유틸리티 제공하는 데이터베이스 구성 매개 변수는 관리를 위한 Ruby on Rails 응용 프로그램.그리스 을 위한 메커니즘을 분리하는 데이터베이스 구성 속성 응용 프로그램 소스 코드록 없는 유혹을 확인 암호를 암호로 버전을 제어 시스템입니다.고 그것은 중앙에서 관리 에 대한 매개변수 단일 서버 그들은 쉽게 공유할 수 있습 중 여러 응용 프로그램을 쉽고 에 의해 업데이트 단일 관리자입니다.

는 경우에도 데이터베이스 보안.yml 파일,사람들은 여전히 쓰는 것과 동일한 자격 증명을 사용하는 경우 변경할 수 있습니다 그들은 코드의 응용 프로그램입니다.

는 다른 방법으로 보는 것입니다:웹 응용 프로그램이 많은 데이터베이스에 대한 액세스 권한.True 낮은 권한이 있습니다.게 충분한 권한 응용 프로그램입니다.이 방법으로 공격자만 할 수 있습 웹 응용 프로그램 할 수 있습니다.

당신이 우려에 대해 보안의 yml 파일 내가 반드시 이런 질문을 던져야 합니다:그것은 저장된 버전에 있어?그렇다면,다른 곳 공격을 얻을 수 있습니다.하는 경우 체크 아웃/체크인 SSL 이외의 누군가가 가로챌 수 있습니다.

또한,일부 버전 제어(svn,대한 exampl),심지어는 그것을 제거하는 경우,그것은 아직 거기에서 역사입니다.그래서,는 경우에도 당신은 그것을 제거에서 어떤 시점에서 과거,그것은 여전히 좋은 아이디어를 변경하는 암호를 암호화합니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top