COM+ Security Role based security Declarative Programmatic Authentication Access Control Dim myIdentity As WindowsIdentity = WindowsIdentity.GetCurrent() Dim myPrincipal as New WindowsPrincipal(myIdentity) If myPrincipal.IsInRole("Development") then 'Code to limit access End If myIdentity.IsAuthenitcated() checks if a user is authenticated myPrincipal.IsInRole() is used to check if a user is in a role.
JIT Activation Ensures client application has references to objects as long as needed. Object States: Exists and activated Exists and not activated Non-existent
Service Related Attributes
COM+ Registration Types of Registration: 1. Manual 2. Dynamic 3. Programmatic RegScvs.exe for COM clients Vista: Run %windir%\system32\comexp.msc
COM+ Resources Applying Attributes to Configure COM+ Services Integrating WCF Services with COM+ COM+ Services Roadmap for.Net Enterprise Services
What is.Net Remoting? Remoting is a technology that allows.NET applications to communicate. Remoting Same machine, across a network, or the Internet. Similar technologies: COM+, Direct TCP/IP socket connections, UDP diagrams, MSMQ messages, Web Services via http, SOAP
Remoting Terminology Marshalling – the communication between a host and a client. Marshalling Sink - an object that allows custom processing of messages during remote invocation. Sink Channel – an object that transports messages across remoting boundaries Channelboundaries
Remoting Terminology Remotable object – the object that can be marshaled across application domains. Remotable object Formatter – an object that is responsible for encoding/decoding and serializing data into messages. Formatter AppDomain – an Application Domain, a.NET concept for a unit of isolation for an application. AppDomainApplication Domain
System.Runtime.Remoting RemotingConfiguration class: configures the remoting infrastructure. RemotingConfiguration RemotingServices class: provides methods for using and publishing remotable objects. RemotingServices ObjRef class: generates a proxy, activates, and communicates with a remote object. ObjRef
Distributed Application Development Technology In.NET, Enterprise Services are services in unmanaged code known as COM+ services..NET Remoting is meant to replace DCOM.
.NET Remoting and Web Services.NET Remote objects can access remote resources without the overhead of SOAP based Web Services..NET Remoting is easier to use than Javas RMI (Remote Method Invocation), but more difficult than creating a Web Service. The remoting system is flexible and easily customizable. Remoting system assumes no particular application model. Web services provide a standards-based, open communication medium.