title: Best and most secure way of granting privileges on SYS owned objects
body: <p>The users SYS and SYSTEM should never be used since there's a risk of damaging the SYS schema: "In general, unless the documentation tells you, you will NEVER LOG IN as sys or system, they are our internal data dictionary accounts and not for your use. You will be best served by forgetting they exist." (<a href="http://asktom.oracle.com/pls/asktom/f?p=100:11:0::::P11_QUESTION_ID:2659418700346202574" rel="nofollow">http://asktom.oracle.com/pls/asktom/f?p=100:11:0::::P11_QUESTION_ID:2659418700346202574</a>)</p>
  
  <p>What is the best and the most secure way for granting SYS privileges to a user? For example:</p>
  
  <pre><code>GRANT EXECUTE ON sys.dbms_pipe TO foobar;
  </code></pre>
  
  <p>Which user should I use instead of SYS or SYSTEM?</p>