1. UKNuke RPX Authentication for DotNetNuke
This document describes the simple steps to enable RPX Authentication for your DotNetNuke
installation using the UKNuke.RPX extension.
The UKNuke RPX extension has been tested against DNN4.9, DNN5.0 and DNN5.1 running on .NET 2.0
and .NET 3.5.
This module is available from www.uknuke.com (a part of www.cirrious.com).
The functionality currently is:
• Existing users can login to your DNN portal using their external accounts.
• New users can register for your DNN portal using their external accounts.
There are many possible extensions to this base functionality – please keep checking with
www.uknuke.come for any updates.
To see this authentication system in live deployment, please come to www.uknuke.com
(www.cirrious.com), login using RPX, then please come and say hello on the forum there.
Instructions
The steps described below are:
• Set up DNN
• Set up your RPX application
• Install the UKNuke.RPX Authentication Provider
• Test it works!
From start to end a complete installation, including DNN setup and RPX registration can be completed
within 10 minutes.
Please pay careful attention to the “VERY IMPORTANT NOTE” on the following page.
2. ! VERY IMPORTANT NOTE !
VERY IMPORTANT NOTE 1 - if you are installing on an existing DNN website, please backup your site
before you start, and please test the install on a copy of the site first. If you do not, then you may not be
able to recover your site if something goes wrong!.
3. Notes for DNN 4.9.x
The installation process for 5.x is described in detail below.
For DNN 4.9.x, the installation process is similar, except:
• The authentication system is installed within “Host Settings”, not as an extension - use “Host->
Host Settings -> Advanced Settings -> Authentication Settings”, then choose “Install New
Authentication System”
• The authentication system is configured using “Admin -> Authentication” – it is not shown
within “Admin -> Extensions”
A – Set up DNN
1. Set up your new DotNetNuke website…. See http://www.mitchelsellers.com/default.aspx for
instructions.
B – Set up RPX
2. Go to RPX – http://www.rpxnow.com
3. Choose “Get RPX”, choose “SignUp” under Basic – RPX will the invite you to login using some
external account – and will then ask you to confirm your email address
4. In the “Create New Application” screen, enter a name for your application and the list of
domains you wish to use this application on.
4. 5. Enter a new application name, choose “Next”
6. Take a note of the “API Key” on this page. Note – you must keep the API key a secret – you’ll
need to create a new key if your initial key is stolen or compromised.
5. 7. If you’d like to customize this application further – e.g. to add extra authentication providers -
then use “Configure Providers” on the right-hand side of this window.
C – Install the UKNuke.RPX Authentication Provider
• In your DNN 5 portal, login as “Host” and then choose “Host -> Extensions”
NOTE – if you are in DNN 4.9.1, the authentication system is installed within “Host Settings”, not
as an extension - use “Host-> Host Settings -> Advanced Settings -> Authentication Settings”,
then choose “Install New Authentication System”.
8. At the bottom of the page, choose “Install Extension Wizard”
9. Step through the wizard, uploading the package UKNuke.RPX_Install.zip
10. Note that you must accept the license terms on the license page.
6. 11. At the end of the install you will hopefully see the “Package Installation Report” showing the
success message.
12. Within DNN 5 go to the “Admin -> Extensions” tab, and choose the “Edit” pencil option next to
“UK Nuke – RPX”.
For DNN4.9.1, the authentication system is configured using “Admin -> Authentication”
7. 13. In the edit settings, enable the RPX authentication, choose whether or not to include help, then
enter your Application Name and Application Key (API Key) from the RPX website, then choose
“Update Authentication Settings”.
8. D – Test it works!
14. IMPORTANT – Do not logout of your Host account – if you logout and your login system is
broken then you may never be able to login again!
15. Use a new browser instance (e.g. IE instead of Firefox) or a separate machine to browse to your
site.
16. Choose “login” – you should now have a Partner Sites option:
17. If you see an error message, then you can use the Host account to try to analyse the error in
“Site -> Event Viewer” and use “Site -> Extensions” to disable the RPX auth module and contact
www.uknuke.com for help.
18. Your users can now login to your DNN portal using this external service
19. When they “Connect”, they will come back to your application and the user will be asked to
register on your site– or to link with an existing site account.
9. 20. That’s it!
21. For further information or advice, please check http://www.uknuke.com
10. Extension – Integration with Dynamic Registration from Data Springs.
Cirrious, working with DataSprings, have produced an extension to the RPX authentication provider to
allow Dynamic Registration.
To enable this:
1. Install the dynamic registration and RPX modules on your server
2. In the RPX module, extensions setting for your module, check the check box for “Use Dynamic
Registration”
3. Setup your Dynamic Registration – and you may include the following questions which can be
automatically filled in from RPX:
Field Name Short Field Name
First Name UKNuke_GivenName
Last Name UKNuke_FamilyName
Email Address UKNuke_BestEmail
Username UKNuke_BestUserOrDisplayName
Display Name UKNuke_BestDisplayOrUserName
11. e.g.
When a new RPX user registers, then these fields will be filled in from the fields from the base
authentication provider.
However, please note that not all providers, will provide all the fields – e.g. Yahoo does not
currently provide First Name or Last Name.
Also include the following hidden fields:
Field Name Short Field Name
UKNuke ProviderName UKNuke_ProviderName
UKNuke LoginAuthType UKNuke_LoginAuthType
UKNuke Identifier UKNuke_Identifier
For all of these questions and hidden fields, ensure you choose the “Retrieve values from
session variable for this question” option.
4. Within Dynamic Registration, add a new SQL completion event for Initial registration only:
For this use the SQL -
12. IF LEN('$(UKNuke_Identifier)') > 0 Exec AddUserAuthentication $
(UserID), '$(UKNuke_LoginAuthType)', '$(UKNuke_Identifier)'
Note: dependent on how you have installed DNN, you may need to add a prefix to
AddUserAuthentication – e.g. you may need to use dnn_AddUserAuthentication as shown
below:
13.
14. 5. That’s it – the two modules should now work together.
For troubleshooting, please contact Dynamic Springs and Cirrious!