Company's LOGO
At a Glance
  • Certified Professionals
  • In business since 2000
  • Client Server
  • N-Tier
  • IBM Informix, IBM DB2, Oracle, SQL Server
  • Visual Studio/ASP.NET
  • Sybase Powerbuilder
  • IBM WebSphere
  • Customized Solutions
  • System Integration
Our Mission
  • To give our clients solutions that are not only right for us, but right for them
Our Principles
  • Be smart, be innovative
  • Deliver on time, on budget, every time
  • Always listen to and understand our clients
  • "If everything seems under control, your're just not going fast enough" - Mario Andretti
Contact Us
14 Olsen Drive
Toronto, Ontario
Canada M3A 3J2

Tel: (416) 510-3068
Fax: (416) 510-8391

Email: contact@cnux.ca
e-Brochure
PDF File CNUX e-Brochure
PartnershipsIBM Business PartnerSolutionsCertified for IBM Information Management Software - DB2, Informix Certified for IBM WebSphere SoftwareCertified for IBM SOA TechnologyOracle Certified ProfessionalSybase Certified PowerBuilder Professional

 
 


CNUX Technologies is pleased to announce the first COMPLETE customized Web Service Plug-in for Microsoft® .Net Providers is now available.

 

Only $399CDN≈$399USD per site license.

 

Click here to download the entire product information in PDF format CNUX .Net Providers – Web Service Edition.pdf

 

 

1.       Introduction

5.       Sample Codes

9.       End User License Agreement

2.       What’s in CNUX .Net Providers Web Service Plug-in?

6.       Product Documentation

10.   Trial Software

3.       How CNUX .Net Providers Web Service Plug-in Works

7.       Pricing

11.   Limitations

4.       Features

8.       Support and Software Upgrade

12.   Release Notes

 

1.    Introduction

 

CNUX .Net Providers Web Service Plug-in for SQL Server is an extended .Net web state-management framework based on Microsoft® ASP.Net 2.0 specifications and guidelines.  It is a complete framework consisting of Membership Provider, Role Provider, Site Map Provider, Session State Provider, Profile Provider, Web Event Provider and Web Parts Personalization Provider.

 

CNUX .Net Providers Web Service Plug-in is ideal for SOA and secured n-tier implementation.

2.    What’s in CNUX .Net Providers Web Service Plug-in?

 

CNUX .Net Providers Web Service Plug-in includes many exciting features in addition to the standard Microsoft® ASP.Net 2.0 providers framework.

 

Refer to the following table for information about the latest features and enhancements.

 

Features

 

Single Sign-On capable

  Users only need to sign on once to access multiple web applications with the same credentials

Shared Session State capable

  Multiple web applications can easily pass information to each other as session state variables.  Ideal for applications spawned by a single sign-on

Web Service

 The Web Service Edition is ideal for SOA and secured n-tier implementation.  The Service Consumers library integrates with the front end web application typically located in the DMZ, while the Service Providers are located within your internal network and communicates with the database backend.

Exceptions - Error Trapping

  Multilingual exception resource files in:

 

简体中文 (Chinese-Simplified)

繁體中文 (Chinese-Traditional)

Nederlands (Dutch)

English

Français (French)

日本語 (Japanese)

Samples codes

  Multilingual in:

 

简体中文 (Chinese-Simplified)

繁體中文 (Chinese-Traditional)

Nederlands (Dutch)

English

Français (French)

Deutsch (German)

日本語 (Japanese)

Español (Spanish)

Microsoft® SharePoint® 2007 customization instructions

Product Documentation

Support

  1 year unlimited e-mail support

Software Upgrade

  1 year unlimited product bug fixes and upgrades as they become available

Trial Software

Table/Diagram 1.     Feature Summary


 

3.    How CNUX .Net Providers Web Service Plug-in Works

 

The web service providers are split into two parts: Service Consumers and Service Providers.

 

The Service Consumers library integrates seamlessly with the front end web application typically located in the DMZ, while the Service Providers are located within your internal network and communicates with the database backend.

 

Diagrams 2 & 3 below are two commonly used network configurations when DMZ is used to host web applications:

 

 

 

Table/Diagram 2.     Secured N-tier network model using DMZ and a three legged firewall

 

Table/Diagram 3.     Secured N-tier network model using DMZ and dual firewalls

 

 

The following two sections explain how the CNUX .Net Providers Service Consumers and Service Providers work in conjunction with the Microsoft® ASP.Net services. 

 

3.1     Service Consumers on Web Server

 

In the top layer of the Web Server - Service Consumers portion (see diagram 4) are UI controls such as Login, CreateUserWizard and other .Net application codes that call Microsoft® ASP.Net services.  In the second layer lie the base classes for Microsoft® ASP.Net services.  These services do not communicate with the Service Providers directly.  Instead all operations are done via the CNUX.ProvidersServiceConsumer Concrete Classes. 

 

If any controls need to be customized and are calling methods are not already available within the Microsoft® ASP.Net services framework, the CNUX.ProvidersServiceConsumer concrete classes can be inherited and extended/overridden in the extended classes layer.  In general this approach can be used for moving custom data between Service Consumers and Service Providers, or performing functionalities that are not within the scope of Microsoft® ASP.Net services.

 

All CNUX.ProvidersServiceConsumer classes and custom extended classes communicate with their respective Service Providers ASMX objects via SOAP messages.

3.2     Service Providers on Application Server

 

In the top layer of the Application Server - Service Providers portion (see diagram 4) are ASMX objects that communicate with the Service Consumers.  These Service Providers in turn call Microsoft® ASP.Net services in the second layer.  These services do not store and manage data in the data storage directly.  Instead all operations are done via the CNUX providers as Concrete Classes. 

 

If any methods of the concrete classes need to be further customized, the concrete classes can be inherited and extended/overridden in the extended classes layer.

 

Table/Diagram 4.     CNUX .Net Providers Web Service Plug-in Model

 

4.    Features

 

4.1.    Compatibility

4.5.    Transaction control

4.9.    Shared Session State

4.2.    Programmability

4.6.    Exceptions – Error trapping

4.10. Database Failover/ Database Clustering

4.3.    Provider Types

4.7.    Support all Microsoft® documented ASP Roles and Views

 

4.4.    100% thread safe

4.8.    Implementation Completeness

 

 

4.1.   Compatibility

 

All CNUX .Net Providers are built for the Microsoft® ASP.Net Framework 2.0, 3.0 and 3.5, and 100% compliant and compatible with the information and requirements documented in the Microsoft® ASP.Net 2.0 model. 

 

There is no behavioural difference when compared to the out-of-the box .Net Providers for SQL Server provided by Microsoft®.

 

CNUX .Net Membership Provider and Role Provider are 100% Compatible with Microsoft® ASP.Net Web Site Administration Tool. 

 

Other providers are not applicable.




 

CNUX .Net Membership Provider and Role Provider are 100% compatible with Microsoft® SharePoint® 2007 server. 

 

Please note that Microsoft® SharePoint® 2007 server does not support customization of providers other than Membership and Role.

 

 






 

 

4.2.   Programmability

 

Programming with CNUX .Net Providers is a snap. 

 

CNUX .Net Providers offers concrete classes that can be easily incorporated into any web projects using the Microsoft® Visual Studio® environment by placing the CNUX .Net Providers module in your Microsoft® Visual Studio® project’s bin directory and modify a couple of settings in the web.config file.

 

 

 

 

 

 

 

 

 

 


The Microsoft® ASP.Net Providers base classes expose methods that can be called from your client code. Code calls are forwarded to the concrete CNUX .Net Providers classes which provide the implementation. 

 

All CNUX .Net Providers classes are derived from the abstract Microsoft® ASP.Net providers classes and therefore can be replaced or extended with any implementation you require via inheritance should any further customization be required.


 

 

 

4.3.   Provider Types

 

The following tables illustrate all the services and the corresponding CNUX .Net Providers:

 

Service

CNUX .Net Provider

Membership

CNUX.SqlProvider.SqlMembershipProvider

Role Management

CNUX.SqlProvider.SqlRoleProvider

Site Map

CNUX.SqlProvider.SqlSiteMapProvider

Profile

CNUX.SqlProvider.SqlProfileProvider

Session State

CNUX.SqlProvider.SqlSessionStateStore

Web Events

CNUX.SqlProvider.SqlWebEventProvider

Web Parts Personalization

CNUX.SqlProvider.SqlPersonalizationProvider

 

 

Table/Diagram 5.     CNUX .Net Providers table

 

Service

CNUX .Net Provider Service Consumer

Membership

CNUX.ProvidersServiceConsumer.WebServiceMembershipProvider

Role Management

CNUX.ProvidersServiceConsumer.WebServiceRoleProvider

Site Map

CNUX.ProvidersServiceConsumer.WebServiceSiteMapProvider

Profile

CNUX.ProvidersServiceConsumer.WebServiceProfileProvider

Session State

CNUX.ProvidersServiceConsumer.WebServiceSessionStateStore

Web Events

CNUX.ProvidersServiceConsumer.WebServiceWebEventProvider

Web Parts Personalization

CNUX.ProvidersServiceConsumer.WebServicePersonalizationProvider

 

 

Table/Diagram 6.     CNUX .Net Service Consumers table

 

4.4.   100% thread safe

 

All CNUX .Net Providers conform to the Thread Safety requirements as documented in http://msdn2.microsoft.com/en-us/library/aa479030.aspx.

 

Without thread safety the code can produce data corruption and hard to reproduce sporadic errors due to the following summarized nature of Microsoft® ASP.Net providers architecture:

 

§          Microsoft® ASP.Net providers are instanced once and shared among requests

§          Each request is processed on a different thread drawn from a thread pool

§          A provider can be accessed by multiple threads concurrently

 

 

4.5.   Transaction control

 

Transactions are applied to all singleton/multiple method calls and database updates to guarantee atomicity according to suggestions as documented in http://msdn2.microsoft.com/en-us/library/aa479030.aspx.

 

 

4.6.   Exceptions - Error trapping

 

All CNUX .Net Providers trap all errors and throw exceptions according to guidelines as documented in http://msdn2.microsoft.com/en-us/library/aa479030.aspx.

 

 

 

In addition, Exception Messages thrown by CNUX .Net Providers are sensitive to the user’s web browser settings and display in the corresponding language.  Currently Exception Messages are provided in 简体中文 (Chinese-Simplified), 繁體中文 (Chinese-Traditional), Nederlands (Dutch), English, Français (French) and 日本語 (Japanese).

 

 

 

 

 

 

 

 


 

4.7.   Support all Microsoft® documented ASP Roles and Views

 

CNUX .Net Providers support all the ASP Roles as follows:

 

 

CNUX .Net Providers supported Roles

ASP.Net Providers supported Roles for SQL Server

aspnet_WebEvent_FullAccess

Same

aspnet_Roles_ReportingAccess

Same

aspnet_Roles_FullAccess

Same

aspnet_Roles_BasicAccess

Same

aspnet_Profile_ReportingAccess

Same

aspnet_Profile_FullAccess

Same

aspnet_Profile_BasicAccess

Same

aspnet_Personalization_ReportingAccess

Same

aspnet_Personalization_FullAccess

Same

aspnet_Personalization_BasicAccess

Same

aspnet_Membership_ReportingAccess

Same

aspnet_Membership_FullAccess

Same

aspnet_Membership_BasicAccess

Same

aspnet_WebEvent_FullAccess

Same

 

 

Table/Diagram 7.     CNUX .Net Providers supported ASP Roles vs. Microsoft® ASP.Net Providers supported Roles for SQL Server

 

 

CNUX .Net Providers support all the ASP Views as follows:

 

 

CNUX .Net Providers supported Views

vw_aspnet_Applications

vw_aspnet_Users

vw_aspnet_MembershipUsers

vw_aspnet_Roles

vw_aspnet_UsersInRoles

vw_aspnet_Profiles

vw_aspnet_WebPartState_Path

vw_aspnet_WebPartState_Shared

vw_aspnet_WebPartState_User

 

 

Table/Diagram 8.     CNUX .Net Providers supported ASP Views

 

 

For more information about ASP Roles and Views, please refer to http://msdn2.microsoft.com/en-us/library/ms164596.aspx.

 

 

 

4.8.   Implementation Completeness

 

CNUX .Net Providers have implemented the full contract defined by the Microsoft® ASP.Net providers base class related to custom database access.  Here is a list of all the CNUX .Net Providers and their methods and properties:

 

 

Provider :  Base Class

Custom Methods and Properties

SqlMembershipProvider : MembershipProvider

 

ApplicationName

ChangePassword

ChangePasswordQuestionAndAnswer

CreateUser

DeleteUser

EnablePasswordReset

EnablePasswordRetrieval

FindUsersByEmail

FindUsersByName

GetAllUsers

GetNumberOfUsersOnline

GetPassword

GetUser

GetUserNameByEmail

Initialize

MaxInvalidPasswordAttempts

MinRequiredNonAlphanumericCharacters

MinRequiredPasswordLength

PasswordAttemptWindow

PasswordFormat

PasswordStrengthRegularExpression

RequiresQuestionAndAnswer

RequiresUniqueEmail

ResetPassword

UnlockUser

UpdateUser

ValidateUser

 

Table/Diagram 9.     CNUX .Net Membership Provider and its custom methods and properties

 

 

 

Provider :  Base Class

Custom Methods and Properties

SqlRoleProvider : RoleProvider

 

AddUsersToRoles

ApplicationName

CreateRole

DeleteRole

FindUsersInRole

GetAllRoles

GetRolesForUser

GetUsersInRole

Initialize

IsUserInRole

RemoveUsersFromRoles

RoleExists

 

Table/Diagram 10. CNUX .Net Role Provider and its custom methods and properties

 

 

 

Provider :  Base Class

Custom Methods and Properties

SqlSiteMapProvider : StaticSiteMapProvider

 

Initialize

BuildSiteMap

 

Table/Diagram 11. CNUX .Net Site Map Provider and its custom methods and properties

 

 

 

Provider :  Base Class

Custom Methods and Properties

SqlSessionStateStore : SessionStateStoreProviderBase

 

CreateNewStoreData

CreateUninitializedItem

Dispose

EndRequest

GetItem

GetItemExclusive

Initialize

InitializeRequest

ReleaseItemExclusive

RemoveItem

ResetItemTimeout

SetAndReleaseItemExclusive

SetItemExpireCallback

 

Table/Diagram 12. CNUX .Net Session State Provider and its custom methods and properties

 

 

 

Provider :  Base Class

Custom Methods and Properties

SqlProfileProvider : ProfileProvider

 

ApplicationName

DeleteInactiveProfiles

DeleteProfiles (ProfileInfoCollection)

DeleteProfiles (string[])

FindInactiveProfilesByUserName

FindProfilesByUserName

GetAllInactiveProfiles

GetAllProfiles

GetNumberOfInactiveProfiles

GetPropertyValues

Initialize

SetPropertyValues

 

Table/Diagram 13. CNUX .Net Profile Provider and its custom methods and properties

 

 

 

Provider :  Base Class

Custom Methods and Properties

SqlWebEventProvider : BufferedWebEventProvider

 

Initialize

ProcessEvent

ProcessEventFlush

Shutdown

 

Table/Diagram 14. CNUX .Net Web Event Provider and its custom methods and properties

 

 

 

Provider :  Base Class

Custom Methods and Properties

SqlPersonalizationProvider : PersonalizationProvider

 

ApplicationName

FindState

GetCountOfState

ResetState

ResetUserState

 

Table/Diagram 15. CNUX .Net Web Parts Personalization Provider and its custom methods and properties

 

 

Consumer :  Base Class

Custom Methods and Properties

WebServiceMembershipProvider : MembershipProvider

ApplicationName

ChangePassword

ChangePasswordQuestionAndAnswer

CreateUser

DeleteUser

EnablePasswordReset

EnablePasswordRetrieval

FindUsersByEmail

FindUsersByName

GetAllUsers

GetNumberOfUsersOnline

GetPassword

GetUser

GetUserNameByEmail

Initialize

MaxInvalidPasswordAttempts

MinRequiredNonAlphanumericCharacters

MinRequiredPasswordLength

PasswordAttemptWindow

PasswordFormat

PasswordStrengthRegularExpression

RequiresQuestionAndAnswer

RequiresUniqueEmail

ResetPassword

UnlockUser

UpdateUser

ValidateUser

Table/Diagram 16. Membership Service Consumer + custom methods & properties

 

 

 

Consumer :  Base Class

Custom Methods and Properties

WebServiceRoleProvider : RoleProvider

 

 

AddUsersToRoles

ApplicationName

CreateRole

DeleteRole

FindUsersInRole

GetAllRoles

GetRolesForUser

GetUsersInRole

Initialize

IsUserInRole

RemoveUsersFromRoles

RoleExists

Table/Diagram 17. Role Service Consumer + custom methods & properties

 

 

 

Consumer :  Base Class

Custom Methods and Properties

WebServiceSiteMapProvider : StaticSiteMapProvider

Initialize

BuildSiteMap

Table/Diagram 18. Site Map Service Consumer + custom methods & properties

 

 

 

Consumer :  Base Class

Custom Methods and Properties

WebServiceSessionStateStore : SessionStateStoreProviderBase

 

CreateNewStoreData

CreateUninitializedItem

Dispose

EndRequest

GetItem

GetItemExclusive

Initialize

InitializeRequest

ReleaseItemExclusive

RemoveItem

ResetItemTimeout

SetAndReleaseItemExclusive

SetItemExpireCallback

Table/Diagram 19. Session State Service Consumer + custom methods & properties

 

 

 

Consumer :  Base Class

Custom Methods and Properties

WebServiceProfileProvider : ProfileProvider

ApplicationName

DeleteInactiveProfiles

DeleteProfiles (ProfileInfoCollection)

DeleteProfiles (string[])

FindInactiveProfilesByUserName

FindProfilesByUserName

GetAllInactiveProfiles

GetAllProfiles

GetNumberOfInactiveProfiles

GetPropertyValues

Initialize

SetPropertyValues

Table/Diagram 20. Profile Service Consumer + custom methods & properties

 

 

 

Consumer :  Base Class

Custom Methods and Properties

WebServiceWebEventProvider : BufferedWebEventProvider

Initialize

ProcessEvent

ProcessEventFlush

Shutdown

Table/Diagram 21. Web Event Service Consumer + custom methods & properties

 

 

 

Consumer :  Base Class

Custom Methods and Properties

WebServicePersonalizationProvider : PersonalizationProvider

ApplicationName

FindState

GetCountOfState

ResetState

ResetUserState

Table/Diagram 22. Web Parts Personalization Service Consumer + custom methods & properties

 

4.9.   Shared Session State

 

Shared Session State is an enhanced feature of CNUX .Net Providers.  It allows multiple web applications to pass information to and from one another.  It supports passing of all complex data types, such as collections, that are supported by Microsoft® ASP.Net Session State management.

 

This feature is particularly useful for environments where a single sign-on application is used for general user authentication and multiple web applications can be invoked or spawned within it once a user’s identity is verified.  From there on information can be passed to and from the sign-on application and the spawned applications.

 

4.10.        Database Failover/Database Clustering

 

All CNUX .Net Providers can be deployed to Database Failover/Database Clustering environments.

 

5.    Sample Codes

 

To help you get started with programming with CNUX .Net Providers, we provide code examples to illustrate how easily each customized state-management provider can be incorporated into your software.  These sample programs are provided in 简体中文 (Chinese-Simplified), 繁體中文 (Chinese-Traditional), Nederlands (Dutch), English, Français (French), Deutsch (German), 日本語 (Japanese) and Español (Spanish).  (Language specific Microsoft® Visual Studio® is required for controls to display in native languages).


 

 

 

 

In addition to programming examples, we also include a sample Custom Membership web site to demonstrate how the framework can be incorporated into your existing environment and applications.

 

 

 

 

 

 

 

 

 

 


 

Details on how to setup CNUX .Net Providers for SharePoint® 2007 are also included.

 

Note:  All sample codes are NOT REDISTRIBUTABLE.

 

 

6.    Product Documentation

 

A complete User Guide that includes

 

§          Programming guide that includes set up, extendibility

§          Code examples description

 

 

 

 

 

 

 

 

7.    Pricing

 

Only $399CDN≈$399USD per site license.

 

 

8.    Support and Software Upgrade

 

1 year unlimited e-mail support and product upgrade as new releases become available.

 

 

9.    End User License Agreement

 

You need Adobe Acrobat Reader to access the CNUX .Net Providers EULA file .

 

10.          Trial Software

 

Trial software is available upon request with the following limitations:

 

§          During execution random 20 second delays will happen. 

 

Please feel free to request a copy of CNUX .Net Providers – Trial Version now!

 

11.          Limitations

 

§          Sitemap: Currently automatic reloading of site map data based on data-change monitoring is not implemented. 

§          Session State:  Currently it does not support session state partitioning.

 

 

12.          Release Notes

 

You can access the Release Notes here.

 

 

 

 

 

Trademarks

 

Microsoft, Visual Studio, Visual Basic, Visual C#, Visual C++, Visual J# and SharePoint are either registered trademarks or trademarks of Microsoft Corporation in the United States and/or other countries.

 

Oracle, JD Edwards, PeopleSoft, and Siebel are registered trademarks of Oracle Corporation and/or its affiliates.

 

IBM, DB2 are registered trademarks of International Business Machines Corporation in the United States or other countries or both.

 

 

 

 

© 2007 CNUX Technologies Inc. All rights reserved.