Thursday, April 26, 2012

Migrating from Windows Claims to SAML Claims

If you have read Steve Peschka's blog post on migrating Windows Claims to SAML Claims, you probably know that the recommended solution is to write some custom .Net code to perform the User Migration:

However, I have found an alternative workaround which (though risky) is relatively painless.  It is recommended to perform a Web Application Backup or Farm-level backup prior to performing the steps below:

  1. Make note of all of your content databases and IIS Settings.  Also make note of your Web Application settings.  
  2. Delete you existing Web Application which is currently configured for Windows Claims-based Authentication.  When deleting the Web Application, DO NOT delete the associated IIS Web Site and Content Databases.
  3. Now re-create the Web Application as standard Windows based authentication (NTLM) and enter the previous Web Application settings, connect to the existing IIS Web Site and enter the previous Content Database name.
  4. Run the following PowerShell script to convert from NTLM-->SAML Claims.
  5. Open User Policy in Central Administration for your Web Application and add any associated SAML User IDs as Site Collection Administrators.
  6. Verify that your other User IDs in the various Site Collections have been migrated over correctly to the SAML Claims based user name format.
  7. If all went well, you have successfully migrated from Windows Claims to SAML Claims without writing a single line of custom .Net code!!

Wednesday, April 25, 2012

Changing Password Policy on a Windows 2008 R2 Domain Controller

I recently set up a domain controller in a virtual machine and installed all of my applications into it (including SharePoint 2010).

Of course, when using a Domain Controller several of the SharePoint Services utilize a domain account to run the services.  As you can probably guess, as soon as the password changes for the domain account, I will either have to CHANGE all of the passwords for the various SharePoint Windows Services, or more simply, CHANGE the Password Policy on the Domain Controller.

  1. At the Run Command, type gpmc.msc
  2. Once the Group Policy Management Console opens, expand the Domains folder to reveal your domain
  3. Expand your domain until you see the Group Policy Objects folder
  4. Expand the Group Policy Objects folder to reveal the Default Domain Policy
  5. In the right hand pane, click on the Settings tab
  6. Expand Windows Settings-->Security Settings-->Account Policies/Password Policy
  7. Once the Password Policy settings are revealed, right click in the area and select Edit
  8. Once the Group Policy Management Editor opens, beneath Computer Configuration, expand Policies-->Windows Settings-->Security Settings-->Account Policies
  9. Click to highlight Password Policy
  10. You should now see the various password policies in the right hand pane
  11. You can now change the various settings to whatever values you choose.  If you wish to remove the most common password annoyances, you can set the following to 0
    1. Enforce password history
    2. Maximum password age
    3. Minimum password age
  12. That is it!!  You should no longer have to change the password on your user accounts even when the "Password never expires" setting is not set on your individual users in Active Directory!!

Monday, April 23, 2012

Downloadable Custom Claims Provider Sample Code

If you have gone through the walkthrough for writing a Custom Claims Provider on MSDN ( ), you are probably aware that it involves a significant amount of code.  If you want to just get started developing a Custom Claims Provider/Claims Picker, it would be worthwhile to simply download the sample code directly.  Interestingly enough, if you search Google or Bing for "MSDN Code Gallery + Claims Provider", you will not be able to find relevant links to the latest MSDN Code Gallery code.

So, here are the links for your convenience:

For Trusted Login Providers
For SQL Claims Providers:

Sunday, April 22, 2012

Installing Dynamics CRM 2011 with SQL Server 2012

I came across this article which describes how to install Dynamics CRM 2011 with SQL Server 2012:

It basically involves building new installation media to include Update Rollup 6 as part of the base Dynamics CRM 2011 installation.

However, the one change that I made to the instructions was instead using the /extract switch with each of the executables rather than simply beginning the installation and cancelling it midway.  The switch should look like [executable name] /extract:[extraction path]

You can see this syntax by running the executable at the Run command with the /? switch as well.

Monday, April 9, 2012

Exciting SharePoint Features coming to Visual Studio 11

If you are a SharePoint Developer or Architect, you probably are well aware of the numerous limitations in developing applications for SharePoint:

  1. Functionality such as client-based InfoPath Forms cannot be easily Unit Tested or Tested
  2. Web Tests for SharePoint are not very reliable
  3. Unit Testing for SharePoint requires separately downloading and installing Pex and Moles
  4. Web Part development does not lend itself well to creating and developing Unit Tests
  5. Load Testing for SharePoint cannot be done through the Load testing tools available in Visual Studio 2010.  Even community developed tools still expect Visual Studio 2008 SP1 to perform load testing on the environment.

Fortunately, the Visual Studio 11 roadmap has plans to address (at least some of) these issues. 

"In Visual Studio 11 we are expanding our support for teams working with SharePoint with features like performance profiling, unit testing, and IntelliTrace support. In the first Ultimate Feature Pack after Visual Studio 11 we’ll make it easy to test your site for high volume by introducing SharePoint load testing. We will also make it easier to do SharePoint unit testing by providing Behaviors support for SharePoint API’s. This is a great win for teams developing SharePoint solutions."

Based on the description provided in the roadmap, Pex and Moles will soon be integrated directly into the Unit Testing framework for Visual Studio 11 and SharePoint Load Testing will finally be supported in the latest version of the IDE!!

I am certainly looking forward to the release of this feature pack to make my SharePoint development tasks easier.

UI Prototyping with Visual Studio 11 and PowerPoint

If you have ever had to do User Interface prototyping, prior to a few years ago, you were probably limited to using Microsoft Visio.  Unfortunately, Microsoft Visio does not ship with a very rich set of User Interface shapes/templates, so most User Interface prototyping done with Visio was primitive at best.

More recently, Microsoft released Sketchflow which shipped with the Expression Studio Ultimate suite.  This tool is much more sophisticated and has a far richer set of user controls for designing User Interfaces.  The prototypes can also be designed using Silverlight or WPF, so that the final designs can then be used directly in actual Silverlight or WPF projects.  Sketchflow even allows customers to comment on User Interface changes and allows those changes to be incorporated back into the original prototype.  Of course, the limiting factors with using this tool are that it ONLY ships with the Ultimate version of Expression Studio and it also requires a learning curve for adopting this new tool. 

Now enter Visual Studio 11 with PowerPoint Storyboarding.  PowerPoint is familiar to nearly every user who regularly uses Microsoft Office.  Unlike working with Sketchflow, which requires a separate reader application, every user's workstation will have a copy of Microsoft Office on their system thus making sharing these UI prototypes a no-brainer.  In addition, the user interface closely resembles the drag and drop interface found in Microsoft Visio, so the learning curve is negligible.

As you can see from the screenshot above, PowerPoint Storyboarding has simply added a new tab called Storyboarding to my installation of PowerPoint 2010.  In addition, the list of shapes for composing a User Interface are quite vast.  The controls vary from including a number of backgrounds ranging from Visual Studio to SharePoint to even Metro applications.  The controls for prototyping actual interfaces includes a large number of common UI Controls which can be used in Web or client-server applications as well as Windows-specific controls.  There are also controls for Windows Phone and Metro applications.

Overall, this new feature is a welcome addition to the Visual Studio suite.  For many years, developers have been frustrated with the poor tooling for prototyping User Interfaces.  The introduction of Sketchflow and its limited licensing model continued to make this option unavailable to many development teams and organizations.  However, the introduction of PowerPoint Storyboarding should make the adoption of fast and easy UI prototyping widespread across .Net development teams.

You can read more about PowerPoint Storyboarding here:

In addition, if you search Visual Studio Gallery ( for "storyboard", you can find numerous Visual Studio extensions released by Microsoft and other vendors to support Visual Studio 11/2012 Storyboarding.


Sunday, April 8, 2012

Entity Framework for Oracle

For those of you who have had to pay for alternative vendors for Oracle Entity Framework, can now rest easy.  Oracle has finally released their own set of libraries for Entity Framework support!  The Oracle Entity Framework libraries are compatible up to Entity Framework v. 4.2, but they do not yet support Code First.

The Entity Framework support is built into the Oracle Developer Tools (ODAC) and can be downloaded directly from the Oracle .Net Developer Center here:

Friday, April 6, 2012

Visual Studio 11--Changing familiar Visual Studio toolbar icons

I was working in Visual Studio 11 today and I was looking for the familiar toolbar icons to comment out a block of code.  I looked in my standard toolbar and could not find them!!

Can you tell what these toolbar icons are supposed to do??  I definitely had no idea what they were.  So, I hovered over these icons to find out why they were there.

If I had never hovered over this icon to get the tooltip, I never EVER would have figured out what these icons are supposed to do.

I am so used to seeing the standard commenting/uncommenting icons in nearly every single IDE that I have used (at least all of the Microsoft IDEs) that I have never had to think twice about clicking on it in the toolbar.

I am not quite sure why Microsoft has decided to change this very commonly used toolbar icon to an icon which seems not to convey anything about its intent or function!

Is this icon change perhaps another "improvement" to help us to adapt to using the IDE on Windows 8??  Who really knows....  I guess we will just wait and see how Microsoft incorporates current user feedback into the next beta release of Visual Studio 11!

UPDATE:  They have made some slight changes to the Comment/Uncomment icons in the RTM release.  The new icons are shown below:

Interesting use of color in Visual Studio 11

For those of you who have not yet installed Visual Studio 11, Microsoft has decided to remove many of the colors formerly in prior versions of the IDE such as Visual Studio 2010.  Instead, most of the color scheme is either a shade of gray or black.

However, Microsoft still continues to use color in selective places--particularly in the menus.  When you see these items in the menu compared to all of the other menu items, your eyes are immediately drawn to those icons when compared to every other menu item.

It is interesting to note that they continue to use color for what Microsoft deems to be important for menu item recognition, but otherwise removes color entirely from Solution Explorer:

They definitely feel that color has its uses, but just not for viewing files in Solution Explorer???

Monday, April 2, 2012

Installing Visual Studio 2010 with SP1

While Microsoft does not offer a "slipstreamed" installation of Visual Studio 2010 with Service Pack 1, they do offer an article on how to install Visual Studio 2010 in succession with SP1.

It is a rather lengthy process to set up, but once it is implemented, it can save a tremendous amount of time especially if a large number of developers on the team need to install Visual Studio 2010 with SP1 on their local workstations.

You can read more about the details of how to accomplish this here: