MailEnable - Developer ASP Example Code

MailEnable WebMail and WebAdmin were originally written in Classic ASP and the entire source code for these is available for download.
The source code of these provide useful examples/templates for using the MailEnable API since they illustrate the calling syntax of MailEnable objects.


Security and Impersonation Considerations

The complexities of IIS impersonation and security make calling third party APIs complicated because the IIS Proxy account needs access to all the resources referenced by the API. In order to overcome permission issues, asp pages instantiated proxy/wrapper objects under COM+ so the instances themselves would run as the identity of the COM+ package. These examples call this COM+ proxy interface rather than directly calling MEAOxx objects.
This was done for security, since it means that web pages themselves can run with a lower priviledged account (IME_USER) and access the COM+ package to do the work (running as IME_ADMIN)

An alternative is to set the identity of the web server to run as IME_ADMIN equivilent, and calling the API using this identity (but this requires careful review of permissions to COM objects, Files and Registry Keys).

MailEnable COM+ Proxy Objects

MailEnable did not orginally publish using the COM package interfaces, knowing that it would be replaced by .NET Store and Administration Assemblies.

It is however possible to specify an install switch to MailEnable that has it install the COM+ packages (you can specify /COM as a command line switch to the MailEnable installer and it will create the COM+ packages).
If you install with the legacy switch, then the COM+ packages will be created and you will be able to call the objects via the impersonation proxy.

Source Code

Content Description
Classic ASP WebMail Enterprise Base Source Code Complete ASP source code for Enterprise webmail client.
Classic ASP WebMail Default Base Source Code Complete ASP source code for Default webmail client.
Classic ASP WebAdmin Enterprise Base Source Code Complete ASP source code for Enterprise webadmin client.
Classic ASP WebAdmin Default Base Source Code Complete ASP source code for Default webadmin client.


Note: All information and examples here are preliminary and subject to change.