18 messaggi dal 07 gennaio 2016
Ciao Moreno, volevo chiederti un altra cosa inerente all'autenticazione.
Ora volevo provare l'autenticazione da un client Xamarin tramite provider esterni ad esempio (Facebook, twitter, google etc) ma utilizzando sempre la mia api da cui sono partito e una volta autenticato tramite uno dei provider effettuare altre chiamate HTTP.

Hai già scritto qualcosa in passato di più dettagliato che posso andarmi a leggere?


Grazie.


Marco.
11.886 messaggi dal 09 febbraio 2002
Contributi
Ciao Marco,
no, non ho scritto nulla in merito.

Se nella tua applicazione ASP.NET Core stai usando ASP.NET Core Identity, puoi configurare l'accesso con i provider esterni di Facebook, Twitter, Microsoft e Google. Quando l'utente completa il login, verrà reindirizzato alla tua applicazione con un token che prova la sua identità. ASP.NET Core Identity interpreta quel token e crea per l'utente una ClaimsIdentity proprio come se si fosse autenticato con username e password mediante il metodo /api/Token.

A questo punto, dato che l'utente si è autenticato, il TokenMiddleware emetterà un token ed è quello che dovrai raccogliere ed usare in tutte le successive richieste.

Vedi se questo ti è d'aiuto. Vai al paragrafo "Adding Facebook OAuth authentication".
https://fullstackmark.com/post/13/jwt-authentication-with-aspnet-core-2-web-api-angular-5-net-core-identity-and-facebook-login

ciao,
Moreno

Enjoy learning and just keep making
18 messaggi dal 07 gennaio 2016
Ciao Moreno,
ce un comando cli per creare il database come quello in migrations del progetto su un istanza SQL Server?

Grazie in anticipo.

Ciao,
Marco.
11.886 messaggi dal 09 febbraio 2002
Contributi
Ciao Marco,
sì, puoi usare questo comando per applicare tutte le migration su un database nuovo:

dotnet ef database update


L'utente che hai specificato nella connection string deve avere il privilegio per creare/alterare le tabelle.

ciao,
Moreno

Enjoy learning and just keep making
18 messaggi dal 07 gennaio 2016
Perfetto Moreno il database è stato creato!
Ora sto avendo problemi a mettere il progetto su IIS locale.
Ho installato il modulo per asp.net core dopodiché ho creato un nuovo sito chiamato 'WebApiAuth' binding 'http:*:80' e con pool 'NetCoreAppPool'.


Il percorso fisico è la mia cartello dove c'è l'applicazione in sviluppo.


Ora lanciando http://LocalHost:80/ mi restituisce errore 500 internal server erro ed è dovuto da un errore credo di configurazione del webconfig.

Errore di configurazione :
This configuration section cannot be used at this path. This happens when the section is locked at a parent level. Locking is either by default (overrideModeDefault="Deny"), or set explicitly by a location tag with overrideMode="Deny" or the legacy allowOverride="false".

-----------------------

Forse mi manca da abilitare qualcosa nelle funzionalità di IIS?
il web.config è il seguente :

<?xml version="1.0" encoding="utf-8"?>
<configuration>
<location path="." inheritInChildApplications="false">
<system.webServer>
<handlers>
<add name="aspNetCore" path="*" verb="*" modules="AspNetCoreModule" resourceType="Unspecified" />
</handlers>
<aspNetCore processPath="bin\IISSupport\VSIISExeLauncher.exe" arguments="-argFile IISExeLauncherArgs.txt" stdoutLogEnabled="false" />
</system.webServer>
</location>
</configuration>


Ti ringrazio molto Moreno.

Ciao,
Marco.
18 messaggi dal 07 gennaio 2016
Dovrei aver risolto modificando il file applicationHost.config in C:\Windows\System32\inetsrv\Config.
Ho modificato le due section seguenti :
<section name="handlers" overrideModeDefault="Allow" />
<section name="modules" allowDefinition="MachineToApplication" overrideModeDefault="Allow" />

In ogni caso accetto volentieri consiglio o spiegazione a riguardo di come ho configurato IIS e web.config.

Grazie.

Marco.
11.886 messaggi dal 09 febbraio 2002
Contributi
Ciao,
il problema può essersi verificato perché hai aggiunto un elemento "<location>" non necessario (lo puoi togliere, dato che sta causando il problema) oppure perché hai creato una "applicazione IIS" anziché un "Sito web IIS". Le "applicazioni", che sono figlie dei "siti web" per default hanno una configurazione più limitata rispetto a quella che puoi avere con in "siti web".

Comunque, il file web.config corretto da usare, così come i file da copiare dentro la directory del sito web, li puoi ottenere eseguendo:
dotnet publish

E verranno generati dentro /bin/debug/qualcosa...

ciao,
Moreno
Modificato da BrightSoul il 02 novembre 2018 12.39 -

Enjoy learning and just keep making
18 messaggi dal 07 gennaio 2016
Ciao Moreno,
volevo chiederti un aiuto / consiglio.
Ora ho il mio database con all'interno le tabelle di autenticazione di aspnet e altre 4 tabelle.
tramite il comando ho già creato nel mio progetto il dbcontext con le mie classi prese dal database in locale.
Ora volevo chiederti :
Stavo pensando di creare un interfaccia al cui interno avrò i vari metodi come ad esempio add - update - delete - GetAll - FindBy etc e poi un servizio che eredita da questa interfaccia per effettuare linq su T entità nel mio dbcontext.
Poi avrò N controller in base a quello che mi serve (controller per i clienti, controller per i prodotti) dove avrò i vari HttpGet - HttpPost etc.


è corretto quello che sto facendo?
Spero di essermi spiegato bene.


Grazie della risposta Moreno.


Marco.

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.