More on Internet Service Bus (BizTalk Services)

There are more confusion around people regarding BizTalk Services (Identity, Connectivity, ServiceBus, and Workflow). Why do we need all this additional service? Is there any business value? Will it make any difference to my client. etc etc

Of course it will, remember the services are just in CTP, the more it get matures companies will come up with more ideas. Clemen Vasters from connected system division got an excellent post about “BizTalk Services” and the practical requirement for such services.

Extract from his post:

If you are an ISV catering shrink-wrapped business solutions to SMEs whose network infrastructure may be as simple as a DSL line (with dynamic IP) that goes into a (wireless) hub and is as locked down as it possibly can be by the local networking company that services them, we can do as much as we want as an industry in trying to make inter-company B2B work and expand it to SMEs; your customers just aren’t playing in that game if they can’t get over these basic connectivity hurdles.”

Related Links from this blog:
BizTalk Services. How does Identity Service and Connectivity service fit together.
BizTalk in the direction of SaaS (Software as a Service)

Nandri!
Saravana

BizTalk Services are Live!

 


Yesterday, our division went live with the Community Technology Preview (CTP) release of BizTalk Services.  These services extend technologies from our division to work as hosted services accessible via the Internet.  In essence, we are creating the first Internet Services Bus to enable developers to create Internet scale composite applications more rapidly.    These services are offered for experimentation to the development community to provide feedback and help us plan and determine our future releases. 


There are many posts/articles about these services already.  Some great ones include:


 


%u00b7         http://blogs.msdn.com/stevemar/


%u00b7         http://blogs.msdn.com/dotnetinterop/archive/2007/04/24/biztalk-services-isb-debuts.aspx


%u00b7         http://blogs.msdn.com/clemensv/archive/2007/04/25/internet-service-bus.aspx


%u00b7         http://connectedsystems.spaces.live.com/


%u00b7         http://www.dennispi.com/


%u00b7         http://www.eweek.com/article2/0,1759,2120846,00.asp


 


Regards,


Marjan Kalantar

New role for me in Microsoft Australia….

I’ve taken on a new role within Microsoft Australia…. It’s called an Application Platform Solution Specialist. So what does that mean? You’re guess is as good as mine…. Just kidding 😉

Essentially, I am now responsible to help customer, partner and ISV (Independent Software Vendors) land to realise the value of the Application Platform stack 😉 ! To Microsoft, the Application Platform Stack translates to a variety of technologies, but mainly, BizTalk, SQL, .NET Platform, Identity Information Server, Commerce Server and more….. It is essentially the software stack that drives 5 main capability areas,

1. Data Management

2. SOA and Business Process

3. Business Intelligence

4. User Experience

5. Development

 

For customers, that means anything other than DESKTOP 🙂

 

My *main* focus area will still be around SOA and Business Process – and ensuring that BizTalk still lives a wonderful world in the land of OZ! This builds on the heritage of my BizTalk Technical Specialist Role at MS, although I never was quite *that technical* as guys like Mick Badran, Bill Chesnut, Dave McGhee and Mark Burch and so on….

That BizTalk technical domain has been taken over by my awesome colleague in Sydney – Rahul Garg – the new (and much cleverer) National BizTalk Technology Specialist.

So stayed tuned.. for a bigger and broader (Application Platform) blog….. !

BizUnitExtensions – Important Upcoming changes

BizUnitExtensions – Important Upcoming changes

Just to inform users of BizUnitExtensions, that Kevin Smith (creator of BizUnit) and I have been having some extensive discussions on the BizUnit codeplex site (here and here) on how these two projects will continue to work together going forward since BizUnit is now active once again and Kevin has lots of plans for it and a new release with lots of good stuff is imminent.


Once the new release of BizUnit comes out the Extensions project will no longer release the core as part of the distribution but will continue to release test step libraries as it is doing now (perhaps with some structural or namespace changes), so we will have our own release schedule. I’m hoping that the changes we made to the core to allow some of the extensions to work will be retained by Kevin and that other changes we are proposing such as making all the properties publicly accessible to support tooling plans will also be acceptable.


If you would like to influence these decisions please do weigh in on the discussions at the BizUnit site. I have had some good feedback about the extensions roadmap but do continue to send us messages on what would be the most useful features.


Update: I’ve now put up all the items on the roadmap as work items so why not hop over to codeplex and click on the VOTE links against each work item and let me know what your favorite proposed features are?

BizUnitExtensions – Important Upcoming changes

BizUnitExtensions – Important Upcoming changes

Just to inform users of BizUnitExtensions, that Kevin Smith (creator of BizUnit) and I have been having some extensive discussions on the BizUnit codeplex site (here and here) on how these two projects will continue to work together going forward since BizUnit is now active once again and Kevin has lots of plans for it and a new release with lots of good stuff is imminent.


Once the new release of BizUnit comes out the Extensions project will no longer release the core as part of the distribution but will continue to release test step libraries as it is doing now (perhaps with some structural or namespace changes), so we will have our own release schedule. I’m hoping that the changes we made to the core to allow some of the extensions to work will be retained by Kevin and that other changes we are proposing such as making all the properties publicly accessible to support tooling plans will also be acceptable.


If you would like to influence these decisions please do weigh in on the discussions at the BizUnit site. I have had some good feedback about the extensions roadmap but do continue to send us messages on what would be the most useful features.

BizTalk Services. How does Identity Service and Connectivity service fit together.

From my understanding of BizTalk Services (Identity, Connectivity, ServiceBus, and Workflow) so far, the word BizTalk doesn’t really mean much(at least at the moment, with currently live Identity and Connectivity (aka Relay) services). May be it will make sense once  ServiceBus is live. There is nothing offensive here.It makes sense more on Windows Communication Foundation (WCF) front rather than BizTalk.

What is Identity Service?

Identity service is a way of authenticating end users and connected systems. Much similar (but not the same) to Microsoft’s effort of introducing Microsoft Passport few years back,  as one stop shop for your authentication needs.  Identity services (previously called Secure Token Services – STS) uses Windows Cardspace technology to authenticate clients (both users and connected systems) using claims based access control. To use any other services like Connectivity, the authentication needs to be performed via Identity Service. So, it’s mandatory to create an Identity Service account (Create New Account). On client side IE 7.0  is required.

What is Connectivity Service?

Connectivity Service is also called as Relay Service, which provides two main functionality:

1. Ability to create a listening endpoint (WCF endpoint) at the relay service, and

2. Ability to Send and Receive messages to and from that endpoint.

Listening endpoint is created by, configuring an application to listen on a public address (ex: net.relay://connect.biztalk.net/services/SARAVANA_W2003/HelloWorld/). If that address is available and the user is authorized, the relay service will start listening on that address on behalf of the application. The following config code snippet shows, how you’ll create a listening endpoint on a relay service from your WCF service application.

<service name=”Saravana.DigitalDeposit.HelloWorld”>
<endpoint name=”RelayEndpoint
contract=”Saravana.DigitalDeposit.HelloWorldContract”
binding=”relayBinding”
bindingConfiguration=”default”
address=”net.relay://connect.biztalk.net/services/SARAVANA_W2003/HelloWorld/” />
</service>

Microsoft has build some specific WCF bindings called Relay Bindings, to make integration seamless with Relay Service.

How Identity Service and Connectivity service fit together:

The following figure shows the high level overview of how both the services (Identity and Connectivity) work together.

Server Authentication and establishing a Listening endpoint:
Step #1: An application behind a firewall (Example: HelloWorld Service) requests a security token for the Relay Service from the Identity Service.

Step #2: Identity Service responds with the appropriate token (assuming that “HelloWorld Service” could successfully authenticate to the service).

Step #3: “HelloWorld Service” initiates a connection to the Relay Service and asks to listen on a particular address (Ex: net.relay://connect.biztalk.net/services/SARAVANA_W2003/HelloWorld/). If the address is available and “HelloWorld Service” is authorized, a listening endpoint is created.

Client Authentication:
Step #4: The Client application requests a security token for the Relay Service from the Identity Service.

Step #5: Identity Service responds with the appropriate token (assuming the Client could successfully authenticate).

Sending and Receiving Messages:
Step #6: The Client formulates the application message and sends it to “HelloWorld Service” address on the Relay Service (Ex: net.relay://connect.biztalk.net/services/SARAVANA_W2003/HelloWorld/). The Client includes the security token it received in Step #5.

Step #7: The Relay Service forwards the application message down the open TCP connection to “HelloWorld Service”.

Step #8: “HelloWorld Service” creates an application response and sends it back to the Relay Service.

Step #9: The Relay Service completes the outstanding HTTP request with an HTTP response containing the application response message.

Hope this gives a basic understanding of Identity and Connectivity services.  The documentation at the moment is very thin, I’ll recommend downloading the SDK, which got some good sample to start with.

Nandri!

Saravana