Single Sign On

mercoledì 28 novembre 2012 - 20.56
Tag Elenco Tags  VB.NET  |  .NET 4.0  |  Visual Studio 2010  |  Visual Studio 2008  |  SQL Server 2008 R2  |  Javascript  |  CSS 2.1  |  CSS 3.0

TOPOAMORE Profilo | Expert

Buongiorno a tutti,

vi spiego subito il problema...

Esiste un applicativo X di una ditta che non so dove si trova che richiede l'autenticazione.....

Esiste il mio applicativo che richiede l'autenticazione....

Tutti DEVONO obligatoriamente loggarsi e transitare prima per l'applicativo X....

Ora è possibile creare un ticket o non so cosa in modo da dire al mio applicativo che l'untente salvatore è gia loggato sull'applicativo X e che quindi autorizzato a passare???

Attendo consigli e suggerimenti
__.__.__.__.__.__

http://salvatorecervone.wordpress.com

ASP 2.0 - VB 2008

alx_81 Profilo | Guru

>Buongiorno a tutti,
ciao

>vi spiego subito il problema...
>Esiste un applicativo X di una ditta che non so dove si trova
>che richiede l'autenticazione.....
>Esiste il mio applicativo che richiede l'autenticazione....
>Tutti DEVONO obligatoriamente loggarsi e transitare prima per
>l'applicativo X....
>Ora è possibile creare un ticket o non so cosa in modo da dire
>al mio applicativo che l'untente salvatore è gia loggato sull'applicativo
>X e che quindi autorizzato a passare???
dovresti farti un sistema di token salvati in un punto centrale che ti gestisce le login e le sessioni.
Appena fai login in un'app segni che ti sei loggato in quella con un token univoco che "scade" quando vuoi che scada e un tipo che dice "app1" o "app2".
Quando entri nell'altro applicativo controlli per quell'user/pwd se c'è un token (tipo un token di sessione) attivo a quella data del tipo "app1" ad esempio.
Se c'è, fai l'auth nell'applicativo, se non c'è dai errore.
Vedi tu se farlo biunivoco.. io ragionerei comunque con token di sessione.
Altrimenti l'altra cosa potrebbe essere sfruttare il dominio in cui le due applicazioni girano, ma dovresti avere un'infrastruttura con un domain controller, per fare in modo che il tuo user (ad esempio un user windows DOMINIO\Utente) sia trustato alla login della macchina e non si debba nemmeno preoccupare sulle applicazioni di autenticarsi, ma solo di segnare che è attivo su un app prima che sull'altra.
In ogni modo, devi avere un punto centrale su cui salvare i dati, anche un database semplice e free, come un SQLite o un SQLExpress se vuoi avere anche strumenti di amministrazione.

--
Alessandro Alpi | SQL Server MVP
MCP|MCITP|MCTS|MCT

http://www.alessandroalpi.net
http://blogs.dotnethell.it/suxstellino
http://mvp.microsoft.com/profiles/Alessandro.Alpi

TOPOAMORE Profilo | Expert

Grazie per la risposta...

Allora in entrambi le applicazione c'e' un db....in quella X non so come sia e in che cosa e fatto nella mia c'e' SQL Server.

Ora cosa intendi per token di sessione???
Potresti inviarmi qualche link per guardare un po di materiale o spiegarmi tu ????

Grazie
__.__.__.__.__.__

http://salvatorecervone.wordpress.com

ASP 2.0 - VB 2008

ridaria Profilo | Expert

>Grazie per la risposta...
>
>Allora in entrambi le applicazione c'e' un db....in quella X
>non so come sia e in che cosa e fatto nella mia c'e' SQL Server.
>
>Ora cosa intendi per token di sessione???

Se i due applicativi girano sotto lo stesso dominio la cosa è semplice.

Immagino che Alessandro si riferisca ad un token nella session.
é cioè se si logga x o su y scrivi in una variabile di sessione che è loggato è già loggato e quindi ha accesso.

Ma se sono sotto due domini differenti la cosa cambia però.


Vediamo Alessandro cosa ci dice.


CIAO




>
>ASP 2.0 - VB 2008

Riccardo D'Aria

TOPOAMORE Profilo | Expert

Purtroppo sono sotto 2 domini differenti...
Meglio dire su 2 hosting diversi
__.__.__.__.__.__

http://salvatorecervone.wordpress.com

ASP 2.0 - VB 2008

ridaria Profilo | Expert

.....diamine la cosa cambia a mio avviso.

ma nel sistema y (quello non tuo) puoi metterci le mani a livello di codice o di database??

CIAo
Riccardo D'Aria

TOPOAMORE Profilo | Expert

Magari :D
__.__.__.__.__.__

http://salvatorecervone.wordpress.com

ASP 2.0 - VB 2008

ridaria Profilo | Expert

>Magari :D



a mio avviso allora non hai lcuna possibilità di fare una cosa del genere.


Ciao

Riccardo D'Aria

TOPOAMORE Profilo | Expert

OpenID???
__.__.__.__.__.__

http://salvatorecervone.wordpress.com

ASP 2.0 - VB 2008

ridaria Profilo | Expert

>OpenID???

cose è?




>__.__.__.__.__.__
>
>http://salvatorecervone.wordpress.com
>
>ASP 2.0 - VB 2008

Riccardo D'Aria

TOPOAMORE Profilo | Expert

http://openid.net/
__.__.__.__.__.__

http://salvatorecervone.wordpress.com

ASP 2.0 - VB 2008

ridaria Profilo | Expert

ho visto, ma dimmi cosa è?

:-)

Riccardo D'Aria

alx_81 Profilo | Guru

Guarda, io non intendevo la session.. sessione per me è un termine generico.
Ti serve un punto comune in cui scrivere questo codicillo legato all'utente (un db, un file, il cloud, quello che ti è più comodo).
In quel punto ti fai tu il tuo provider di SSO se non puoi fare altro.
Ti segni gli accessi alla login del primo applicativo e controlli gli accessi all'accesso al secondo.. Se non c'è un codicillo per quell'utente, picche.
Oppure, se puoi mettere un po' di mani da qualche parte, leggi qui:
http://www.codeproject.com/Articles/106439/Single-Sign-On-SSO-for-cross-domain-ASP-NET-applic
--
Alessandro Alpi | SQL Server MVP
MCP|MCITP|MCTS|MCT

http://www.alessandroalpi.net
http://blogs.dotnethell.it/suxstellino
http://mvp.microsoft.com/profiles/Alessandro.Alpi

TOPOAMORE Profilo | Expert

e infatti ....quell'articolo l'ho letto e mi e piaciuta come soluzione sempre da valutare insieme ai creatore dell'applicativo X.

Ma leggendo i commenti dicono che quella soluzione non ha una grandissima sicurezza.....
__.__.__.__.__.__

http://salvatorecervone.wordpress.com

ASP 2.0 - VB 2008

alx_81 Profilo | Guru

>e infatti ....quell'articolo l'ho letto e mi e piaciuta come
>soluzione sempre da valutare insieme ai creatore dell'applicativo X.
>Ma leggendo i commenti dicono che quella soluzione non ha una
>grandissima sicurezza.....
ok, ma contestualizza.. tu non puoi nemmeno mettere mano al db.. quindi per forza devi fare una cosa di "terze" parti.
Quindi già lì.. la security va a quel paese, a meno che non usi un servizio a pagamento che ti encrypta anche la comunicazione o che ti compri un ssl.
Quindi
--
Alessandro Alpi | SQL Server MVP
MCP|MCITP|MCTS|MCT

http://www.alessandroalpi.net
http://blogs.dotnethell.it/suxstellino
http://mvp.microsoft.com/profiles/Alessandro.Alpi

TOPOAMORE Profilo | Expert

In pratica non esiste un SSO tra due applicativi su server diversi che non stanno in dominio???

Implementare quella soluzione dell'articolo non sembra difficile.....

Bisogna centralizzare solamente le autenticazioni in un terzo sito che auterizzera entrambi gli applicativi......è da provare


__.__.__.__.__.__

http://salvatorecervone.wordpress.com

ASP 2.0 - VB 2008

alx_81 Profilo | Guru

>In pratica non esiste un SSO tra due applicativi su server diversi
>che non stanno in dominio???
non ho detto che non esistono, ho detto che serve una terza parte, qualunque essa sia
--
Alessandro Alpi | SQL Server MVP
MCP|MCITP|MCTS|MCT

http://www.alessandroalpi.net
http://blogs.dotnethell.it/suxstellino
http://mvp.microsoft.com/profiles/Alessandro.Alpi

TOPOAMORE Profilo | Expert

e allora mandami 3 4 link utili
__.__.__.__.__.__

http://salvatorecervone.wordpress.com

ASP 2.0 - VB 2008

alx_81 Profilo | Guru

>e allora mandami 3 4 link utili
Scusami ma il link di prima non ti è servito?
--
Alessandro Alpi | SQL Server MVP
MCP|MCITP|MCTS|MCT

http://www.alessandroalpi.net
http://blogs.dotnethell.it/suxstellino
http://mvp.microsoft.com/profiles/Alessandro.Alpi

TOPOAMORE Profilo | Expert

Intendevo tool gia utilizzabili di terzi
__.__.__.__.__.__

http://salvatorecervone.wordpress.com

ASP 2.0 - VB 2008

alx_81 Profilo | Guru

>Intendevo tool gia utilizzabili di terzi
su codeplex ho trovato questo, ma non l'ho mai usato: http://samlsso.codeplex.com/
credo che sia ready per asp.net e google.. forse qualcun altro lo supporta

questo riguarda sempre asp.net:
http://www.codeproject.com/Articles/27576/Single-Sign-on-in-ASP-NET-and-Other-Platforms

questo con WCF e asp.net:
http://aspguy.wordpress.com/2011/07/30/single-sign-on-with-wcf-and-asp-net-custom-membership-provider/

di più non so dirti sinceramente
--
Alessandro Alpi | SQL Server MVP
MCP|MCITP|MCTS|MCT

http://www.alessandroalpi.net
http://blogs.dotnethell.it/suxstellino
http://mvp.microsoft.com/profiles/Alessandro.Alpi
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2017
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5