C # ASP.NET Single Sign-On 구현
저는 다음 릴리스의 일부로 고객을위한 싱글 사인온을 구현하는 임무를 맡고 있습니다. 흐름은 다음과 같이 존재합니다.
- 사용자는 학교에서 제공 한 학생 ID / 비밀번호를 사용하여 학교의 주요 포털 시스템에 로그인합니다.
- 사용자가 회사 제품 링크를 클릭합니다.
- 사용자는 당사 사이트의 로그인 양식을 통해 방금 로그인 한 것처럼 자동으로 대시 보드 페이지로 이동합니다.
따라서 사용자가 당사 사이트에 인증 될 수있는 두 가지 메커니즘이 있습니다.
- 제품의 홈페이지로 이동하여 로컬 시스템에 저장 한 이메일 / 비밀번호를 사용하여 로그인합니다.
- 학생이 이미 학생 ID와 비밀번호로 학교의 기본 시스템에 로그인 한 싱글 사인온을 사용합니다.
우리 제품의 구현이 ASP.NET (Java / Ruby와 반대) 인 경우 CAS, JOSSO 또는 기타 타사 단일 사인온 제품을 사용해야합니까? 아니면 .NET 회사로서 우리에게 더 간단한 .NET 환경에서 사용할 수있는 것이 있습니까?
.NET 애플리케이션에 대한 SSO를 구현하는 여러 옵션이 있습니다.
온라인에서 다음 튜토리얼을 확인하십시오.
Single Sign On의 기본 사항 , 2012 년 7 월
http://www.codeproject.com/Articles/429166/Basics-of-Single-Sign-on-SSO
GaryMcAllisterOnline : ASP.NET MVC 4, ADFS 2.0 및 타사 STS 통합 (IdentityServer2) , 2013 년 1 월
http://garymcallisteronline.blogspot.com/2013/01/aspnet-mvc-4-adfs-20-and-3rd-party-sts.html
첫 번째는 ASP.NET Web Forms를 사용하고 두 번째는 ASP.NET MVC4를 사용합니다.
요구 사항에 따라 타사 솔루션을 사용할 수있는 경우 OpenID도 고려하십시오. DotNetOpenAuth 라는 오픈 소스 라이브러리가 있습니다 .
자세한 내용은 MSDN 블로그 게시물 Integrate OpenAuth / OpenID with your existing ASP.NET application using Universal Providers를 참조하십시오 .
도움이 되었기를 바랍니다!
파티에 늦었지만 옵션 # 1의 경우 IdentityServer3 (.NET 4.6 이하) 또는 IdentityServer4 ( Core 와 호환 가능 )를 사용합니다.
앱에서 기존 사용자 저장소를 재사용하고이를 IdentityServer의 사용자 저장소로 연결할 수 있습니다. 그런 다음 클라이언트는 개방형 ID 공급자로 IdentityServer를 가리켜 야합니다.
SSO 지원을 즉시 사용할 수있는 여러 ID 공급자와 타사 ** 제품이 있습니다.
** 타사 제품의 유일한 문제점은 사용자 / 월당 요금이 부과되며 비용이 상당히 많이들 수 있다는 것입니다.
.NET 용 API와 함께 사용할 수있는 도구 중 일부는 다음과 같습니다.
자체 구현을 사용하기로 결정한 경우 프로그래밍 언어별로 분류 된 아래 프레임 워크를 사용할 수 있습니다.
씨#
- IdentityServer3 (OAuth / OpenID 프로토콜, OWIN / Katana )
- IdentityServer4 (OAuth / OpenID 프로토콜, ASP.NET Core )
- Okta의 OAuth 2.0
자바 스크립트
- passport-openidconnect (node.js)
- oidc-provider (node.js)
- openid-client (node.js)
파이썬
- pyoidc
- Django OIDC 공급자
I would go with IdentityServer4 and ASP.NET Core application, it's easy configurable and you can also add your own authentication provider. It uses OAuth/OpenID protocols which are newer than SAML 2.0 and WS-Federation.
UltimateSAML SSO is an OASIS SAML v1.x and v2.0 specifications compliant .NET toolkit. It offers an elegant and easy way to add support for Single Sign-On and Single-Logout SAML to your ASP.NET, ASP.NET MVC, ASP.NET Core, Desktop, and Service applications. The lightweight library helps you provide SSO access to cloud and intranet websites using a single credentials entry.
Detailed UltimateSAML SSO review can be found here
참고URL : https://stackoverflow.com/questions/14309090/c-sharp-asp-net-single-sign-on-implementation
'program story' 카테고리의 다른 글
| RNGCryptoServiceProvider의 장단점 (0) | 2020.11.12 |
|---|---|
| C # 템플릿 엔진 (0) | 2020.11.12 |
| SQL Server : 일괄 처리 문 (즉, "GO"사용)이 좋은 이유는 무엇입니까? (0) | 2020.11.12 |
| 채널의 요소 수 (0) | 2020.11.11 |
| 정적 const와 const의 차이점은 무엇입니까? (0) | 2020.11.11 |