<?xml version="1.0" encoding="utf-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: Select Trigger in Oracle Database &#8211; introducing Fine Grained Auditing</title>
	<atom:link href="http://technology.amis.nl/blog/810/select-trigger-in-oracle-database-introducing-fine-grained-auditing/feed" rel="self" type="application/rss+xml" />
	<link>http://technology.amis.nl/blog/810/select-trigger-in-oracle-database-introducing-fine-grained-auditing</link>
	<description>Weblog for the AMIS Technology corner</description>
	<lastBuildDate>Fri, 10 Feb 2012 16:47:37 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: David Wendelken</title>
		<link>http://technology.amis.nl/blog/810/select-trigger-in-oracle-database-introducing-fine-grained-auditing/comment-page-1#comment-482038</link>
		<dc:creator>David Wendelken</dc:creator>
		<pubDate>Fri, 10 Feb 2012 15:51:50 +0000</pubDate>
		<guid isPermaLink="false">/?p=810#comment-482038</guid>
		<description>Hi Lucas!Â  It&#039;s been awhile since I last saw you at ODTUG.

Re Kalid&#039;s question, he could embed his application&#039;s queries in packaged procedures and have the packaged procedure record the record level info before returning the data to the calling app.

Unless, of course, they&#039;ve given users the ability to query the data directly via sql*plus or some other tool...

Good article, by the way.Â </description>
		<content:encoded><![CDATA[<p>Hi Lucas!Â  It&#8217;s been awhile since I last saw you at ODTUG.</p>
<p>Re Kalid&#8217;s question, he could embed his application&#8217;s queries in packaged procedures and have the packaged procedure record the record level info before returning the data to the calling app.</p>
<p>Unless, of course, they&#8217;ve given users the ability to query the data directly via sql*plus or some other tool&#8230;</p>
<p>Good article, by the way.Â </p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Lucas Jellema</title>
		<link>http://technology.amis.nl/blog/810/select-trigger-in-oracle-database-introducing-fine-grained-auditing/comment-page-1#comment-481234</link>
		<dc:creator>Lucas Jellema</dc:creator>
		<pubDate>Thu, 29 Sep 2011 03:22:29 +0000</pubDate>
		<guid isPermaLink="false">/?p=810#comment-481234</guid>
		<description>&lt;p&gt;Dear Kalid,&lt;/p&gt;
&lt;p&gt;Â &lt;/p&gt;
&lt;p&gt;The only way to learn about the actual primary key values accessed in the query would be to execute the query itself (with the same context variables set and the same VPD policies and View where conditions applied) from within the audit handler procedure. And that is not necessarily very easy.&lt;/p&gt;
&lt;p&gt;One way to record every primary key for every record queried is by having all data accessed by views that consist of a query from a table (or view) joined to a table function based on PL/SQL function that takes the primary key as its input and a collection with a single row as its output. The PL/SQL function can record the primary key somewhere. Sounds somewhat farfetched... There may be an easier way - but I cannot think of it rightaway.&lt;/p&gt;
&lt;p&gt;Lucas&lt;/p&gt;
&lt;p&gt;Â &lt;/p&gt;</description>
		<content:encoded><![CDATA[<p>Dear Kalid,</p>
<p>Â </p>
<p>The only way to learn about the actual primary key values accessed in the query would be to execute the query itself (with the same context variables set and the same VPD policies and View where conditions applied) from within the audit handler procedure. And that is not necessarily very easy.</p>
<p>One way to record every primary key for every record queried is by having all data accessed by views that consist of a query from a table (or view) joined to a table function based on PL/SQL function that takes the primary key as its input and a collection with a single row as its output. The PL/SQL function can record the primary key somewhere. Sounds somewhat farfetched&#8230; There may be an easier way &#8211; but I cannot think of it rightaway.</p>
<p>Lucas</p>
<p>Â </p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Kalid</title>
		<link>http://technology.amis.nl/blog/810/select-trigger-in-oracle-database-introducing-fine-grained-auditing/comment-page-1#comment-481217</link>
		<dc:creator>Kalid</dc:creator>
		<pubDate>Mon, 26 Sep 2011 14:06:55 +0000</pubDate>
		<guid isPermaLink="false">/?p=810#comment-481217</guid>
		<description>Hi,
Excellent Article. Question, is it possible to capture pk of the record as in this example empid and insert that into emp_audit table? HIPPA regulation requires to store info about the record andÂ not just the sql statement. Wondering if in 11gr2 is it possible? I know you made it clear that it is statement level trigger and not on each record returned by query but the regulation requires each record audit. That&#039;s our requirement. Is this possible?
Thanks</description>
		<content:encoded><![CDATA[<p>Hi,<br />
Excellent Article. Question, is it possible to capture pk of the record as in this example empid and insert that into emp_audit table? HIPPA regulation requires to store info about the record andÂ not just the sql statement. Wondering if in 11gr2 is it possible? I know you made it clear that it is statement level trigger and not on each record returned by query but the regulation requires each record audit. That&#8217;s our requirement. Is this possible?<br />
Thanks</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Ammar</title>
		<link>http://technology.amis.nl/blog/810/select-trigger-in-oracle-database-introducing-fine-grained-auditing/comment-page-1#comment-441254</link>
		<dc:creator>Ammar</dc:creator>
		<pubDate>Tue, 01 Feb 2011 06:47:27 +0000</pubDate>
		<guid isPermaLink="false">/?p=810#comment-441254</guid>
		<description>I&#039;m researcher ,
Can useful from this toÂ  fight SQL injection?I think its food idea to create somethingÂ  triger special to audit sql statement this is useful to detectt sql Injection .
Â </description>
		<content:encoded><![CDATA[<p>I&#8217;m researcher ,<br />
Can useful from this toÂ  fight SQL injection?I think its food idea to create somethingÂ  triger special to audit sql statement this is useful to detectt sql Injection .<br />
Â </p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Christian</title>
		<link>http://technology.amis.nl/blog/810/select-trigger-in-oracle-database-introducing-fine-grained-auditing/comment-page-1#comment-433496</link>
		<dc:creator>Christian</dc:creator>
		<pubDate>Wed, 12 Jan 2011 17:19:14 +0000</pubDate>
		<guid isPermaLink="false">/?p=810#comment-433496</guid>
		<description>Hi
Is it possible to track if someone executes a packaged procedure or function too?
Thanks
Christian</description>
		<content:encoded><![CDATA[<p>Hi<br />
Is it possible to track if someone executes a packaged procedure or function too?<br />
Thanks<br />
Christian</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Lucas Jellema</title>
		<link>http://technology.amis.nl/blog/810/select-trigger-in-oracle-database-introducing-fine-grained-auditing/comment-page-1#comment-404742</link>
		<dc:creator>Lucas Jellema</dc:creator>
		<pubDate>Thu, 23 Sep 2010 14:41:03 +0000</pubDate>
		<guid isPermaLink="false">/?p=810#comment-404742</guid>
		<description>&lt;p&gt;For that particular situation, you can just use an Insert trigger - no need to make things complicated with this &#039;select trigger&#039; trick.&lt;/p&gt;</description>
		<content:encoded><![CDATA[<p>For that particular situation, you can just use an Insert trigger &#8211; no need to make things complicated with this &#8217;select trigger&#8217; trick.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: kuivge</title>
		<link>http://technology.amis.nl/blog/810/select-trigger-in-oracle-database-introducing-fine-grained-auditing/comment-page-1#comment-389799</link>
		<dc:creator>kuivge</dc:creator>
		<pubDate>Fri, 16 Jul 2010 12:25:25 +0000</pubDate>
		<guid isPermaLink="false">/?p=810#comment-389799</guid>
		<description>Dear Lucas, i &#039;m new member of AMIS blog.
Is is usefull to use this package / trigger when insert a record in EMP for a non-existing DEP, also insert a record in DEP for this EMP. (&quot;cascade insert&quot;) or should another solution be better?</description>
		<content:encoded><![CDATA[<p>Dear Lucas, i &#8216;m new member of AMIS blog.<br />
Is is usefull to use this package / trigger when insert a record in EMP for a non-existing DEP, also insert a record in DEP for this EMP. (&#8220;cascade insert&#8221;) or should another solution be better?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Oracle: Loggen von Selects - PG-Forum.de</title>
		<link>http://technology.amis.nl/blog/810/select-trigger-in-oracle-database-introducing-fine-grained-auditing/comment-page-1#comment-348482</link>
		<dc:creator>Oracle: Loggen von Selects - PG-Forum.de</dc:creator>
		<pubDate>Thu, 18 Jun 2009 13:32:55 +0000</pubDate>
		<guid isPermaLink="false">/?p=810#comment-348482</guid>
		<description></description>
		<content:encoded><![CDATA[<p>[...] select trigger  gleich der erste treffer &#8211; von jemandem der sich mit dem thema beschaeftigt hat  AMIS Technology blog » Blog Archive » Select Trigger in Oracle Database &#8211; introducing Fine Grained A&#8230;  weiter unten findest du dann noch quellen, deren titel VERMUTEN lassen, dass sie sich mit ganz [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Oracle: Loggen von Selects - PG-Forum.de</title>
		<link>http://technology.amis.nl/blog/810/select-trigger-in-oracle-database-introducing-fine-grained-auditing/comment-page-1#comment-348481</link>
		<dc:creator>Oracle: Loggen von Selects - PG-Forum.de</dc:creator>
		<pubDate>Thu, 18 Jun 2009 06:50:45 +0000</pubDate>
		<guid isPermaLink="false">/?p=810#comment-348481</guid>
		<description></description>
		<content:encoded><![CDATA[<p>[...] google &#8211; oracle select trigger  gleich der erste treffer &#8211; von jemandem der sich mit dem thema beschaeftigt hat  AMIS Technology blog » Blog Archive » Select Trigger in Oracle Database &#8211; introducing Fine Grained A&#8230; [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: links for 2008-11-01 &#171; My place</title>
		<link>http://technology.amis.nl/blog/810/select-trigger-in-oracle-database-introducing-fine-grained-auditing/comment-page-1#comment-346677</link>
		<dc:creator>links for 2008-11-01 &#171; My place</dc:creator>
		<pubDate>Sat, 01 Nov 2008 18:49:36 +0000</pubDate>
		<guid isPermaLink="false">/?p=810#comment-346677</guid>
		<description>[...] AMIS Technology blog Â» Blog Archive Â» Select Trigger in Oracle Database - introducing Fine Grained... Fine Grained Auditing is primarily intended for auditing special events in the database. In Oracle 9i the only event that was supported by dbms_fga was the query event - execution of a SELECT statement. In 10g, dbms_fga has been extended to also capture DML events - INSERT, UPDATE and DELETE statements. For the purpose of our SELECT trigger, we will focus on the SELECT event. Hence, this is available in both 9i and 10g. Note: this trigger is a STATEMENT level trigger. The select-trigger will not be called for every record that is either evaluated or returned by the query. Fortunately! We create our SELECT trigger in two steps. First we create the Handler - a PL/SQL procedure - that will process the Select Events that we want to be triggered on, then we can define a Fine Grained Auditing Policy that is associated with our Handler. (tags: oracle audit programming pl/sql) [...]</description>
		<content:encoded><![CDATA[<p>[...] AMIS Technology blog Â» Blog Archive Â» Select Trigger in Oracle Database &#8211; introducing Fine Grained&#8230; Fine Grained Auditing is primarily intended for auditing special events in the database. In Oracle 9i the only event that was supported by dbms_fga was the query event &#8211; execution of a SELECT statement. In 10g, dbms_fga has been extended to also capture DML events &#8211; INSERT, UPDATE and DELETE statements. For the purpose of our SELECT trigger, we will focus on the SELECT event. Hence, this is available in both 9i and 10g. Note: this trigger is a STATEMENT level trigger. The select-trigger will not be called for every record that is either evaluated or returned by the query. Fortunately! We create our SELECT trigger in two steps. First we create the Handler &#8211; a PL/SQL procedure &#8211; that will process the Select Events that we want to be triggered on, then we can define a Fine Grained Auditing Policy that is associated with our Handler. (tags: oracle audit programming pl/sql) [...]</p>
]]></content:encoded>
	</item>
</channel>
</rss>

