DCSIMG
March 2011 - Posts - Ido Flatow's Blog Veni Vidi Scripsi

Ido Flatow's Blog

Veni Vidi Scripsi

News

Have you heard me speak?
Powered
<style type='text/css' media='screen' id='sm_css'> #smix {overflow: visible;height: auto;border-radius: 10px;max-width: 250px;background-color: #323232;text-align: left;font-size: 12px;line-height: 16px;font-family:'Lucida Sans Unicode','Lucida Grande',Verdana,Arial,Helvetica,sans-serif;-webkit-border-radius: 10px;-moz-border-radius: 10px;border-radius: 10px;} #smix a {color: #0056CC;text-decoration: none;} #smix .sm_head {color: #fff; line-height: 1em;font-size: 1.4em;padding: 10px;color: #fff;} #smix .sm_lanyard_wrapper {background-color: #fff;;clear: both;width: 97%;margin: 0 auto;margin-bottom: 0px;} #smix .sm_lanyard_content {padding: 7px;}#smix button.sm_rec, #smix a.sm_rec, #smix input[type=submit].sm_rec { padding: 6px 10px; -webkit-border-radius: 2px 2px;-moz-border-radius: 2px; border-radius: 2px; border: solid 1px rgb(153, 153, 153); background: -webkit-gradient(linear, 0% 0%, 0% 100%, from(rgb(255, 255, 255)), to(rgb(221, 221, 221))); color: #333; text-decoration: none; cursor: pointer; display: inline-block; text-align: center; text-shadow: 0px 1px 1px rgba(255,255,255,1); line-height: 1; }#smix .sm_rec:hover { background: -webkit-gradient(linear, 0% 0%, 0% 100%, from(rgb(248, 248, 248)), to(rgb(221, 221, 221))); }#smix .sm_rec:active { background: -webkit-gradient(linear, 0% 0%, 0% 100%, from(rgb(204, 204, 204)), to(rgb(221, 221, 221))); }#smix .sm_rec.medium { padding: 3px 7px; font-size: 13px; }#smix .sm_rec span.icon.thumbs_up {background-position: 0px 36px;vertical-align: text-top;display: inline-block;margin-right: 4px;height: 18px;width: 16px;background-image: url(http://speakermix.com/images/new/thumbsold.png);}#smix .sm_rec:hover span.icon.thumbs_up {background-position: 0px 18px;} #smix .sm_events {padding:2px 0px 4px 0px;} #smix .sm_section {font-size: 10px; border-bottom: 1px solid silver; margin-bottom: 6px;} #smix .sm_subline {font-size:120%;margin-top:4px;font-weight:bold} #smix .powered {text-align: right} #smix .powered img {margin: 7px} </style>
Sela Technology Center

Advertisement

March 2011 - Posts

Time to connect to your Azure Storage account

Sometimes when you try to connect to your Azure storage account you might get the following error message:

“Server failed to authenticate the request. Make sure the value of Authorization header is formed correctly including the signature.”

Searching the Internet for the cause of the problem will probably lead you to check your Internet connection, the storage name and key, your Azure account ID etc…

But there’s one thing that you should check first – your machine’s date and time !!

Apparently, when you connect to your Azure Storage account, the request is sent with the current time of your machine and that time is used to verify that the request is not a hijacked request sent again by a hacker. This can be seen by using Fiddler and looking at the response sent by the server:

<?xml version="1.0" encoding="utf-8"?>
<Error><Code>AuthenticationFailed</Code>
<Message>Server failed to authenticate the request. Make sure the value of Authorization header is formed correctly including the signature.
RequestId:xxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Time:2011-03-31T08:37:31.9577840Z</Message>
<AuthenticationErrorDetail>Request date header too old: 'Thu, 31 Mar 2011 07:37:26 GMT'</AuthenticationErrorDetail></Error>

Changing the time to the current time will easily fix this problem.

Note: When using Windows HPC Server 2008 R2 SP1 with Azure nodes, you might also get this error when trying to start your Azure nodes - this is because the HPC cluster manager stores the application packages in an Azure Storage blob.

To MIX or not to MIX (2011)

This will be the first year I’m attending MIX in Las Vegas this coming April (12-14).

Since most of my work is web-related, It’s only logical that eventually I would attend this conference to see what the future of the web will look like in the coming year.

We’re going to have quite a large presence of Sela employees at the conference, very much like we had in the PDC conference in 2009.

Since I tend to get bored when listening to lectures all day long, I would be happy to talk some of the day about my fields of expertise that include WCF, Entity Framework, Silverlight and ASP.NET. If you’re an MCT that is going to teach the WCF 4 MOC course, I’d be happy to give you some pointers regarding the course material and labs.

So if I can be of assistance to you in any way, contact me, or place a comment in this post.

Or… Just grab me during the conference and start asking questions. You can recognize me quite easily – I’ll be one of Sela’s experts that is wearing an orange shirt, like so:

197947_201361273224912_184255348268838_680243_4685323_n

Or in case someone asks me WCF questions, maybe you’ll even catch me in this pose (without the presentation in the background, unless I see an available projector):

198123_200949546599418_184255348268838_678095_1399015_n

you can even just come to say hello so I’ll know people are actually reading my blog Smile

See you at MIX.

SDP lectures slides

 

Last week we had our annual SDP conference in Sela’s offices and in Crowne Plaza in Tel-Aviv. I had the pleasure of talking about several of the technologies I’m dealing on a daily basis (well, almost every day) which were:

  • Entity Framework. The first day of the convention was all about Entity Framework. Erez, Gil, and myself gave several lectures dedicated to Entity Framework. The day ended with an “EF expert panel” which I enjoyed very much. I think will make a habit or doing this panel every year.
    You can download my ORM presentation from my SkyDrive.
  • WCF. In the second day of the conference Manu and I had a day dedicated to WCF and WF. I gave my “What’s new in WCF 4” presentation during the first half of the day, and Manu ended the day with lectures about WF 4.
    You can download my presentation and code samples from … my SkyDrive of course.
  • ASP.NET MVC. The third day of the conference took place in Crowne Plaza, where I gave a one-hour presentation about ASP.NET MVC and other related technologies such as jQuery, Razor, and IIS Express. I really enjoyed this presentation, and I hope the people attending the lecture enjoyed it as much as I did.
    The presentation and code samples can be download from … guess….

I also had a short talk in the MVP panel regarding a project I’m working on right now that has to do with Microsoft HPC (high-performance computing) and Azure.

All of the lectures were recorded, but are not yet available to watch. I’ll drop a post when they are online.

A WCF coincidence

Today, after giving my lecture on what’s new in WCF 4 as part of Sela’s SDP (Sela Developer Practice) conference, I got an email from one of my clients regarding a problem they encountered when trying to deploy their WCF service to an IIS 6 server. They got exceptions when calling the service, and it seemed it wasn’t able to get hosted. After some investigation they came up with the following error message thrown by WCF:

14/03/2011 14:38: [Exception Type:=System.ServiceModel.ServiceActivationException;Application_Error event(~/Services/xxxxx.svc) ;IP: xxx.xxx.xxx.xxx] - This collection already contains an address with scheme http.  There can be at most one address per scheme in this collection.

Parameter name: item: Error The service '/Services/xxxxx.svc' cannot be activated due to an exception during compilation.  The exception message is: This collection already contains an address with scheme http.  There can be at most one address per scheme in this collection.

Usually my memory doesn’t work so well (the electro-magnetic fields from all the computers and monitors surrounding me all my life are starting to affect my brain), so at this point I should have needed to go and check this message out, but luckily for me (and for my client), this exact message was part of a new WCF 4 feature I talked about in my lecture just a few hours ago – multiple site bindings in IIS.

image

In the case of my client, they indeed had several names for their machine, and once they used the baseAddressPrefixFilters configuration, everything start to work.

You can look at the rest of the presentation and the sample code at the following link: http://bit.ly/wcf4-sdp11

As soon as it will be available on video (in Hebrew), I’ll let you know.

IE9 RC allows fiddler to get localhost calls

For the last couple of days I noticed something odd about my installation of Fiddler – it suddenly started to show me localhost calls when I debugged web applications.

At first I assumed that a new version of Fiddler which I’ve installed recently fixed the oldest problem of fiddler, but apparently it’s not Fiddler who should be given the credit, but rather IE9 RC.

With the new release of IE9 RC, a new ability has been added – proxy loopback traffic.

You can read more about this feature here.

Edit:

There are several ways to get fiddler to listen to localhost requests, such as changing “localhost” to “localhost.” or to “ipv4.fiddler” which is a special DNS address, but these techniques are workarounds and require some work.

For example if you are debugging a Silverlight application that calls a WCF service, you’ll need to change not the address you are browsing to get the SL application and the WCF address inside the service configuration file, otherwise you will get a cross-domain call to the WCF service which will require you to export a clientAccessPolicy.xml file.

IE9 RC just made things a whole lot simpler now. How wonderful!!