title: How to Store Client ID/Client Secret Strings in iOS
body: <p>I am building an application that uses OAuth to authenticate and grant account access to users.</p>
  
  <p>The current authentication flow is as follows:</p>
  
  <ol>
  <li>Create new application</li>
  <li>Register application with API service</li>
  <li>Store granted client ID and client secret securely</li>
  <li>Launch application</li>
  <li>Application opens service's OAuth request for approval in <code>SFSafariViewController</code></li>
  <li>User approves the application to access their service's account</li>
  <li>Callback to application provides code, which is received in <code>AppDelegate</code></li>
  <li>Notification is posted, passing the code to the view controller that will initiate the request to exchange a clientID, client secret, and code for an OAuth token to be used for authenticating subsequent requests</li>
  <li>Send request with client ID, client secret, and code to exchange for OAuth token</li>
  <li>Store token in Keychain for subsequent API requests</li>
  </ol>
  
  <p>I have everything working as listed, however, I don't know how to store the client ID and client secret that I am granted when registering my application with the service. The client ID and client secret are to be kept securely and not shared. They will be used when a user exchanges them for an OAuth token. </p>
  
  <p>Since I am using GitHub for version control, do I create a property list within my application to store the items? If so, I can just add that file to my <code>.gitignore</code>. Is this an appropriate method for storing my credentials?</p>