Got BizTalk 2010, SharePoint 2010 and HTTP 401.2 Unauthorized errors?
On a recent project we were having problems configuring the Windows SharePoint Services Adapter onto a SharePoint 2010 farm. This is basically a BizTalk 2010 web service that gets deployed to your SharePoint farm. It allows BizTalk to deposit documents into SharePoint document libraries.
The adapter was deployed and configured without error, but when calling the web service from BizTalk it generated HTTP 401.2 Unauthorized errors. In the Windows System Event log on the BizTalk server the following details were logged:
The adapter “Windows SharePoint Services” raised an error message. Details “The Windows SharePoint Services adapter runtime does not have permissions to invoke the adapter Web service. In order to fix this issue, you have to add the DOMAIN\biztalk_service_account Windows account to the “SharePoint Enabled Hosts” Windows group on the Windows SharePoint Services machine. This operation will allow BizTalk host instances running under DOMAIN\biztalk_service_account Windows account to invoke the adapter Web service in order to send and receive messages to or from SharePoint sites. The group membership will not take effect until you restart the BizTalk host instance.
When you configure the adapter it creates a local security group on the server which is named “SharePoint Enabled Hosts”. The above error indicates that the service account that the BizTalk process is running under needs to be added to this local group. We tried this and tried this and tried this. After several unconfiguration, reconfiguration cycles we were stuck with the same error.
This appears to be a pretty common problem. A lot of people griping about the local security group approach (justifiably!).
Richard recommends modifying the SharePoint web application – we tried that approach and it didn’t work for us.
What solved this in our circumstance was to manually edit the web.config file for the virtual directory that is hosting the BizTalk web service.
The original authorization block looked like this:
<authorization>
<allow roles=”SHAREPOINTWFE\SharePoint Enabled Hosts” verbs=”GET,HEAD,POST”/>
<deny users=”*”/>
</authorization>
Instead of stuffing around with the local group, I changed the allow line to specifically use the BizTalk service account (a domain account), and also removed the deny tag, so it looked like:
<authorization>
<allow verbs=”GET,HEAD,POST” users=”DOMAIN\biztalk_service_account” />
</authorization>
This fixed it for us, no more authorisation problems. It means that the BizTalk service domain account is still the only account that can invoke the web service.
If you have multiple web front end servers in your SharePoint farm, you need to configure the adapter and apply this ‘fix’ on each. Your mileage may vary on this, I’m just sharing what worked in our situation.
Microsoft Dynamics CRM 2011 comes with out of the box integration with SharePoint 2010 which allows users to store documents associated with CRM records.
This is implemented with the List Component for SharePoint. This is a sandboxed solution that is deployed to the target SharePoint site. When activated it allows CRM 2011 to create documents in SharePoint and also to present those documents to the user in a CRM native UI.
In my experience this component can be tricky to activate on the SharePoint 2010 side. I have seen errors that range from ’401 Not authorized’ to ‘the Sandboxed Code Host Service was too busy to handle the request’
This has usually been caused by the fact that the SharePoint machine does not have direct access to the internet. Durng the activation process SharePoint (well the .NET Framework) is trying to contact the host crl.microsoft.com. Because this cannot be contacted within the allowed timeout period activation fails.
Tbe solution is to ensure that the SharePoint server can contact this site. If that is not possible (security reasons, working on a standalone machine etc) then you can add the
following entry to the HOSTS file on the machine:
127.0.0.1 crl.microsoft.com
This ensures that the address resolves and then the process works. You can then activate the solution.
For more details on this workaround see my earlier blog post.
Problems connecting to your newly installed SQL Server instance? Did you happen to create a named instance (e.g. <servername>\sql01)?
Microsoft SQL Server named instances use dynamic TCP ports and rely on the SQL Browser service to provide the port number to the client in order to establish a connection. In a lot of cases I have seen people trying to connect to their new SQL Server named instance (e.g.
There are two options – rely on the SQL Browser service or change the named instance to operate on a fixed port.
Using the SQL Browser service
You need to be able to connect to the SQL Browser service (which is often not running) which operates on UDP port 1434. Even then, if your local Windows Firewall on the server hosting SQL Server does not allow inbound traffic on whatever TCP port is being used, then you won’t be able to connect remotely.
Make sure the SQL Browser service is running also, which you can configure in the SQL Server Configuration Manager.
Configuring SQL Server to listen on a fixed port
On the SQL Server, open up the SQL Server Configuration Manager, and navigate to SQL Server Network Configuration > Protocols for <named instance> and right-click on TCP/IP and select Properties
In that dialog, click on the IP addresses tab. You can scroll to the bottom and clear the value for TCP Dynamic Ports and specify a fixed port of your choice.
![]()
It’s been nearly 4 months since I bought my Acer Iconia A500 tablet and blogged about it here. Not much has changed, I still think it’s great.
The only bugbears for me have been the WiFi dropping out in my house. The tablet seems to have the weakest radio of all the other WiFi devices in my house.
The only issue to complain about would be the insane rate of fingerprint collection on the screen. I’ve recently bought a Samsung Galaxy S II and my wife has an iPhone, so I have a new appreciation of the benefits of Gorilla glass which seems to resist fingerprints really well.
Apart from that it’s been great. I take it to meetings and take notes, I spend a lot of time browsing, Tweeting and Facebooking via this device. I love the form factor and the ‘always on’ concept – so I hate to admit it, but I’d be happy with an iPad in that regard too.
Aug 11
15
Are you seeing ridiculous delays in your SharePoint web app spinning up with little activity on the server? Is it take over 2 minutes to display the first page after an app pool recycle?
Does your server have access to the internet? No? This will cause delays when a signed piece of .NET code runs
Every time some managed .NET code tries to run, the .NET Framework is trying to contact crl.microsoft.com. Now if your server is offline (think VM on a laptop on a plane), or your server doesn’t have access to the internet at all, or possibly through a proxy server, then these attempts to contact crl.microsoft.com will add a delay to start up time of things like SharePoint web apps as the connection attempt times out.
This affects all .NET apps since version 2.0 of the Framework. I’ve seen weird things trying to activate a CRM 2011 SharePoint List Component that just wouldn’t work until we applied one of these workarounds.
Workaround:
Hack your hosts file to add an entry for 127.0.0.1 crl.microsoft.com
Use this to quickly validate if this is part of your performance problem.
If doing this decreases your startup time (i.e. saves you about 90 seconds) and you want to make a more ‘proper’ change, then you need to add an entry to the machine.config file on your server.
<runtime> <generatePublisherEvidence enabled="false"/> </runtime>
See http://msdn.microsoft.com/en-us/library/bb629393.aspx for more info about this setting.
For a more detailed discussion of this issue, see the TechNet wiki entry
Apr 11
25
Just testing the WordPress app from my Acer Iconia A500 tablet running Android Honeycomb 3.0.
I will try and post a review of the tablet with more details later on today hopefully – been brilliant so far, but a few hiccups along the way.
Jan 11
30
If you’ve ever driven around NSW you’ve no doubt seen the big scary police signs that tell you what the local highway patrol is currently targetting. Usually the options are speeding, drink driving and the one that makes me chuckle ‘driver fatigue’. OK it’s not a laughing matter, but how exactly do they target driver fatigue?
Once again we’re tackling the big issues here – let me know your experiences below. Have you ever been pulled over and forced to have a powernap before you could continue your journey?
Dec 10
13
So I’ve been itching to write a post about the absurd media campaign Gerry Harvey has been waging against online retailers – wanting the government to scrap the $1,000 limit before GST is imposed for offshore purchases and his crazy threat to set up an online store operating out of China. Today however the excellent blog Things Bogans Like has beaten me to it, and probably in much better style – I doubt I would have used giant vampire squid in my rant! Bravo lads and lassies.
Dec 10
11
So I’ve been running the Floyo 1.1.9 ROM on my HTC Hero for a week now and haven’t had any major problems, it’s been great. It’s an Android 2.2 (Froyo) ROM based on the CyanogenMod 6 ROM.
If you want to download it, visit this thread on XDA Developers.
For another guide on getting Froyo running on a HTC Hero with optimal performance, see this thread on XDA developers also. It’s a lot more granular (i.e. lots more control and time consuming).
Personally I just opted for the Floyo ROM because it was quick and simple. I now have about 100MB of RAM free on my phone after re-installing most my apps – important ones like Angry Birds of course!
I’ve found the performance, especially web browsing to be improved over my previos ROM – Sense Hero based on Android 2.1.
The only downside to the Floyo ROM is that it doesn’t have HTC Sense. This is HTC’s custom UI and other bits on it. This means I can’t run the HTC Sync software on my work computer and synchronise my contacts and calendar from there. I still find it pretty amazing that Android doesn’t support this out of the box – that the preferred method is to sync these other data sources to the cloud. Well that’s just not going to work in my situation.
Anyway, if you’re running a HTC Hero and you’re keen to get Android 2.2 on it – check out Floyo 1.1.9 it is tops. As far as I am aware HTC will not be bringing out an official Froyo ROM for this phone so a custom ROM will be the only way to get it. If you’re really hanging out for a ROM with HTC Sense then maybe hang off a bit – I’m sure there will be one ported from a similar phone like the HTC Legend in the fullness of time.
So what’s your experience – anyone else using the Floyo ROM leave your comments below.