There are two things to consider:
1. User Store, let's say a 'database' where users and their profile will be stored. You need one 'user store' for all your web apps (Joomla, Wordpress, DNN, etc). And this is a good idea - one user store for all. Duplicated identities always lead to trouble. Microsoft Active Directory could be expensive, but if it will be used only for a user store, you need only one license for one server.
2. Second thing to consider are Authentication & authorization methods, and this is something more difficult. Authentication & authorization methods are some kind of endpoint for your 'user store', and all apps must be able to 'understand' these methods. I said that is difficult because these apps using different technologies, like .NET, PHP, and possible that in the near feature you will be need to add a mobile phone (android) to this ecosystem. I think you should focus on authentication & authorization methods that will be able to communicate with different platforms. Thats why I think that OAuth & OpenID is good choice.
Let's say that for a 'user store' we choose "Azure Active Directory" (it's not the same as Microsoft Active Directory). One place where your users will be kept, and you will be able to manage these identities. Then if you want to add an Wordpress website, all you need to do is to implement Azure - Wordpress plugin. This plugin will 'migrate' Wordpress 'user store' to Azure AD. Here you can find these plugins: https://azure.microsoft.com/en-us/mar...
What is most important, Azure have about 2 thousands of these plugins to different apps. These plugins can simplify the process of integration. In the near future there will be also Azure connector for DNN. I encourage you to read first chapter form this doc, it's describes possible advantages of Azure:https://docs.google.com/document/d/1e...
It's a big project and first thing to do is to gather ALL the requirements (possible few weeks of work).