<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://sqlblog.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>Lara Rubbelke : SQL Server 2008</title><link>http://sqlblog.com/blogs/lara_rubbelke/archive/tags/SQL+Server+2008/default.aspx</link><description>Tags: SQL Server 2008</description><dc:language>en</dc:language><generator>CommunityServer 2.1 SP2 (Build: 61129.1)</generator><item><title>SQL Server Separation of Duties Whitepaper Released</title><link>http://sqlblog.com/blogs/lara_rubbelke/archive/2011/05/06/sql-server-separation-of-duties-whitepaper-released.aspx</link><pubDate>Fri, 06 May 2011 16:17:00 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:35509</guid><dc:creator>Lara Rubbelke</dc:creator><slash:comments>5</slash:comments><comments>http://sqlblog.com/blogs/lara_rubbelke/comments/35509.aspx</comments><wfw:commentRss>http://sqlblog.com/blogs/lara_rubbelke/commentrss.aspx?PostID=35509</wfw:commentRss><wfw:comment>http://sqlblog.com/blogs/lara_rubbelke/rsscomments.aspx?PostID=35509</wfw:comment><description>Hot off the virtual press, the SQL Server Separation of Duties Whitepaper is now available! SQL Server 2008 R2 provides the full breadth of tools to support restrictive compliance and security requirements. This whitepaper will associate the features...(&lt;a href="http://sqlblog.com/blogs/lara_rubbelke/archive/2011/05/06/sql-server-separation-of-duties-whitepaper-released.aspx"&gt;read more&lt;/a&gt;)&lt;img src="http://sqlblog.com/aggbug.aspx?PostID=35509" width="1" height="1"&gt;</description><category domain="http://sqlblog.com/blogs/lara_rubbelke/archive/tags/SQL+Server+2008/default.aspx">SQL Server 2008</category><category domain="http://sqlblog.com/blogs/lara_rubbelke/archive/tags/Compliance/default.aspx">Compliance</category><category domain="http://sqlblog.com/blogs/lara_rubbelke/archive/tags/SQL+Server+2008+R2/default.aspx">SQL Server 2008 R2</category></item><item><title>You want to grant someone permissions to do WHAT?!?!</title><link>http://sqlblog.com/blogs/lara_rubbelke/archive/2011/01/23/you-want-to-grant-someone-permissions-to-do-what.aspx</link><pubDate>Mon, 24 Jan 2011 02:32:00 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:32858</guid><dc:creator>Lara Rubbelke</dc:creator><slash:comments>0</slash:comments><comments>http://sqlblog.com/blogs/lara_rubbelke/comments/32858.aspx</comments><wfw:commentRss>http://sqlblog.com/blogs/lara_rubbelke/commentrss.aspx?PostID=32858</wfw:commentRss><wfw:comment>http://sqlblog.com/blogs/lara_rubbelke/rsscomments.aspx?PostID=32858</wfw:comment><description>Have you ever heard of these types of requests? True story! I have had each of these and many more: A customer needed to grant a business user the rights to issue a KILL command – without giving them sysadmin or CONTROL SERVER. A customer wanted to grant...(&lt;a href="http://sqlblog.com/blogs/lara_rubbelke/archive/2011/01/23/you-want-to-grant-someone-permissions-to-do-what.aspx"&gt;read more&lt;/a&gt;)&lt;img src="http://sqlblog.com/aggbug.aspx?PostID=32858" width="1" height="1"&gt;</description><category domain="http://sqlblog.com/blogs/lara_rubbelke/archive/tags/SQL+Server+2005/default.aspx">SQL Server 2005</category><category domain="http://sqlblog.com/blogs/lara_rubbelke/archive/tags/SQL+Server+2008/default.aspx">SQL Server 2008</category><category domain="http://sqlblog.com/blogs/lara_rubbelke/archive/tags/Compliance/default.aspx">Compliance</category></item><item><title>Microsoft Assessment and Planning (MAP) Toolkit 5.0 Beta</title><link>http://sqlblog.com/blogs/lara_rubbelke/archive/2010/05/24/microsoft-assessment-and-planning-map-toolkit-5-0-beta.aspx</link><pubDate>Tue, 25 May 2010 03:19:00 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:25487</guid><dc:creator>Lara Rubbelke</dc:creator><slash:comments>0</slash:comments><comments>http://sqlblog.com/blogs/lara_rubbelke/comments/25487.aspx</comments><wfw:commentRss>http://sqlblog.com/blogs/lara_rubbelke/commentrss.aspx?PostID=25487</wfw:commentRss><wfw:comment>http://sqlblog.com/blogs/lara_rubbelke/rsscomments.aspx?PostID=25487</wfw:comment><description>Do you know where SQL Server is installed - everywhere it is installed? Do you really know where SQL Server is installed? Are you looking for a tool that will help you discover any rogue instances so you can better manage these instances? The Beta 2 for...(&lt;a href="http://sqlblog.com/blogs/lara_rubbelke/archive/2010/05/24/microsoft-assessment-and-planning-map-toolkit-5-0-beta.aspx"&gt;read more&lt;/a&gt;)&lt;img src="http://sqlblog.com/aggbug.aspx?PostID=25487" width="1" height="1"&gt;</description><category domain="http://sqlblog.com/blogs/lara_rubbelke/archive/tags/SQL+Server+2005/default.aspx">SQL Server 2005</category><category domain="http://sqlblog.com/blogs/lara_rubbelke/archive/tags/Maintenance/default.aspx">Maintenance</category><category domain="http://sqlblog.com/blogs/lara_rubbelke/archive/tags/SQL+Server+2008/default.aspx">SQL Server 2008</category></item><item><title>SQL Server 2008 R2 CTP Available </title><link>http://sqlblog.com/blogs/lara_rubbelke/archive/2009/08/10/sql-server-2008-r2-ctp-available.aspx</link><pubDate>Mon, 10 Aug 2009 15:54:00 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:15935</guid><dc:creator>Lara Rubbelke</dc:creator><slash:comments>0</slash:comments><comments>http://sqlblog.com/blogs/lara_rubbelke/comments/15935.aspx</comments><wfw:commentRss>http://sqlblog.com/blogs/lara_rubbelke/commentrss.aspx?PostID=15935</wfw:commentRss><wfw:comment>http://sqlblog.com/blogs/lara_rubbelke/rsscomments.aspx?PostID=15935</wfw:comment><description>The first public CTP of SQL Server 2008 R2 is available for download. Read more about it at the Data Platform Insider blog: http://blogs.technet.com/dataplatforminsider/archive/2009/08/10/download-sql-server-2008-r2-august-ctp-today.aspx...(&lt;a href="http://sqlblog.com/blogs/lara_rubbelke/archive/2009/08/10/sql-server-2008-r2-ctp-available.aspx"&gt;read more&lt;/a&gt;)&lt;img src="http://sqlblog.com/aggbug.aspx?PostID=15935" width="1" height="1"&gt;</description><category domain="http://sqlblog.com/blogs/lara_rubbelke/archive/tags/SQL+Server+2008/default.aspx">SQL Server 2008</category></item><item><title>Automating SQL Server 2005/2000 Policy Evaluation</title><link>http://sqlblog.com/blogs/lara_rubbelke/archive/2009/06/13/automating-sql-server-2005-2000-policy-evaluation.aspx</link><pubDate>Sat, 13 Jun 2009 16:11:00 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:14631</guid><dc:creator>Lara Rubbelke</dc:creator><slash:comments>3</slash:comments><comments>http://sqlblog.com/blogs/lara_rubbelke/comments/14631.aspx</comments><wfw:commentRss>http://sqlblog.com/blogs/lara_rubbelke/commentrss.aspx?PostID=14631</wfw:commentRss><wfw:comment>http://sqlblog.com/blogs/lara_rubbelke/rsscomments.aspx?PostID=14631</wfw:comment><description>&lt;P align=left&gt;The &lt;A href="http://epmframework.codeplex.com/" target=_blank&gt;Enterprise Policy Management Framework version 3.0&lt;/A&gt;, a new version of the framework to support policy automated policy evaluation for SQL Server 2000 and 2005, has been posted to codeplex.&lt;/P&gt;
&lt;P align=left&gt;For those who are not familiar with the tool, the Enterprise Policy Management Framework is a reporting solution on the state of the SQL Server enterprise against a desired state defined in a policy. The key capabilities are to extend Policy-Based Management to all SQL Server instances in the enterprise, including SQL Server 2000 and SQL Server 2005.&amp;nbsp; The EPM Framework will automate a scheduled evaluation of a set of policies against a group of servers, and provide reports for DBAs to understand where they have instances and database objects which are not complying with an organization’s defined standards.&amp;nbsp; &lt;/P&gt;
&lt;P align=left&gt;The new 3.0 release includes the following enhancements:&lt;/P&gt;
&lt;BLOCKQUOTE&gt;
&lt;P align=left&gt;&lt;B&gt;Supports nested server groups in the Central Management Server&lt;/B&gt;&lt;/P&gt;
&lt;P align=left&gt;The previous versions did not support Central Management Server groups that were nested in parent groups.&amp;nbsp; This restriction has been removed and you may now design CMS groups to fit your organization, and leverage these groups for the EPM Framework.&lt;/P&gt;
&lt;P align=left&gt;&lt;B&gt;A new parameterized PowerShell execution &lt;/B&gt;&lt;/P&gt;
&lt;P align=left&gt;The PowerShell script has been updated with parameters.&amp;nbsp; This enhancement will significantly ease how you may deploy the solution, so you only have a single script to manage.&amp;nbsp; The previous versions would have required multiple versions of the PowerShell script you were to design the execution strategy by server group and policy category.&lt;/P&gt;
&lt;P align=left&gt;&lt;B&gt;Policy results are stored in a table format&lt;/B&gt;&lt;/P&gt;
&lt;P align=left&gt;The new version 3.0 will shred the policy result XML document to a PolicyHistoryDetail table during the evaluation.&amp;nbsp; The previous version only stored the XML data and issued queries against XML results stored in a SQL Server table named PolicyHistory.&amp;nbsp; This update will greatly improve performance during reporting and provides a better platform for the community to build customized views and reports. This could also improve storage – you can purge the data in the PolicyHistory table if you do not require the XML results.&lt;/P&gt;
&lt;P align=left&gt;&lt;B&gt;New Report Parameters &lt;/B&gt;&lt;/P&gt;
&lt;P align=left&gt;Based on feedback from the community, the new version includes parameters in the reports to support filtering by Central Management Server group.&amp;nbsp; This will be a very important criteria for large organizations who would like to focus on specific groups of instances.&lt;/P&gt;
&lt;P align=left&gt;&lt;B&gt;Fixes to error reporting logic&lt;/B&gt;&lt;/P&gt;
&lt;P align=left&gt;Not much to say, other than the logic that identifies errors stored in the tables is fixed.&lt;/P&gt;
&lt;P align=left&gt;&lt;STRONG&gt;Updated Documentation&lt;/STRONG&gt;&lt;/P&gt;
&lt;P align=left&gt;The documentation has been updated, and should be much easier to follow when setting up the framework.&lt;/P&gt;&lt;/BLOCKQUOTE&gt;
&lt;P align=left&gt;&amp;nbsp;&lt;/P&gt;
&lt;P align=left&gt;The EPM Framework leverages the Central Management Server, PowerShell, Reporting Services 2008, and Policy-Based Management.&amp;nbsp; You will need at least one instance of SQL Server 2008 and an instance of SQL Server 2008 Reporting Services to support the framework.&amp;nbsp; I will dive deeper into installation and configuration of the framework in subsequent blogs.&amp;nbsp; &lt;/P&gt;
&lt;P align=left&gt;Please let me know if you are using the framework, and if you have suggestions for future enhancements.&amp;nbsp; I am going to be integrating SQL Server 2008 Policy History centralization into the framework in the next version.&lt;/P&gt;
&lt;P align=left&gt;&lt;A href="http://sqlblog.com/blogs/lara_rubbelke/DashboardScreenShot30_613E49C2.jpg"&gt;&lt;IMG style="BORDER-RIGHT-WIDTH:0px;DISPLAY:inline;BORDER-TOP-WIDTH:0px;BORDER-BOTTOM-WIDTH:0px;BORDER-LEFT-WIDTH:0px;" title=DashboardScreenShot30 border=0 alt=DashboardScreenShot30 src="http://sqlblog.com/blogs/lara_rubbelke/DashboardScreenShot30_thumb_3E9A0B47.jpg" width=601 height=527&gt;&lt;/A&gt;&lt;/P&gt;&lt;img src="http://sqlblog.com/aggbug.aspx?PostID=14631" width="1" height="1"&gt;</description><category domain="http://sqlblog.com/blogs/lara_rubbelke/archive/tags/SQL+Server+2005/default.aspx">SQL Server 2005</category><category domain="http://sqlblog.com/blogs/lara_rubbelke/archive/tags/Maintenance/default.aspx">Maintenance</category><category domain="http://sqlblog.com/blogs/lara_rubbelke/archive/tags/SQL+Server+2008/default.aspx">SQL Server 2008</category><category domain="http://sqlblog.com/blogs/lara_rubbelke/archive/tags/Policy+Based+Management/default.aspx">Policy Based Management</category><category domain="http://sqlblog.com/blogs/lara_rubbelke/archive/tags/PowerShell/default.aspx">PowerShell</category><category domain="http://sqlblog.com/blogs/lara_rubbelke/archive/tags/Compliance/default.aspx">Compliance</category></item><item><title>Should I Compress My Indexes?  New Compression Whitepaper!</title><link>http://sqlblog.com/blogs/lara_rubbelke/archive/2009/05/31/should-i-compress-my-indexes-new-compression-whitepaper.aspx</link><pubDate>Sun, 31 May 2009 15:27:00 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:14357</guid><dc:creator>Lara Rubbelke</dc:creator><slash:comments>0</slash:comments><comments>http://sqlblog.com/blogs/lara_rubbelke/comments/14357.aspx</comments><wfw:commentRss>http://sqlblog.com/blogs/lara_rubbelke/commentrss.aspx?PostID=14357</wfw:commentRss><wfw:comment>http://sqlblog.com/blogs/lara_rubbelke/rsscomments.aspx?PostID=14357</wfw:comment><description>&lt;P align=left&gt;A very well written study of the compression is now available: &lt;A title="Data Compression- Strategy, Capacity Planning and Best Practices" href="http://msdn.microsoft.com/en-us/library/dd894051.aspx" target=_blank&gt;Data Compression - Strategy, Capacity Planning and Best Practices&lt;/A&gt;.&amp;nbsp; This study provides guidance on best practices for designing, implementing and managing compression in your environment.&amp;nbsp; I found this whitepaper to be full of useful guidance and scripts to monitor and manage compressed tables.&amp;nbsp; &lt;/P&gt;
&lt;P align=left&gt;The paper starts with tips and tools to help decide what to compress.&amp;nbsp; It then guides the reader through considerations for implementing compression and estimating necessary resources to complete compression.&amp;nbsp; The final sections of the paper provide guidance and evidence on management topics – space management, performance management, partition management.&amp;nbsp; &lt;/P&gt;
&lt;P align=left&gt;I am certain that those who are considering compression will find these concepts, scripts and tools to support the full lifecycle of compression.&amp;nbsp; I know that I will keep this on my short list of favorite whitepapers!&lt;/P&gt;&lt;img src="http://sqlblog.com/aggbug.aspx?PostID=14357" width="1" height="1"&gt;</description><category domain="http://sqlblog.com/blogs/lara_rubbelke/archive/tags/Maintenance/default.aspx">Maintenance</category><category domain="http://sqlblog.com/blogs/lara_rubbelke/archive/tags/SQL+Server+2008/default.aspx">SQL Server 2008</category><category domain="http://sqlblog.com/blogs/lara_rubbelke/archive/tags/Compression/default.aspx">Compression</category></item><item><title>Achieving PCI Compliance Resources</title><link>http://sqlblog.com/blogs/lara_rubbelke/archive/2009/04/26/achieving-pci-compliance-resources.aspx</link><pubDate>Sun, 26 Apr 2009 14:36:56 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:13563</guid><dc:creator>Lara Rubbelke</dc:creator><slash:comments>0</slash:comments><comments>http://sqlblog.com/blogs/lara_rubbelke/comments/13563.aspx</comments><wfw:commentRss>http://sqlblog.com/blogs/lara_rubbelke/commentrss.aspx?PostID=13563</wfw:commentRss><wfw:comment>http://sqlblog.com/blogs/lara_rubbelke/rsscomments.aspx?PostID=13563</wfw:comment><description>&lt;p&gt;This past week I was delivering some events for customers on supporting Mission Critical databases with SQL Server 2008.&amp;#160; During the compliance conversation I mentioned that there were a couple of new resources available related specifically to PCI compliance.&amp;#160; &lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.parentenet.com/whitepapers/SQL2008_PCI.pdf" target="_blank"&gt;Parente Randolph published a whitepaper&lt;/a&gt; on how to leverage SQL Server 2008 features to meet PCI compliance.&amp;#160; &lt;/p&gt;  &lt;p&gt;Furthermore, these auditors presented a &lt;a href="http://msevents.microsoft.com/CUI/WebCastEventDetails.aspx?culture=en-US&amp;amp;EventID=1032404174&amp;amp;CountryCode=US" target="_blank"&gt;TechNet webcast&lt;/a&gt; on the same subject.&lt;/p&gt;  &lt;p&gt;I would also highly recommend the &lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=6e1021dd-65b9-41c2-8385-438028f5acc2&amp;amp;DisplayLang=en" target="_blank"&gt;SQL Server 2008 Compliance Guide&lt;/a&gt; which will complement the above resources with technical implementation examples.&lt;/p&gt;&lt;img src="http://sqlblog.com/aggbug.aspx?PostID=13563" width="1" height="1"&gt;</description><category domain="http://sqlblog.com/blogs/lara_rubbelke/archive/tags/SQL+Server+2008/default.aspx">SQL Server 2008</category><category domain="http://sqlblog.com/blogs/lara_rubbelke/archive/tags/Compliance/default.aspx">Compliance</category></item><item><title>Another EKM Vendor Announced Support</title><link>http://sqlblog.com/blogs/lara_rubbelke/archive/2009/04/22/another-ekm-vendor-announced-support.aspx</link><pubDate>Thu, 23 Apr 2009 03:05:00 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:13468</guid><dc:creator>Lara Rubbelke</dc:creator><slash:comments>2</slash:comments><comments>http://sqlblog.com/blogs/lara_rubbelke/comments/13468.aspx</comments><wfw:commentRss>http://sqlblog.com/blogs/lara_rubbelke/commentrss.aspx?PostID=13468</wfw:commentRss><wfw:comment>http://sqlblog.com/blogs/lara_rubbelke/rsscomments.aspx?PostID=13468</wfw:comment><description>&lt;P&gt;This week &lt;A class="" href="http://iss.thalesgroup.com/Press/Press%20Releases/2009/Thales%20Hardware%20Security%20Modules%20integrate%20with%20Microsoft%20SQL%20Server%202008.aspx" target=_blank&gt;Thales announced that their nCipher&lt;/A&gt; product line now integrates with SQL Server 2008 EKM.&amp;nbsp; This announcement follows &lt;A href="http://www.safenet-inc.com/news/view.asp?news_ID=566" target=_blank&gt;SafeNet&lt;/A&gt; as our second vendor to support EKM.&amp;nbsp; &lt;/P&gt;&lt;img src="http://sqlblog.com/aggbug.aspx?PostID=13468" width="1" height="1"&gt;</description><category domain="http://sqlblog.com/blogs/lara_rubbelke/archive/tags/Maintenance/default.aspx">Maintenance</category><category domain="http://sqlblog.com/blogs/lara_rubbelke/archive/tags/SQL+Server+2008/default.aspx">SQL Server 2008</category><category domain="http://sqlblog.com/blogs/lara_rubbelke/archive/tags/Compliance/default.aspx">Compliance</category></item><item><title>Standardized SQL Server 2008 Audit</title><link>http://sqlblog.com/blogs/lara_rubbelke/archive/2009/04/21/standardized-sql-server-2008-audit.aspx</link><pubDate>Tue, 21 Apr 2009 04:24:00 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:13410</guid><dc:creator>Lara Rubbelke</dc:creator><slash:comments>2</slash:comments><comments>http://sqlblog.com/blogs/lara_rubbelke/comments/13410.aspx</comments><wfw:commentRss>http://sqlblog.com/blogs/lara_rubbelke/commentrss.aspx?PostID=13410</wfw:commentRss><wfw:comment>http://sqlblog.com/blogs/lara_rubbelke/rsscomments.aspx?PostID=13410</wfw:comment><description>&lt;P align=left&gt;Isn’t life grand when you have a standard approach?&amp;nbsp; That is typically my frame of mind, which is one reason why I advocate for a standard approach to designing, deploying and managing your SQL Server 2008 audits.&amp;nbsp; I have developed the attached standardized scripts which should get you started on your standardized approach. &lt;/P&gt;
&lt;P align=left&gt;The script SetupAudit_Shell is a single SQLCMD script that will create the Audit, the Server Audit Specification, and a Database Audit Specification in every user database (except Model and TempDB).&amp;nbsp; The script is written to send the audit data to a file destination.&amp;nbsp; You will need to alter this part of the statement if you prefer to send your audit data to the Windows Security or Application log.&amp;nbsp; The Server Audit Specification and the Database Audit Specification statements do not specify the audit action groups – you will need to supply these based on what you want to audit.&amp;nbsp; &lt;/P&gt;
&lt;P align=left&gt;The script SetupDataAccessAudit_Shell is a script to alter an existing Database Audit Specification with table level audit actions.&amp;nbsp; This will apply the exceptions to your standard audit when compliance goals require you audit DML activity from tables which store sensitive data.&lt;/P&gt;
&lt;P align=left&gt;The remaining scripts (DisableAudit_Shell, EnableAudit_Shell, RemoveAudit_Shell) are scripts to help manage the audits which are deployed with the defined standards.&lt;/P&gt;&lt;img src="http://sqlblog.com/aggbug.aspx?PostID=13410" width="1" height="1"&gt;</description><enclosure url="http://sqlblog.com/blogs/lara_rubbelke/attachment/13410.ashx" length="3729" type="application/x-zip-compressed" /><category domain="http://sqlblog.com/blogs/lara_rubbelke/archive/tags/SQL+Server+2008/default.aspx">SQL Server 2008</category><category domain="http://sqlblog.com/blogs/lara_rubbelke/archive/tags/Audit/default.aspx">Audit</category></item><item><title>Enterprise Policy Management: Updates, New Whitepaper, and Upcoming Webcast</title><link>http://sqlblog.com/blogs/lara_rubbelke/archive/2009/03/04/enterprise-policy-management-updates-new-whitepaper-and-upcoming-webcast.aspx</link><pubDate>Wed, 04 Mar 2009 15:21:00 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:12425</guid><dc:creator>Lara Rubbelke</dc:creator><slash:comments>0</slash:comments><comments>http://sqlblog.com/blogs/lara_rubbelke/comments/12425.aspx</comments><wfw:commentRss>http://sqlblog.com/blogs/lara_rubbelke/commentrss.aspx?PostID=12425</wfw:commentRss><wfw:comment>http://sqlblog.com/blogs/lara_rubbelke/rsscomments.aspx?PostID=12425</wfw:comment><description>&lt;P align=left&gt;The next version of the &lt;A href="http://www.codeplex.com/EPMFramework" target=_blank&gt;Enterprise Policy Management Framework&lt;/A&gt; has been published to CodePlex.&amp;nbsp; The new version includes error trapping and error reporting, and a few bug fixes.&amp;nbsp; Please be sure to download the documentation as well, which will help you understand how to use the PowerShell variables to scale the execution in your environment.&amp;nbsp; &lt;/P&gt;
&lt;P align=left&gt;A new &lt;A href="http://msdn.microsoft.com/en-us/library/dd542632.aspx" target=_blank&gt;whitepaper has been published&lt;/A&gt; outlining the intent of the Enterprise Policy Management Framework. A big thank you to Tom Davidson for all of the hard work writing the paper.&lt;/P&gt;
&lt;P align=left&gt;Finally, anyone who is interested in an introduction to Policy-Based Management and a demonstration of the EPM Framework in action can attend my TechNet webcast next Thursday, March 12: &lt;A href="http://msevents.microsoft.com/CUI/WebCastEventDetails.aspx?EventID=1032402179&amp;amp;EventCategory=4&amp;amp;culture=en-US&amp;amp;CountryCode=US" target=_blank&gt;TechNet Webcast: Governing Your Enterprise with Policy-Based Management (Level 300)&lt;/A&gt;.&amp;nbsp; This webcast is best suited for those of you who…:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;
&lt;DIV align=left&gt;are currently frustrated with managing a SQL Server environment that is inconsistently deployed&lt;/DIV&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;DIV align=left&gt;want to reduce the time you spend developing and running scripts to determine issues in business and regulatory compliance&lt;/DIV&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;DIV align=left&gt;simply want to see a better way to manage groups of servers to better scale your time&lt;/DIV&gt;&lt;/LI&gt;&lt;/UL&gt;
&lt;P align=left&gt;Join in the webcast, it is sure to be fun and enlightening!&amp;nbsp; In short, you will walk away with an understanding of Policy-Based Management, how to use the SQL Server 2008 Policy-Based Management framework to support down-version (SQL Server 2000 and 2005) policy evaluation, and how to implement the EPM framework (see picture below) for an understanding of policy compliance across the enterprise.&amp;nbsp; &lt;/P&gt;
&lt;P align=left&gt;&lt;A href="http://sqlblog.com/blogs/lara_rubbelke/image_34714CF6.png"&gt;&lt;IMG title=image style="BORDER-RIGHT:0px;BORDER-TOP:0px;DISPLAY:block;FLOAT:none;MARGIN-LEFT:auto;BORDER-LEFT:0px;MARGIN-RIGHT:auto;BORDER-BOTTOM:0px;" height=484 alt=image src="http://sqlblog.com/blogs/lara_rubbelke/image_thumb_6895506F.png" width=576 border=0&gt;&lt;/A&gt;&lt;/P&gt;&lt;img src="http://sqlblog.com/aggbug.aspx?PostID=12425" width="1" height="1"&gt;</description><category domain="http://sqlblog.com/blogs/lara_rubbelke/archive/tags/Maintenance/default.aspx">Maintenance</category><category domain="http://sqlblog.com/blogs/lara_rubbelke/archive/tags/SQL+Server+2008/default.aspx">SQL Server 2008</category><category domain="http://sqlblog.com/blogs/lara_rubbelke/archive/tags/Policy+Based+Management/default.aspx">Policy Based Management</category><category domain="http://sqlblog.com/blogs/lara_rubbelke/archive/tags/PowerShell/default.aspx">PowerShell</category></item><item><title>Policy-Based Management Configuration Policy</title><link>http://sqlblog.com/blogs/lara_rubbelke/archive/2009/02/28/policy-based-management-configuration-policy.aspx</link><pubDate>Sun, 01 Mar 2009 03:15:00 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:12357</guid><dc:creator>Lara Rubbelke</dc:creator><slash:comments>0</slash:comments><comments>http://sqlblog.com/blogs/lara_rubbelke/comments/12357.aspx</comments><wfw:commentRss>http://sqlblog.com/blogs/lara_rubbelke/commentrss.aspx?PostID=12357</wfw:commentRss><wfw:comment>http://sqlblog.com/blogs/lara_rubbelke/rsscomments.aspx?PostID=12357</wfw:comment><description>&lt;P&gt;I have been working on some new materials for an upcoming webcast on leveraging Policy-Based Management using the Enterprise Policy Management Framework.&amp;nbsp; As I was working through some sample policies, I noticed that&amp;nbsp;my SQL Server 2008 instances were not consistently configured for history retention and to log on success.&amp;nbsp; Well, I thought this was a good thing to put in a policy, as policies allow me to easily manage configuration settings for my instance.&amp;nbsp; Much to my surprise, SQL Server 2008 does not currently have a Policy Based Management Configuration facet!&amp;nbsp; I logged a suggestion to connect.microsoft.com (&lt;A href="https://connect.microsoft.com/SQLServer/feedback/ViewFeedback.aspx?FeedbackID=419574"&gt;https://connect.microsoft.com/SQLServer/feedback/ViewFeedback.aspx?FeedbackID=419574&lt;/A&gt;), and hopefully we will see a new facet in the future.&amp;nbsp; Please feel free to vote if you think this would be a helpful addition. &lt;/P&gt;
&lt;P&gt;In the meantime, we still need to manage our PBM configuraton in our SQL Server 2008 installations.&amp;nbsp; So I developed a policy which will execute some scripts and report the state of our environments.&amp;nbsp; I cannot force configuration to my policy when conditions are defined with scripts, but at least I have a scalable solution to report on those instances which do not conform.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;The attached policy defines the PBM management settings.&amp;nbsp; I typically like to change the PBM Management properties such that the policy history is only retained for 14 days and successful evaluations are logged.&amp;nbsp; If you care to look at these setting in Management Studio, right click on Policy Management to select properties.&amp;nbsp; &lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;When LogOnSuccess is set to false (default) successful evaluations are not logged.&amp;nbsp; Setting LogOnSuccess to true will log all policy evaluation results.&amp;nbsp; You will want to log on success if you decide to centralize policy history and perform enterprise management reporting.&amp;nbsp; Without the log on success, you will only have failed evaluations.&amp;nbsp;&amp;nbsp; This makes it difficult to determine if a policy is currently in a failed state or if it was in a failed state in the past but is currently in compliance with your specifications. &lt;/LI&gt;
&lt;LI&gt;HistoryRetentionInDays will determine&amp;nbsp;how many days of policy history will be saved in the policy history tables in MSDB.&amp;nbsp; &lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;The attached policy is not configured to run on a schedule.&amp;nbsp; You may want to change this setting prior to importing the policy to your SQL Server 2008 instances.&amp;nbsp; &lt;/P&gt;&lt;img src="http://sqlblog.com/aggbug.aspx?PostID=12357" width="1" height="1"&gt;</description><enclosure url="http://sqlblog.com/blogs/lara_rubbelke/attachment/12357.ashx" length="2023" type="application/x-zip-compressed" /><category domain="http://sqlblog.com/blogs/lara_rubbelke/archive/tags/Maintenance/default.aspx">Maintenance</category><category domain="http://sqlblog.com/blogs/lara_rubbelke/archive/tags/SQL+Server+2008/default.aspx">SQL Server 2008</category><category domain="http://sqlblog.com/blogs/lara_rubbelke/archive/tags/Policy+Based+Management/default.aspx">Policy Based Management</category></item><item><title>Evaluating Policies On Demand Through PowerShell</title><link>http://sqlblog.com/blogs/lara_rubbelke/archive/2008/06/19/evaluating-policies-on-demand-through-powershell.aspx</link><pubDate>Thu, 19 Jun 2008 04:22:00 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:7379</guid><dc:creator>Lara Rubbelke</dc:creator><slash:comments>3</slash:comments><comments>http://sqlblog.com/blogs/lara_rubbelke/comments/7379.aspx</comments><wfw:commentRss>http://sqlblog.com/blogs/lara_rubbelke/commentrss.aspx?PostID=7379</wfw:commentRss><wfw:comment>http://sqlblog.com/blogs/lara_rubbelke/rsscomments.aspx?PostID=7379</wfw:comment><description>&lt;P&gt;&lt;A class="" href="http://sqlblog.com/blogs/lara_rubbelke/archive/2008/06/13/policy-evaluation-on-a-single-sql-server-2008-instance.aspx" target=_blank&gt;In my previous blog&lt;/A&gt; I reviewed the different policy evaluation modes available in SQL Server 2008.&amp;nbsp; In this next installment I will detail how to initiate a policy on demand using PowerShell.&lt;/P&gt;
&lt;P&gt;PowerShell integration with SQL Server 2008 is getting more press lately.&amp;nbsp; &lt;A class="" href="http://sqlblog.com/blogs/lara_rubbelke/archive/2008/04/22/powershell-learning-resources-_2D00_-online.aspx" target=_blank&gt;In past blogs&lt;/A&gt; I noted a few resources to help learn PowerShell, and since that time additional resources (&lt;A href="http://blogs.technet.com/industry_insiders/pages/powershell-in-sql-server-2008.aspx"&gt;http://blogs.technet.com/industry_insiders/pages/powershell-in-sql-server-2008.aspx&lt;/A&gt; and &lt;A href="http://blogs.msdn.com/mwories/archive/2008/06/14/SQL2008_5F00_Powershell.aspx"&gt;http://blogs.msdn.com/mwories/archive/2008/06/14/SQL2008_5F00_Powershell.aspx&lt;/A&gt; to call out a few) continue to surface.&amp;nbsp; This blog series is focused on Policy Evaluation, so I will be specifically looking at the new PowerShell cmdlet available in SQL Server 2008 to support an on demand evaluation of policies.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;The cmdlet &lt;B&gt;Invoke-PolicyEvaluation&lt;/B&gt; will allow you to specify a policy (or set of policies) to be evaluated against a target server.&amp;nbsp; The general syntax is as follows:&lt;/P&gt;
&lt;P&gt;Invoke-PolicyEvaluation [-Policy [(&amp;lt;string[]&amp;gt; | &amp;lt;Policy&amp;gt; | &amp;lt;FileInfo&amp;gt;)]] -TargetServerName &amp;lt;(string | ISfcConnection)&amp;gt;&amp;nbsp; [-TargetExpression&amp;nbsp; &amp;lt;string&amp;gt;] [-OutputXml] [-AdHocPolicyExecutionMode &amp;lt;AdHocPolicyExecutionMode&amp;gt;]&lt;/P&gt;
&lt;P&gt;To open the SQL Server PowerShell provider through Management Studio, right-click on the Server and select Start PowerShell.&amp;nbsp; &lt;/P&gt;
&lt;BLOCKQUOTE&gt;
&lt;P&gt;&lt;I&gt;Note: You can also add the SQL Server PowerShell provider into the main PowerShell.&amp;nbsp; Open PowerShell and run the following commands to load the SQL Server snap-ins.&amp;nbsp; These are documented incorrectly in SQL Server 2008 RC0 BOL.&lt;/I&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;
&lt;BLOCKQUOTE&gt;
&lt;P&gt;add-pssnapin SqlServerCmdletSnapin100&lt;/P&gt;
&lt;P&gt;add-pssnapin SqlServerProviderSnapin100&lt;/P&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;Once you are in PowerShell, we can execute our commands to evaluate a policy.&amp;nbsp; I encourage you to issue the following command, which will return a very detailed report on the cmdlet:&lt;/P&gt;
&lt;BLOCKQUOTE&gt;
&lt;P&gt;Get-Help Invoke-PolicyEvaluation -Detailed&lt;/P&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;A very simple example will assume that you have the SQL Server 2008 sample policies installed in the default location.&amp;nbsp; On my laptop, they are located at "C:\Program Files (x86)\Microsoft SQL Server\100\Tools\Policies\DatabaseEngine\1033".&amp;nbsp; &lt;/P&gt;
&lt;BLOCKQUOTE&gt;
&lt;P&gt;#Set the working location to the file with our sample policies&lt;/P&gt;
&lt;P&gt;sl "C:\Program Files (x86)\Microsoft SQL Server\100\Tools\Policies\DatabaseEngine\1033"&lt;/P&gt;
&lt;P&gt;Invoke-PolicyEvaluation -Policy "Database Auto Close.xml" -TargetServer "MyServerName"&lt;/P&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;Executing these commands will return the output on the console with the results of the policy evaluation.&amp;nbsp; Note that these results are NOT stored&amp;nbsp;in the MSDB&amp;nbsp;database (as other&amp;nbsp;evaluation modes will do).&amp;nbsp; &amp;nbsp;&lt;/P&gt;
&lt;P&gt;If you would like to evaluate multiple policies, they are passed as a comma separated list as follows:&lt;/P&gt;
&lt;BLOCKQUOTE&gt;
&lt;P&gt;#Set the working location to the file with our sample policies&lt;/P&gt;
&lt;P&gt;sl "C:\Program Files (x86)\Microsoft SQL Server\100\Tools\Policies\DatabaseEngine\1033"&lt;/P&gt;
&lt;P&gt;Invoke-PolicyEvaluation -Policy "Database Auto Close.xml", "Database Auto Shrink" -TargetServer "MyServerName"&lt;/P&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;The Invoke-PolicyEvaluation cmdlet can accept inputs from a pipe.&amp;nbsp; The following example will loop through and evaluate each policy stored in the file against the server.&lt;/P&gt;
&lt;BLOCKQUOTE&gt;
&lt;P&gt;sl "C:\Program Files (x86)\Microsoft SQL Server\100\Tools\Policies\DatabaseEngine\1033"&lt;/P&gt;
&lt;P&gt;gci | Invoke-PolicyEvaluation -TargetServer "MyServerName"&lt;/P&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;By default, the -AdHocPolicyExecutionMode parameter is "Check", which will simply evaluate the policy and report back through the console or through an XML output file.&amp;nbsp; The "Configure" option will reconfigure properties that failed compliance so they comply with the policy, as long as they are deterministic and settable.&amp;nbsp; &lt;/P&gt;
&lt;BLOCKQUOTE&gt;
&lt;P&gt;sl "C:\Program Files (x86)\Microsoft SQL Server\100\Tools\Policies\DatabaseEngine\1033"&lt;/P&gt;
&lt;P&gt;Invoke-PolicyEvaluation -Policy "Database Auto Close.xml", "Database Auto Shrink" -TargetServer "MyServerName" -AdHocPolicyExecutionMode "Configure"&lt;/P&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;The final parameter I want to point out is the -OutputXml, which will produce an XML report.&amp;nbsp; As mentioned above, the policy evaluation results are not stored in the MSDB database.&amp;nbsp; Using this parameter, you can produce an output file which will be very useful when you want to review the information at a later time.&amp;nbsp; &lt;/P&gt;
&lt;BLOCKQUOTE&gt;
&lt;P&gt;sl "C:\Program Files (x86)\Microsoft SQL Server\100\Tools\Policies\DatabaseEngine\1033"&lt;/P&gt;
&lt;P&gt;Invoke-PolicyEvaluation -Policy "Database Auto Close.xml" -TargetServer "MyServerName" -OutputXml &amp;gt;"Report.xml"&lt;/P&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;So, yes you can evaluate a policy on demand through PowerShell.&amp;nbsp; You can create a SQL Server Agent Job with a step that executes your PowerShell script (new in 2008).&amp;nbsp; &lt;/P&gt;
&lt;P&gt;I can hear what many of you are thinking - "&amp;lt;insert your name here&amp;gt;, why would I need to use this feature if I can simply create a policy on SQL Server 2008 and let the policy manage the server and have the output stored in MSDB?"&amp;nbsp; In my opinion, the policy &lt;I&gt;&lt;U&gt;should be&lt;/U&gt;&lt;/I&gt; on the server when your server is SQL Server 2008.&amp;nbsp; The server &lt;I&gt;&lt;U&gt;should be &lt;/U&gt;&lt;/I&gt;managed by the policy whenever possible.&amp;nbsp; However... What if you want to evaluate a policy against a SQL Server 2000 or 2005 instance?&amp;nbsp; Aha!&amp;nbsp; Now you have a real use case for invoking policy evaluation through PowerShell.&amp;nbsp; &amp;nbsp;&lt;/P&gt;
&lt;P&gt;This is just a brief overview of some of the ways to use this cmdlet, but as with all PowerShell and SQL implementations there are multiple ways to put these into action.&amp;nbsp; In the next parts of the series,&amp;nbsp;I will explore central management servers, data collectors, and examples on how to extend this cmdlet for an enterprise solution.&lt;/P&gt;&lt;img src="http://sqlblog.com/aggbug.aspx?PostID=7379" width="1" height="1"&gt;</description><category domain="http://sqlblog.com/blogs/lara_rubbelke/archive/tags/Maintenance/default.aspx">Maintenance</category><category domain="http://sqlblog.com/blogs/lara_rubbelke/archive/tags/SQL+Server+2008/default.aspx">SQL Server 2008</category><category domain="http://sqlblog.com/blogs/lara_rubbelke/archive/tags/Policy+Based+Management/default.aspx">Policy Based Management</category><category domain="http://sqlblog.com/blogs/lara_rubbelke/archive/tags/PowerShell/default.aspx">PowerShell</category></item><item><title>Policy Evaluation on a Single SQL Server 2008 Instance</title><link>http://sqlblog.com/blogs/lara_rubbelke/archive/2008/06/13/policy-evaluation-on-a-single-sql-server-2008-instance.aspx</link><pubDate>Fri, 13 Jun 2008 17:52:00 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:7279</guid><dc:creator>Lara Rubbelke</dc:creator><slash:comments>3</slash:comments><comments>http://sqlblog.com/blogs/lara_rubbelke/comments/7279.aspx</comments><wfw:commentRss>http://sqlblog.com/blogs/lara_rubbelke/commentrss.aspx?PostID=7279</wfw:commentRss><wfw:comment>http://sqlblog.com/blogs/lara_rubbelke/rsscomments.aspx?PostID=7279</wfw:comment><description>SQL Server 2008 Books Online and the &lt;A class="" title="Policy Based Management blog" href="http://blogs.msdn.com/sqlpbm/default.aspx" target=_blank&gt;Policy Based Management (PBM) blog&lt;/A&gt; have documented how to create a policy.&amp;nbsp; Please review these valuable resources if you are looking for an introduction to creating policies in SQL Server 2008.&amp;nbsp; Through the remainder of this series, I will be focusing on the different methods of evaluating a policy against a target (server, database, database object).&amp;nbsp; This first part will focus on policy evaluation on a single SQL Server 2008 instance.&amp;nbsp; As we journey through the series, I will deliver methods to evaluate policies across multiple servers and against down versions of SQL Server (2000 and 2005).&amp;nbsp; 
&lt;P&gt;As a brief introduction, SQL Server 2008 includes a new Policy Based Management (PBM) framework.&amp;nbsp; This new framework allows you to specify &lt;I&gt;intent&lt;/I&gt; in a policy, store the policy on a server and have the server managed by that policy (note: a policy may also be stored in a file and I will touch on this later in the series).&amp;nbsp; Intent may be defined as a server configuration, database configuration, connectivity requirements, security requirements, business rules, naming conventions, and more.&amp;nbsp; A policy will identify the targets (servers, databases, database objects) that must be managed by this intent and how they are managed by the intent. &amp;nbsp;How the target is managed by the policy is dictated by the evaluation mode specified on the policy.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;&lt;I&gt;I think it is very important that we set expectations:&amp;nbsp; Policy Based Management provides a level of prevention and enforcement, but the current version should be more strongly considered a framework to report and in some cases prevent and enforce compliance.&amp;nbsp; This is a tool to more easily manage deployed servers, report on the state of SQL Server, and maintain consistency and compliance to your business and regulatory requirements. &lt;/I&gt;&lt;/P&gt;
&lt;P&gt;SQL Server 2008 policies can be evaluated, or invoked, in a number of ways on a single instance.&amp;nbsp; Not all evaluation modes are available to all policies.&amp;nbsp; The facet will determine the evaluation modes available for your policy.&amp;nbsp; I have pointed out the Policy Based Management blog in the past, and please spend a few minutes to review the blog on &lt;A class="" title=Facets href="http://blogs.msdn.com/sqlpbm/archive/2008/05/24/facets.aspx" target=_blank&gt;Facets&lt;/A&gt;.&amp;nbsp; This blog is particularly enlightening as it points directly to the relationship between each facet and the supported evaluation modes.&amp;nbsp; The team has developed a chart (hint: print this out and keep it nearby) which will be very useful when you are designing policies.&lt;/P&gt;
&lt;P&gt;The following are available evaluation mode options when you save the policy on a SQL Server 2008 instance:&lt;/P&gt;
&lt;P&gt;&lt;B&gt;On Schedule&lt;/B&gt;&lt;/P&gt;
&lt;P&gt;&lt;I&gt;On Schedule&lt;/I&gt; will create a SQL Server agent job to execute the policy at scheduled intervals.&amp;nbsp; This option is available for all policies created for the database engine.&amp;nbsp; The results of the policy evaluation are available by viewing the SQL Server event log, Windows NT Application Log, or through the &lt;A class="" href="http://sqlblog.com/blogs/lara_rubbelke/archive/2008/06/08/saving-sql-server-2008-policy-based-management-execution-history.aspx" target=_blank&gt;policy views in MSDB outlined here&lt;/A&gt;.&lt;/P&gt;
&lt;P&gt;Consider the following scenario:&amp;nbsp; Many organizations are challenged with maintaining a consistent deployment of SQL Server.&amp;nbsp; The process to build a new SQL Server may specify the appropriate settings, but over time these settings may be inadvertently updated.&amp;nbsp; A DBA may change an AWE setting, alter configuration settings, or alter a backup schedule - any of which can increase the time managing the server and identifying the cause of an issue.&amp;nbsp; As a result the organization either spends energy managing these configuration settings (manually reviewing periodically or building a heavily architected process to manage this process) or the enterprise has many different deployed builds in production (which leads to issues when standardizing the management of the database tier).&lt;/P&gt;
&lt;P&gt;A policy can be deployed on these servers with an evaluation mode On Schedule.&amp;nbsp; The schedule may run once per day (for example) to determine the status of the deployed instance.&amp;nbsp; This mode will provide an ideal method for &lt;I&gt;automating&lt;/I&gt; the evaluation of deployment standards and &lt;I&gt;reporting&lt;/I&gt; on instances which violate these standards.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;&lt;B&gt;Check on Change: Log &lt;/B&gt;&lt;/P&gt;
&lt;P&gt;&lt;I&gt;Check on Change: Log&lt;/I&gt; will write output to the event log and to MSDB when an action is executed against one of the properties that are controlled by the policy.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;For example, you may have a policy that requires xp_cmdshell is disabled.&amp;nbsp; If a DBA were to enable xp_cmdshell an event is logged indicating that the policy has been violated.&amp;nbsp; These logs may be viewed in the SQL Server event log, Windows NT Application Log, or through the policy views in MSDB.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;Rounding out this picture, consider an alerting mechanism for violated policies that are critical.&amp;nbsp; In some cases, you may want to be immediately notified of a violation to your policy.&amp;nbsp; You may set up an alert triggered by these event logs through SQL Server or System Center which will send an email to a manager or lead administrator that an action was executed against your server that violates the policy.&lt;/P&gt;
&lt;P&gt;&lt;B&gt;Check on Change: Prevent &lt;/B&gt;&lt;/P&gt;
&lt;P&gt;&lt;I&gt;Check on Change: Prevent&lt;/I&gt; will disallow any changes that violate the policy.&amp;nbsp; When a policy is created with this option, a DDL trigger is generated on the server.&amp;nbsp; If you have multiple policies which are set to Check on Change:Prevent, they will all use the same DDL trigger.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;As an example, you may have a business rule that requires all stored procedures in a particular application database follow a consistent naming convention.&amp;nbsp; A policy is set up with this requirement and enforced on the server with the Check on Change: Prevent evaluation mode.&amp;nbsp; When a developer issues a CREATE PROCEDURE statement, the server DDL trigger is started.&amp;nbsp; SQL Server will evaluate the procedure against the conditions specified in the policy.&amp;nbsp; If the procedure violates the condition, the CREATE PROCEDURE statement is rolled back and an error is returned to the developer.&amp;nbsp; The policy will also write an event to the SQL Server event log, Windows NT Application log and the policy views in MSDB.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;&lt;B&gt;On Demand &lt;/B&gt;&lt;/P&gt;
&lt;P&gt;&lt;I&gt;On Demand&lt;/I&gt; is an option where you manually run the policy.&amp;nbsp; Policies which are stored on SQL Server 2008 and evaluated On Demand are disabled and cannot be enabled. &amp;nbsp;This option is available for all policies stored on a SQL Server 2008 instance or stored as an XML file.&amp;nbsp; The results of policies executed On Demand are not written to the SQL Server Event Log, but are available in the &lt;A class="" title="Policy Views blog" href="http://sqlblog.com/blogs/lara_rubbelke/archive/2008/06/08/saving-sql-server-2008-policy-based-management-execution-history.aspx" target=_blank&gt;policy views in MSDB&lt;/A&gt;.&lt;/P&gt;
&lt;P&gt;Evaluating a policy On Demand on a single instance can include multiple flavors.&amp;nbsp; The most obvious is manually running the policy in SQL Server Management Studio, as in the following examples.&amp;nbsp; &lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;Right-click on any policy stored in SQL Server 2008 and select Evaluate to manually evaluate the policy. &lt;/LI&gt;
&lt;LI&gt;Right click the Policies folder in SQL Server Management Studio (SQL Server Instance&amp;gt;Management&amp;gt;Policy Based Management&amp;gt;Policies) and select Evaluate. The Evaluate Policies dialog will appear. By default, the policies stored on the SQL Server 2008 instance are available and you can check which policies you would like to evaluate. If the policies are stored as XML files, select the Browse(...) button. Navigate to the folder where the policy xml files are stored and select one or more policies (hold the shift key to select more than one policy). &lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;In my next post in this series I will detail one of the lesser known (but very cool and useful) methods of evaluating a policy on demand.&amp;nbsp; &lt;/P&gt;&lt;img src="http://sqlblog.com/aggbug.aspx?PostID=7279" width="1" height="1"&gt;</description><category domain="http://sqlblog.com/blogs/lara_rubbelke/archive/tags/SQL+Server+2008/default.aspx">SQL Server 2008</category><category domain="http://sqlblog.com/blogs/lara_rubbelke/archive/tags/Policy+Based+Management/default.aspx">Policy Based Management</category></item><item><title>SQL Server 2008 Policy Based Management Resources</title><link>http://sqlblog.com/blogs/lara_rubbelke/archive/2008/06/12/sql-server-2008-policy-based-management-resources.aspx</link><pubDate>Thu, 12 Jun 2008 20:17:00 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:7271</guid><dc:creator>Lara Rubbelke</dc:creator><slash:comments>1</slash:comments><comments>http://sqlblog.com/blogs/lara_rubbelke/comments/7271.aspx</comments><wfw:commentRss>http://sqlblog.com/blogs/lara_rubbelke/commentrss.aspx?PostID=7271</wfw:commentRss><wfw:comment>http://sqlblog.com/blogs/lara_rubbelke/rsscomments.aspx?PostID=7271</wfw:comment><description>&lt;P&gt;I will be releasing a series of blogs related to Policy Based Management and PowerShell in SQL Server 2008.&amp;nbsp; As a precursor to these blogs, I wanted to be sure that everyone is aware of the many great resources available online. &amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;B&gt;Policy-Based Management Blog&lt;/B&gt;&lt;/P&gt;
&lt;P&gt;The SQL Server Manageability Team has started a new blog related to Policy-Based Management.&amp;nbsp; This site will provide some great learning content for the terminology and development of policies.&amp;nbsp; &lt;A href="http://blogs.msdn.com/sqlpbm/" target=_blank&gt;http://blogs.msdn.com/sqlpbm/&lt;/A&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;B&gt;SQL Server 2008 Feature Pack&lt;/B&gt;&lt;/P&gt;
&lt;P&gt;The following site will provide a number of additional features that you can download and use with SQL Server 2008.&amp;nbsp; Of particular interest is the download for the &lt;B&gt;Microsoft SQL Server 2008 Policies&lt;/B&gt;, which are policies that were developed for all of the best practices represented in previous versions of&amp;nbsp;the Microsoft SQL Server Best&amp;nbsp;Practice Analyzer.&amp;nbsp; I find these policies to be great tools to learn about the different ways to develop, deploy and evaluate policies.&amp;nbsp; &lt;A href="http://www.microsoft.com/downloads/details.aspx?FamilyId=089A9DAD-E2DF-43E9-9CD8-C06320520B40&amp;amp;displaylang=en"&gt;http://www.microsoft.com/downloads/details.aspx?FamilyId=089A9DAD-E2DF-43E9-9CD8-C06320520B40&amp;amp;displaylang=en&lt;/A&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;B&gt;SQL Server 2008 RC0 Books Online&lt;/B&gt;&lt;/P&gt;
&lt;P&gt;SQL Server 2008 RC0 SQL Server Books Online can be downloaded and installed on your desktop (without negatively impacting other versions of Books Online).&amp;nbsp; The documentation contains many great learning resources for Policy Based Management and PowerShell (and loads of other stuff).&amp;nbsp; &lt;A href="http://www.microsoft.com/downloads/details.aspx?familyid=19DB0B42-A5B2-456F-9C5C-F295CDD58D7A&amp;amp;displaylang=en"&gt;http://www.microsoft.com/downloads/details.aspx?familyid=19DB0B42-A5B2-456F-9C5C-F295CDD58D7A&amp;amp;displaylang=en&lt;/A&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;If you are reticent to installing Books Online on your desktop, you can access the entire contents of BOL online: &lt;A href="http://msdn.microsoft.com/en-us/library/bb543165(SQL.100).aspx"&gt;http://msdn.microsoft.com/en-us/library/bb543165(SQL.100).aspx&lt;/A&gt; &lt;/P&gt;
&lt;P&gt;Watch for some very interesting material coming soon...&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;img src="http://sqlblog.com/aggbug.aspx?PostID=7271" width="1" height="1"&gt;</description><category domain="http://sqlblog.com/blogs/lara_rubbelke/archive/tags/SQL+Server+2008/default.aspx">SQL Server 2008</category><category domain="http://sqlblog.com/blogs/lara_rubbelke/archive/tags/Policy+Based+Management/default.aspx">Policy Based Management</category></item><item><title>Where did Activity Monitor go?</title><link>http://sqlblog.com/blogs/lara_rubbelke/archive/2008/06/09/where-did-activity-monitor-go.aspx</link><pubDate>Mon, 09 Jun 2008 20:39:00 GMT</pubDate><guid isPermaLink="false">21093a07-8b3d-42db-8cbf-3350fcbf5496:7209</guid><dc:creator>Lara Rubbelke</dc:creator><slash:comments>42</slash:comments><comments>http://sqlblog.com/blogs/lara_rubbelke/comments/7209.aspx</comments><wfw:commentRss>http://sqlblog.com/blogs/lara_rubbelke/commentrss.aspx?PostID=7209</wfw:commentRss><wfw:comment>http://sqlblog.com/blogs/lara_rubbelke/rsscomments.aspx?PostID=7209</wfw:comment><description>&lt;P&gt;When you begin working with RC0, you may find yourself searching for Activity Monitor.&amp;nbsp; I personally spent about 10 minutes looking for Activity Monitor when I started working with RC0.&amp;nbsp; Luckily, I happen to work at Microsoft and can directly email people when I&amp;nbsp;have these types of questions (well, lucky for me but perhaps not lucky for them:-))&lt;/P&gt;
&lt;P&gt;In the past, you could only find Activity Monitor by opening the Management folder in SQL Server Management Studio.&amp;nbsp; This is no longer the place to find Activity Monitor.&amp;nbsp; Here are the two new ways to launch Activity Monitor:&lt;/P&gt;
&lt;P&gt;1. Open Management Studio.&amp;nbsp; Select the icon on the toolbar that is the furthest right (It looks like a chart with green and blue lines). &lt;/P&gt;
&lt;P&gt;2. In Object Explorer, right click on the server and select Activity Monitor.&amp;nbsp; Please note that the Activity Monitor is not available in the context menu unless you&amp;nbsp;select the server.&amp;nbsp; You cannot launch the&amp;nbsp;Activity Monitor&amp;nbsp;when you select a database, another folder, etc.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;I am certain many of you are questioning why there was a&amp;nbsp;change in location for the Activity Monitor.&amp;nbsp;I was told that the intention was to make it "more discoverable".&amp;nbsp; This provided me a great deal of humor as I spent 10 minutes looking for it and ended up asking the product team.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;Happy monitoring!&lt;/P&gt;&lt;img src="http://sqlblog.com/aggbug.aspx?PostID=7209" width="1" height="1"&gt;</description><category domain="http://sqlblog.com/blogs/lara_rubbelke/archive/tags/SQL+Server+2008/default.aspx">SQL Server 2008</category></item></channel></rss>