<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blogs.msdn.com/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>The Simple Sandboxing API</title><link>http://blogs.msdn.com/shawnfa/archive/2005/08/08/449050.aspx</link><description>A while back I gave some sample code to show how to setup a sandboxed AppDomain . This technique has worked since v1.0, and will continue to work with Whidbey. However, Whidbey also introduces a simple sandboxing API which eliminates the need for this</description><dc:language>en-US</dc:language><generator>CommunityServer 2.1 SP1 (Build: 61025.2)</generator><item><title>A Closer Look at the Simple Sandboxed AppDomain</title><link>http://blogs.msdn.com/shawnfa/archive/2005/08/08/449050.aspx#449564</link><pubDate>Tue, 09 Aug 2005 22:02:30 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:449564</guid><dc:creator>.Net Security Blog</dc:creator><description>Yesterday we took a look at Whidbey's new Simple Sandboxing API.&amp;amp;amp;nbsp; At first glance this API does...</description></item><item><title>re: The Simple Sandboxing API</title><link>http://blogs.msdn.com/shawnfa/archive/2005/08/08/449050.aspx#449802</link><pubDate>Wed, 10 Aug 2005 10:35:55 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:449802</guid><dc:creator>mihailik</dc:creator><description>Hmm, it seems this API introduces huge secuirty flaw.&lt;br&gt;&lt;br&gt;Every assembly loaded in such AppDomain will have at least 'grantSet' permissions. They have no option to restrict execution of some code group.&lt;br&gt;&lt;br&gt;Right scenario to use this API is keeping 'grantSet' restrictive. But dumb developer can do it wrong. It is possible malicious code come into and get many privileges in this AppDomain.</description></item><item><title>re: The Simple Sandboxing API</title><link>http://blogs.msdn.com/shawnfa/archive/2005/08/08/449050.aspx#449964</link><pubDate>Wed, 10 Aug 2005 20:29:16 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:449964</guid><dc:creator>shawnfa</dc:creator><description>This API makes it easier for an application to sandbox code.  Previously, the app developer had to deal with setting up an entire policy tree, which is much more difficult to get correct.  This way, he just says what he wants the sandboxed code to get.&lt;br&gt;&lt;br&gt;A developer misusing the API is not a security hole.&lt;br&gt;&lt;br&gt;-Shawn</description></item><item><title>re: The Simple Sandboxing API</title><link>http://blogs.msdn.com/shawnfa/archive/2005/08/08/449050.aspx#454054</link><pubDate>Sat, 20 Aug 2005 20:42:15 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:454054</guid><dc:creator>Keith Brown</dc:creator><description>This is great, Shawn. As for mihailik's concern, I assume the creator's assembly must either be fully trusted or have something like ControlPolicy+ControlEvidence, pretty much the equivalent of full trust anyway?</description></item><item><title>re: The Simple Sandboxing API</title><link>http://blogs.msdn.com/shawnfa/archive/2005/08/08/449050.aspx#454760</link><pubDate>Tue, 23 Aug 2005 00:11:17 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:454760</guid><dc:creator>shawnfa</dc:creator><description>Absolutely -- to call this API you need to have ControlAppDomain.&lt;br&gt;&lt;br&gt;-Shawn</description></item><item><title>Securing AppDomain Data</title><link>http://blogs.msdn.com/shawnfa/archive/2005/08/08/449050.aspx#454795</link><pubDate>Tue, 23 Aug 2005 00:49:46 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:454795</guid><dc:creator>.Net Security Blog</dc:creator><description>While we're on the topic of AppDomains ...&lt;br&gt;One feature of AppDomains that many people don't know about...</description></item><item><title>What's New in Security for v2.0</title><link>http://blogs.msdn.com/shawnfa/archive/2005/08/08/449050.aspx#455582</link><pubDate>Wed, 24 Aug 2005 17:46:48 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:455582</guid><dc:creator>.Net Security Blog</dc:creator><description>There's a ton of new and enhanced security features coming with the v2.0 release of the CLR.&amp;amp;amp;nbsp; However,...</description></item><item><title>What's New in Security for v2.0</title><link>http://blogs.msdn.com/shawnfa/archive/2005/08/08/449050.aspx#458645</link><pubDate>Thu, 01 Sep 2005 00:08:38 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:458645</guid><dc:creator>.Net Security Blog</dc:creator><description>There's a ton of new and enhanced security features coming with the v2.0 release of the CLR.&amp;amp;amp;nbsp; However,...</description></item><item><title>re: The Simple Sandboxing API</title><link>http://blogs.msdn.com/shawnfa/archive/2005/08/08/449050.aspx#620679</link><pubDate>Wed, 07 Jun 2006 14:06:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:620679</guid><dc:creator>Michael</dc:creator><description>An assembly will be fully trusted if it meets one of two conditions, if neither of these conditions are met it receives grantSet:&lt;br&gt;&lt;br&gt;- The assembly is in the GAC &lt;br&gt;- It is strongly named and its strong name should match one of the names passed in through the fullTrustAssemblies parameter.&lt;br&gt;&lt;br&gt;Arrrgghh...&lt;br&gt;Is there any way to disable that &amp;quot;The Assembly is in the GAC&amp;quot; ? I'm looking for a way to sandbox a third party assembly which installs in the GAC by default, is there a (simple) way to do this ?</description></item><item><title>re: The Simple Sandboxing API</title><link>http://blogs.msdn.com/shawnfa/archive/2005/08/08/449050.aspx#620853</link><pubDate>Wed, 07 Jun 2006 18:24:46 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:620853</guid><dc:creator>shawnfa</dc:creator><description>Hi Michael,&lt;br&gt;&lt;br&gt;There is no way to sandbox a GACed assembly. &amp;nbsp;When an administrator installs an assembly into the GAC they are effectively making a decision to include that assembly as part of the platform that all code on the machine can build upon. &amp;nbsp;Because of that, the CLR will always treat everything from the GAC as FullTrust (and in fact give it other special treatment, like not verifying its strong name every time its loaded).&lt;br&gt;&lt;br&gt;Since any code, even code running from an untrusted web site, can access everything in the GAC, having something that needs to be sandboxed living in the GAC doesn't make much sense ... your host is not going to be around to sandbox it in all cases, so it's inherently unsafe to have it in the GAC if you don't trust it.&lt;br&gt;&lt;br&gt;-Shawn</description></item></channel></rss>