There are many ways in which we can achieve authentication in our C# applications.
This is why in this article we’ll see seven services that offer authentication and some methods that need more code in order to obtain it.
Azure Active Directory
Azure Active Directory is a cloud-based solution that is used as an authentication method and gives access to external and internal resources.
If you’re using multiple Microsoft services, connecting them with Azure AD can be the best choice for you.
When it comes to managing the access of users it lets you decide when, where and how they can access the information.
Other important features they offer are:
multi-factor authentication
passwordless sign-in, and
audit logs - where you can track the user’s activity.
AWS Cognito
AWS Cognito is also a cloud-based solution that can be used to connect with API Gateway, AppSync or other services.
One of it’s main features is the ability to store personal information, such as name, email, username or password which will be stored in the cloud.
Other features include:
two-factor authentication — where the confirmation email and text messages will automatically be sent to the user by this service,
out-of-the-box encryption of user’s data,
easy UI forms for all the important functions needed and
password recovery.
Okta
Okta is an enterprise-grade identity management cloud-based service which offers a lot of flexibility when it comes to managing access.
This service is appreciated due to its high security, obtained by centralizing identity and management.
Besides security, they also offer features like agile scaling, in order to make the account management simpler, and accelerated integrations, to connect with global users.
Auth0
Auth0 is one of the most known services, which works with a lot of different types of apps, from legacy ones to mobile, web and IoT.
Some of the features that they are most proud of are their single sign on, universal login and multi-factor authentication, where you only need to press on the push notification and confirm or deny the request to login.
When it comes to security, they have a very robust architecture that allows them to adapt quickly.
OneLogin
OneLogin is one of the top Identity and Access Management.
It offers many security features, from security policy enforcement (which is observing the access across the whole app and all the devices) to a multitude of security features - like multi-factor authentication or allowing the company admins to restrict access to applications.
Identity Server4
IdentityServer is middleware that adds the spec-compliant OpenID Connect and OAuth 2.0 endpoints to an arbitrary ASP.NET Core application.
This supports Single Sign-on, integrations with third-party providers such as Google and Facebook and it can be customized for your needs.
The support for IdentityServer will be disrupted in November 2022.
After November 2022, the support is converted by Duende IdentityServer which is not free anymore for production use.
ASP.NET Core
ASP.NET Core is an open-source version of ASP.NET that can run on any type of machine (Linux, Windows, macOS) and it was first released in 2016.
This is one of the fastest web frameworks that ever existed and it can handle up to 7M requests per second.
Simple authentication and authorization can be easily achieved in ASP.NET Core using JWT tokens for security (function AddJwtBearer).
Using this solution, the database schema needed for authentification is autogenerated and it can be integrated to support role-based authentification.
We can summarize all the information by comparing all of their main features in the table down below:
| Azure Active Directory | AWS Congito | Okta | Auth() | OneLogin | Identity Server4 | ASP.NET core |
Multi Factor Authentication (MFA) | yes | yes | yes | yes | yes | - | - |
Single sign-on (SSO) | yes | yes | yes | yes | yes | yes | - |
Custom UI/UX | - | yes | - | yes | yes | yes | - |
One-time password/Magic Link | yes | yes | - | yes | yes | - | - |
Third-party login | - | yes | yes | yes | yes | yes | yes |
User directory/pool | yes | yes | yes | yes | yes | - | - |
Open-Source | - | - | - | - | - | yes | yes |
Sas | yes | yes | yes | yes | yes | - | - |
Free trial | 500.000 Object Limit | 50.000 MAUIs | 15.000 MAUIs | 7000 MAUIs | - | - | - |
Price | No fee with Office 365 | -0.0055$/ MAUI | 14.000$/yr | starting 23$/m | Starting 4 euros/user/month | - | - |
Source: Author
Source: Medium - Alexandra Tigau-Almasan
The Tech Platform
Kommentarer