Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

bezpieczniejsze umieszczenie kluczy PayU #10

Closed
ghost opened this issue Jan 2, 2017 · 4 comments
Closed

bezpieczniejsze umieszczenie kluczy PayU #10

ghost opened this issue Jan 2, 2017 · 4 comments

Comments

@ghost
Copy link

ghost commented Jan 2, 2017

Cześć!

Gem działa bardzo dobrze, ale mam problem z bezpieczeństwem, a mianowicie chciałbym trzymać klucze (pos_id, pos_auth_key, key1, key2) w zmiennych ENV zamiast bezpośrednio w pliku payu.yml. Chciałem zrobić to gemem Figaro, ale niestety podczas startu serwera aplikacja wyrzuca błąd walidacji (kod jaki stosuję poniżej). Czy znasz rozwiązanie tego problemu, jak trzymać klucze bezpiecznej, ale wciąż korzystać np. z Pay['main'] i nie przerabiać/nadpisywać kodu gema?

//payu.rb
Payu.load_pos_from_yaml(Rails.root.join('config', 'payu.yml.erb'))

//payu.yml.erb
main:
pos_id: <%= ENV['payu_umedpoznan_pos_id'] %>

@ronin
Copy link
Owner

ronin commented Jan 2, 2017

Możesz stworzyć Pos ręcznie z danych w ENV a potem go dodać do listy:

pos = Payu::Pos.new :pos_id => ENV['payu_umedpoznan_pos_id'], :pos_auth_key => 'xxxxx', :key1 => 'xxxxxxxx', :key2 => 'xxxxxxxx', :add_signature => true
Payu.add_pos('main', pos)

@ghost
Copy link
Author

ghost commented Jan 2, 2017

Cześć! Dzięki za szybką odpowiedź :)) Spróbuję tej metody!

Zanim zamkniemy wątek mam jeszcze jedno pytanie, czy stosując tę metodę poniższa funkcja będzie działać (zwrotka report w PayuController)? Czy może wystarczy zastąpić Payu['main'] np. ENV['payu_main_pos_id'] zdefiniowaną przez Figaro?

response = Payu['main'].get params[:session_id]

Z góry przepraszam jeśli zadaję zbyt podstawowe pytanie, ale pierwszy raz integruję bramkę z aplikacją :)

@ronin
Copy link
Owner

ronin commented Jan 2, 2017

Powinna działać :) Oczywiście ten kod, który podałem musisz dodać w initializers, żeby pos został stworzony zanim zaczniesz go używać. Ta zamiana między Payu a ENV nie zadziała, bo takie metody jak get są wywoływane na obiekcie Payu::Pos.

@ghost
Copy link
Author

ghost commented Jan 2, 2017

OK, dziękuję! Zdaje się, że rozumiem, ale jak będę miał większy problem to skontaktuję się w prywatnej wiadomości. Wątek mam nadzieję, że komuś się jeszcze przyda.

@ghost ghost closed this as completed Jan 2, 2017
This issue was closed.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant