While Community includes a fully functional membership system using ASP.net Forms Authentication, sometimes another solution is needed. If your customers already have accounts in another application in your environment, it may be undesirable to make them create separate user accounts specifically for Community, and doing so may lower adoption rates and participation. Community provides integration points to allow authentication control (login, logout, and registration) by a third party system, a process known as Single Sign-On (SSO). This allows your users to log in once and gain access to all related systems.
Community uses implementations of IAuthenticationPlugin to handle user authentication from a given HttpContext. One Authentication plugin is required to be enabled for the site to function and process requests. An overview of the existing implementations and guidance on custom implementations can be found here.
Managing authentication can also be done via OAuth. Here we provide a sample implementation of OAuth authentication using Pinterest.
If you need to share authentication from an application that doesn't use ASP.net, you'll need to do it via Cookie Authentication. This is also the method you can use to ensure users are logged into every connected system by logging in once.