11.886 messaggi dal 09 febbraio 2002
Contributi
Ciao Emanuele, tutto dipende da quale livello di comfort e sicurezza vuoi dare ai tuoi utenti. Per gli utenti consumer, sia ASP.NET Identity che Azure AD B2C sono ottimi candidati. Entrambi permettono il login con i social ma, nel primo caso, hai tu l'onere di garantire la sicurezza dei dati anche in ottica GDPR mentre nel secondo caso stai delegando questo compito a Microsoft che è già compliant. Il primo è gratuito, il secondo offre una protezione maggiore ai tuoi utenti perché sfrutta una intelligenza artificiale per ridurre i possibili abusi da parte di malintenzionati. In base allo scenario, al numero di utenti, all'importanza del progetto e al budget, puoi scegliere l'una o l'altra soluzione.

Se tra i tenant ci sono anche delle organizzazioni, puoi chiedergli se hanno voglia di estendere la loro directory nel cloud. Quindi alla scelta precedente puoi anche affiancare l'Azure Active Directory di quella organizzazione. Altrimenti, se il loro responsabile IT non fosse d'accordo, si presenteranno come fossero utenti consumer e gli fai registrare un account locale.

Quando un utente visita la pagina di login, gli puoi presentare una casella in cui inserire l'indirizzo email. Se contiene il dominio di un'organizzazione che ha una sua Azure Active Directory, lo reindirizzi subito verso la sua pagina di autenticazione, altrimenti lasci che inserisca anche la password (se prima avevi scelto ASP.NET Identity) o lo mandi su Azure AD B2C (se avevi scelto AD B2C).

ciao,
Moreno

Enjoy learning and just keep making
19 messaggi dal 14 gennaio 2008
Ciao e ottimo articolo. Io ho provato a fare un progetto Core2 senza Template per provare ad esporre solo una mia api. Da queste pagine, manca tutta la parte di richiesta di un client per poter chiamare un controller decorato con Authorize. Come si ottiene lato client il token bearer da allegare alle richieste? Qual è il flow di autenticazione? La gestione del RefreshToken come viene fatta? Ti ringrazio molto
Modificato da gianx10 il 12 luglio 2018 15.25 -
11.886 messaggi dal 09 febbraio 2002
Contributi
Ciao, grazie!
Non esiste un solo meccanismo di autenticazione e la scelta dipende un po' da chi sono i tuoi utenti e dal tipo di applicazione da cui devono consumare la tua Web API.

token bearer da allegare alle richieste? Qual è il flow di autenticazione? La gestione del RefreshToken

Questa è terminologia specifica di OAuth ma sei sicuro, in primo luogo, che OAuth sia la scelta più idonea al tuo caso? Le credenziali degli utenti sono conservate in un identity provider esterno alla tua applicazione? Se sì, qui trovi delle informazioni su come implementarlo:
https://www.jerriepelser.com/blog/authenticate-oauth-aspnet-core-2/
https://www.codeproject.com/Articles/1185880/ASP-NET-Core-WebAPI-secured-using-OAuth-Client-Cre

ciao,
Moreno
Modificato da BrightSoul il 12 luglio 2018 19.32 -

Enjoy learning and just keep making
14 messaggi dal 14 marzo 2019
Ciao,

sto leggendo l'articolo e lo trovo davvero interessante, premetto di essere un newbie in mertio ad autenticazione ed uso di Active Directory.
Ho una domanda: è possibile popolare il valore dei vari "Claim" in maniera dinamica?

Se ho degli utenti che mi vengono autenticati da una Web App Active Directory, quindi utenti che hanno già un "ruolo" definito, come recupero dinamicamente quel valore?

Mi sembra di capire che assegni in modo statico tale valore al claim, facendo:
 identity.AddClaim(new Claim(ClaimTypes.Role, "Member")); 

Grazie mille.
Modificato da mee il 14 marzo 2019 22:46 -
11.886 messaggi dal 09 febbraio 2002
Contributi
Ciao e benvenuto nel forum!


quindi utenti che hanno già un "ruolo" definito, come recupero dinamicamente quel valore?

Non devi recuperarlo a mano perché, se abiliti la Windows Authentication, ti troverai già l'identità impostata.

Segui questa pagina della documentazione per capire come abilitare la Windows Authentication. Dopodiché, se hai domande, chiedi pure.
https://docs.microsoft.com/it-it/aspnet/core/security/authentication/windowsauth?view=aspnetcore-2.2&tabs=visual-studio

ciao,
Moreno

Enjoy learning and just keep making
14 messaggi dal 14 marzo 2019
Grazie mille per la risposta.

abiliti la Windows Authentication

Intendi nel processo di creazione dell'app MVC in Visual Studio?

Nella creazione dell'app MVC, nella scelta tra i vari tipi di autenticazione, mi è sembrato più vicino alle mie esigenze quello denominato "Individual user accounts", perché permette di specificare un "Application ID", una "Callback" ed un "Domain name", trovi un esempio qui.

La mia Web App su Azure mi fornisce un "Application ID" e mi permette di settare una "callback".
"Windows Authentication" permette di usare le funzionalità della Web App AD?

Forse è opportuno che apra una discussione nel forum? Così può essere utile anche per altri utenti?

Grazie
Modificato da mee il 14 marzo 2019 22:47 -
11.886 messaggi dal 09 febbraio 2002
Contributi
Ciao,
sì, è meglio, apri un thread apposito. Quindi la tua applicazione gira su Azure. Spiega cosa intendi con Web App AD. Stai usando Azure Active Directory?

Enjoy learning and just keep making
14 messaggi dal 14 marzo 2019
Ciao,
sì sto usando Azure Active Directory (App Registration). Ho aperto una nuova discussione nel forum, qui.

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.