Brzmi jak powinien podać przykładowy plik dla użytkownika/admin zmodyfikować dla ich osobistego środowiska, a następnie wypełnić środowiska przed tym, gdy unikanie, być może, posiadania tego pliku z poufnymi informacjami w repozytorium. Uwaga: na bezpieczeństwo plików będzie adresowane miejsce, w którym znajduje się plik, system operacyjny i oprogramowanie serwera.
W takim przypadku można udostępnić plik zawierający szablon elementów wymaganych przez administratora/użytkownika programu, który konfigurujesz.
Ruby ma stałą ENV
, która działa jak Hash
i utrzymuje otoczenie powłoki, z której korzystasz.
Jako przykład istnieje plik o nazwie environment.rb.sample, który jest udostępniany publicznie. Ma instrukcje i szablon, który użytkownicy mogą dowolnie modyfikować, wraz z instrukcjami kopiowania pliku do environment.rb
. Przykładowy plik wygląda tak:
# environment.rb.sample
# Copy this file to environment.rb and change the name and password to your credentials
ENV['temp_user_name'] = 'Foo Bar'
ENV['temp_password'] = 'Dazz Kezz
plik jest kopiowany do tego, być może:
# environment.rb
ENV['temp_user_name'] = 'Joe Admin'
ENV['temp_password'] = 'Super Secure Password'
plik, który ładuje to i wykorzystuje to tylko plik Ruby, który jest swobodnie modyfikowane przez użytkownik/administrator oprogramowania i wygląda tak, a także jest udostępniany publicznie.
# load_environment
require './environment'
puts ENV['temp_user_name']
puts ENV['temp_password']
To ładuje plik i używa ENV
który jest globalnie scoped stała dla danej aplikacji.
Uprawnienia do plików są następnie zarządzane przez użytkownika/administratora systemu i zabezpieczane tak jak wszelkie inne poufne informacje w ich systemie. Wrażliwy plik powinien być również wymieniony w mechanizmie ignorowania repozytorium. Nigdy nie powinien być upubliczniany.
Parsowanie pliku par nazwa/wartość jest łatwe. Co próbujesz? Chcesz, aby plik stał się nieczytelny dla kogo? –
@tinMan Nie próbowałem jeszcze nic do pliku, zrobiłem szybkie wyszukiwanie google i nic nie pasowało dokładnie to, czego szukałem, dlatego zapytałem, czy to było możliwe i nieczytelne dla każdego, kto nie jest właścicielem plik –