C# ASP.NET aplicação com sinal único
-
O utilizador entra no principal sistema de portais da sua escola utilizando uma identificação/senha de estudante que lhe foi dada pela escola.
O utilizador clica a ligação ao produto da minha empresa.
- O Utilizador é automaticamente levado para a página do painel como se tivesse acabado de entrar no nosso site através do formulário de autenticação.
- chegando à página inicial do nosso produto, e fazendo login usando o email/senha que armazenamos no nosso sistema local. Usando o sinal único onde o aluno já entrou no sistema principal da escola com uma identificação de estudante e uma senha.
Se a implementação do nosso produto está em ASP.NET (ao contrário de Java / Ruby), devemos estar usando CAS, JOSSO, ou algum outro terceiro produto single sign-on? Ou há algo disponível para um ambiente. NET que seria mais simples para nós como uma empresa. Net?
4 answers
Existem várias opções para implementar SSO para uma aplicação.Net.
Confira os seguintes tutoriais online:
Bases do sinal único em, Julho 2012
Http://www.codeproject.com/Articles/429166/Basics-of-Single-Sign-on-SSO
GaryMcAllisterOnline: ASP.NET MVC 4, ADFS 2.0 e integração STS de terceiros (IdentityServer2), Jan 2013
Http://garymcallisteronline.blogspot.com/2013/01/aspnet-mvc-4-adfs-20-and-3rd-party-sts.html
O primeiro usa ASP.NET formulários Web, enquanto o segundo usa ASP.NET MVC4.
Se as suas necessidades lhe permitirem utilizar uma solução de terceiros, considere também o OpenID. Há uma biblioteca de código aberto chamada DotNetOpenAuth.
Para mais informações, leia o post do MSDN blog integre OpenAuth/OpenID com o seu já existente ASP.NET aplicação que utiliza fornecedores universais.
Espero que isto ajude!Pode reutilizar a sua loja de utilizadores existente na sua aplicação e ligá-la à loja de utilizadores do IdentityServer. Em seguida, os clientes devem ser apontados para o seu IdentityServer como o provedor de id aberto.
Existem vários fornecedores de identidade com suporte SSO fora da caixa, também produtos de terceiros**.
** o único problema com produtos de terceiros é que eles cobram por usuário/mês, e pode ser bastante caro.
Algumas das ferramentas disponíveis e com APIs para a. NET são:
- IdentityExpress (com administrador UI) por IdentityServer
- Centrify Identity Service
- identidade Okta (SAML 2.0)
- Onelogina
Se você decidir ir com sua própria implementação, você poderia usar os frameworks abaixo categorizados por linguagem de programação.
-
C#
- IdentityServer3 (protocolos OAuth/OpenID, OWIN / Katana)
- IdentityServer4 (protocolos OAuth/OpenID, ASP.NET principal)
- OAuth 2, 0 por Okta
-
Javascript
- passaporte-openidconnect (no.js)
- OIDC-provider (node.js)
- openid-client (node.js)
-
Python
- pyoidc
- Django OIDC Provider
Eu diria IdentityServer4 e ASP.NET Aplicação principal, é fácil de configurar e você também pode adicionar o seu próprio provedor de autenticação. Ele usa protocolos OAuth / OpenID que são mais recentes do que SAML 2.0 e WS-Federation.
UltimateSAML SSO é um oasis SAML v1.X e v2. 0 specifications compliant. net toolkit. Ele oferece uma maneira elegante e fácil de adicionar suporte para um único sinal-On e único-Logout SAML para o seu ASP.NET, ASP.NET MVC, ASP.NET aplicações Core, Desktop e serviço. A biblioteca lightweight ajuda você a fornecer acesso SSO a sites da cloud e intranet usando uma única entrada de credenciais.