title: Is Phoenix's scrub_params like Rails strong parameters?
body: <p>The documentation for the Phoenix <code>scrub_params</code> method is a little unclear to me.  It seems like this functionality is similar to the Rails strong parameters feature.  However, when you use it in a controller like so,</p>
  
  <pre><code>plug :scrub_params, "user" when action in [:create]
  </code></pre>
  
  <p>... you're not explicitly stating which parameters you want to whitelist.  I've looked at the code for <code>scrub_params</code>, but I'm noobish enough with Elixir that I'm not quite sure what's going on.  </p>
  
  <p>Is this method just looking at the model and using the required and optional field module attributes for whitelisting parameters?</p>
  
  <p>Also, the <code>scrub_params</code> documentation says it "Checks to see if the required_key is present".  What is the "required key"?  Is that just the required fields from the model?</p>