I am developing an ASP.NET Core application in which the user MUST use individual database accounts. In all the tutorials it is clearly stated that I must select "No Authentication" when I create the project. I do not understand why.
I want to let the user to be able to log-in with LinkedIn and then get their mail, name and other information. I can get that with:
app.UseLinkedInAuthentication(AuthenticationSettings.LinkedInOptions(
Configuration["LinkedIn:ClientId"],
Configuration["LinkedIn:ClientSecret"]));
in Startup.cs and (plus all other steps in the documentation)
var loginProviders = SignInManager.GetExternalAuthenticationSchemes().ToList();
if (loginProviders.Count == 0)
{
<div>
<p>
There are no external authentication services configured. See <a href="https://go.microsoft.com/fwlink/?LinkID=532715">this article</a>
for details on setting up this ASP.NET application to support logging in via external services.
</p>
</div>
}
else
{
<form asp-controller="Account" asp-action="ExternalLogin" asp-route-returnurl="@ViewData["ReturnUrl"]" method="post" class="form-horizontal">
<div>
<p>
@foreach (var provider in loginProviders)
{
<button type="submit" class="btn btn-default" name="provider" value="@provider.AuthenticationScheme" title="Log in using your @provider.DisplayName account">@provider.AuthenticationScheme</button>
}
</p>
</div>
</form>
}
In _Layout.cshtml:
I get the button, the user is asked to grant permission to the app and I get the personal data, but how can I get the other information (skills, educations, positions, etc) like in:
How to Retrieve all possible information about a LinkedIn Account ? (API using C#)
but without OAuth or how can I implement OAuth with Authorization selected when creating the project?