2012-03-22 14 views
14

私はVCR gemを使用してhttpインタラクションを記録し、今後再生します。 uriリクエストで実際のパスワード値をフィルタリングしたい説明はここで提供されるVCRで機密データをフィルタリングする

http://services.somesite.com/Services.asmx/Cabins 
Username=long&Password=john&StartDate=03%2F22%2F2012&EndDate=03%2F29%2F2012 

けど、私はまだいくつかの試みの後に自分自身をどのように行うのかわからない:

https://www.relishapp.com/myronmarston/vcr/v/2-0-0/docs/configuration/filter-sensitive-data

すべてのヘルプここでは、URIがどのように見えるかのサンプルです感謝されます。

+0

を忘れないように確認しているあなたは

VCR.configure do |config| Rails.application.secrets.each do |k,v| config.filter_sensitive_data("ENV[#{k}]") { v } end end 

をしたいかもしれませんsecrets.yml使用している場合、私はちょうど英数字を識別するために正規表現を使用することができますパスワードの後に​​chars =と& – keruilin

答えて

22
VCR.configure do |c| 
    c.filter_sensitive_data("<SOMESITE_PASSWORD>") do 
    ENV['SOMESITE_PASSWORD'] 
    # or $credentials['somesite']['password'] or whatever 
    end 
end 

は基本的に、あなたは、VCRにプレースホルダーテキストのビットを与え、その後、ブロックは正規のパスワード「リポジトリ」は何からそれを読んで、実際のパスワードを返す必要があります。

実際のパスワードは、要求が記録されたときに初めて必要とされることに注意してください。その後の実行では、偽のパスワードになる可能性があります(要求を行うコードで使用されているのと同じ偽のパスワードである限り)。 4+レール用

関連する問題