

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 
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.
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
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.
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.
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
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.
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.
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
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
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.
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).
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.
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.

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.
A complete User Guide that includes
§
Programming
guide that includes set up, extendibility
§
Code
examples description




Only
$399CDN≈$399USD per site
license.
1 year
unlimited e-mail support and product upgrade as new releases become available.
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!
§
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.