title: What does the Master Key in Parse Cloud?
body: <p>Could somebody explain me in brief that what does the <code>master key</code> within Parse Cloud Code?</p>
  
  <p>Is it possible that a recently implemented CC function (which uses the master key) can change the behavior of other non Cloud Code functions? </p>
  
  <p>As an instance, you have a properly working solution which lets to the current user to add other <code>PFUser</code> objects into a relation and delete them if needed. Until this point you don't need the <code>master key</code> because you writing the <code>PFUser currentUser</code> with the current user. Later you create another type of user relation where you want to write another <code>PFUser</code> object, now this time you need to use <code>master key</code>, because without this the <code>currentUser</code> won't be able to write another <code>PFUser</code> objects. Therefore you create a Cloud Code file to handle this issue and give legitimacy to the actual <code>currentUser</code> for writing other users. Now everything is working fine, we don't get an error when the actual user wants to write other user objects. However something happened. When <code>currentUser</code> tries to delete data from his first <code>PFRelation</code> (that was also worked before the new cc function) he gets the same error <code>..user must be authenticated via logIn or signUp</code> that we got before we first tried to write an other user.</p>
  
  <p>I guess since we using the master key it will override the existing/original security options
  and we need to implement it for every other function. Am i right? If yes, how should i deal with this? Or is it possible to just set different restrictions inside the <code>main.js</code> cc file, and every "old" function will work in the same way plus the new one which using master key?</p>
  
  <p>I would really appreciate any information about the topic, because it's a huge black hole for me.</p>