<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" media="screen" href="/styles/xslt/rss.xslt"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:media="http://search.yahoo.com/mrss/" xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd" xmlns:c9="http://channel9.msdn.com">
<channel>
	<title>Channel 9 Forums - Coffeehouse - ACL Library for SQL server</title>
	<atom:link rel="self" type="application/rss+xml" href="http://channel9.msdn.com/Forums/rss"></atom:link>
	<image>
		<url>http://mschnlnine.vo.llnwd.net/d1/Dev/App_Themes/C9/images/feedimage.png</url>
		<title>Channel 9 Forums - Coffeehouse - ACL Library for SQL server</title>
		<link>http://channel9.msdn.com/Forums</link>
	</image>
	<description>Channel 9 keeps you up to date with the latest news and behind the scenes info from Microsoft that developers love to keep up with. From LINQ to SilverLight – Watch videos and hear about all the cool technologies coming and the people behind them.</description>
	<link>http://channel9.msdn.com/Forums</link>
	<language>en</language>
	<pubDate>Thu, 23 May 2013 14:27:04 GMT</pubDate>
	<lastBuildDate>Thu, 23 May 2013 14:27:04 GMT</lastBuildDate>
	<generator>Rev9</generator>
	<c9:totalResults>2</c9:totalResults>
	<c9:pageCount>-2</c9:pageCount>
	<c9:pageSize>-1</c9:pageSize>
	<item>
		<title>Coffeehouse - ACL Library for SQL server</title>
		<description><![CDATA[<p>Does anyone know of a good ACL based security library I can use in a project using ASP.NET and SQL-2005.&nbsp;&nbsp; Role based is not good enough for this project I need to but access lists on objects in the database secured against a user list stored in the same
 DB (i.e no AD intergration).<br>
<br>
Or if anyone has good links&nbsp;for designing our own?<br>
<br>
Thanks,<br>
<br>
Stephen.</p>]]></description>
		<link>http://channel9.msdn.com/Forums/Coffeehouse/256805-ACL-Library-for-SQL-server/256805#256805</link>
		<pubDate>Sun, 05 Aug 2007 13:42:22 GMT</pubDate>
		<guid isPermaLink="false">http://channel9.msdn.com/Forums/Coffeehouse/256805-ACL-Library-for-SQL-server/256805#256805</guid>
		<dc:creator>PerfectPhase</dc:creator>
		<slash:comments>2</slash:comments>
		<wfw:commentRss>http://channel9.msdn.com/Niners/PerfectPhase/Discussions/RSS</wfw:commentRss>
	</item>
	<item>
		<title>Coffeehouse - ACL Library for SQL server</title>
		<description><![CDATA[<p><blockquote>
<div class="quoteAuthor">PerfectPhase wrote:</div>
<div class="quoteBody">&#65279;<br>
<br>
Or if anyone has good links&nbsp;for designing our own?<br>
<br>
</div>
</blockquote>
<br>
<br>
I don't really have any links to demonstrate but I have had to deal with this and this is how i went about it.<br>
<br>
We have a system where there are many service providers and many clients who use the system.&nbsp; Clients apply to service providers to join their system and once approved by the SP they get acess to the info and services provided by that provider<br>
<br>
So we have many differnet combinations of clients/service providers.<br>
<br>
We implemented it like this.<br>
<br>
All connections to the database must go thru a central module. This module provides 3 services.<br>
1. ConnectionString Managment<br>
2. Leak detection<br>
3.&nbsp; User ID Management<br>
<br>
When a user creates a connetion the module attaches to its state changed event - then when the state changes to opened the module does 2 things.<br>
1. Records the connection open time and the stack trace of where it was opened (I found this bit of good stuff on code project - unfortanatly I don't rembemer by who) - this list is periodiclly inspected for open connetions with a fingerprint to where the connectio0n
 started at.<br>
and finally <br>
2. set the session context on the user connection by executeing set Context_Info against that connection and passes the current user id
<br>
<br>
Next. In the database we have a simple view that returns the ids of the service providers for which the user of the current connection has access to. The gist of the view is something like this:<br>
<br>
select SP_ID&nbsp; a from SPs inner join PermissionList b on a,spid = b.spid where b.userid = GetCurrentUserID()
<br>
<br>
(GetCurrentUserID is a fiunction that you need to create to retreive the context_info and convert it to a varchar)<br>
<br>
From here on in all data selections are done not against the data table but against another set of views which inner join the base tables sp_ID with the spid from the restriction view<br>
<br>
<br>
<br>
<br></p>]]></description>
		<link>http://channel9.msdn.com/Forums/Coffeehouse/256805-ACL-Library-for-SQL-server/d4f5adbda425407f846a9dec009c0122#d4f5adbda425407f846a9dec009c0122</link>
		<pubDate>Tue, 07 Aug 2007 02:25:38 GMT</pubDate>
		<guid isPermaLink="false">http://channel9.msdn.com/Forums/Coffeehouse/256805-ACL-Library-for-SQL-server/d4f5adbda425407f846a9dec009c0122#d4f5adbda425407f846a9dec009c0122</guid>
		<dc:creator>AIM48</dc:creator>
		<slash:comments>2</slash:comments>
		<wfw:commentRss>http://channel9.msdn.com/Niners/AIM48/Discussions/RSS</wfw:commentRss>
	</item>
</channel>
</rss>