title: SQL Server 2016 audit capabilities
body: <p>I have a typical web-application, very CRUD based. When certain tables or columns change, we need to store history information about it. This could e.g. be an AUDIT table containing new/old column values, timestamp, what table it relates to, name of user who changed it, etc.</p>
  
  <p>Typically I have implemented this e.g. with Triggers to get this information and store to an AUDIT table.</p>
  
  <p>However, could this same be achieved automatically with SQL Server 2016 audit features? A few questions come to my mind:
  1) is it able to store the audit data in a database table, as in above example with triggers?
  2) is an application allowed to read the data, or does accessing the audited data require some special admin credentials?
  3) is it possible to specify what information needs to be logged, or does the functionality log everything, automatically?</p>