검색 결과 :

×

ADFS를 IDP로 사용하는 ASP.NET Core SAML SSO(Single Sign-On)


ASP.NET Core SAML SSO(Single Sign-On) 미들웨어는 ASP.NET 핵심 애플리케이션에 대해 SAML Single Sign-On을 활성화하는 기능을 제공합니다. Single Sign-On을 사용하면 하나의 암호만 사용하여 ASP.NET 핵심 응용 프로그램 및 서비스에 액세스할 수 있습니다. 당사의 미들웨어는 모든 SAML 준수 ID 제공자와 호환됩니다. 여기서는 ADFS를 IdP로 간주하여 ASP.NET Core와 ADFS 간에 SSO(Single Sign-On)를 구성하는 단계별 가이드를 살펴보겠습니다. ASP.NET Core SSO에 제공되는 기능에 대해 자세히 알아보려면 다음을 클릭하세요. 여기에서 지금 확인해 보세요..

플랫폼 지원 : ASP.NET Core SAML 미들웨어는 ASP.NET Core 2.0 이상을 지원합니다. Windows, Linux 및 macOS를 포함한 모든 ASP.NET Core 플랫폼을 지원합니다.

전제조건: 다운로드 및 설치


PM> NuGet\Install-Package miniOrange.SAML.SSO
        
using Microsoft.AspNetCore.Authentication.Cookies; using miniOrange.saml; var builder = WebApplication.CreateBuilder(args); builder.Services.AddRazorPages(); // Add authentication services builder.Services.AddControllersWithViews(); builder.Services.AddAuthentication(options =>  { options.DefaultAuthenticateScheme = "SSO_OR_Admin"; options.DefaultScheme = "SSO_OR_Admin"; options.DefaultChallengeScheme = "SSO_OR_Admin";  }) .AddCookie("moAdmin", options =>  {  }) .AddCookie(CookieAuthenticationDefaults.AuthenticationScheme, options =>  { // Configure cookie options as needed for SSO Users }) .AddPolicyScheme("SSO_OR_Admin", "SSO_OR_Admin", options => { // runs on each request options.ForwardDefaultSelector = context => { // filter by auth type, here if the moAdmin cookie is coming in any request the Admin Authentication will work foreach (var cookie in context.Request.Cookies) { if (cookie.Key.Contains(".AspNetCore.Cookies")) { return CookieAuthenticationDefaults.AuthenticationScheme; } } // otherwise always check for cookie auth return "moAdmin"; }; }); var app = builder.Build(); if (!app.Environment.IsDevelopment())  {     app.UseExceptionHandler("/Error");     app.UseHsts();  } app.UseHttpsRedirection(); app.UseRouting(); app.UseAuthorization(); app.MapRazorPages(); app.UseCookiePolicy(); app.UseAuthentication(); app.UseStaticFiles(); app.UseminiOrangeSAMLSSOMiddleware(); app.Run();

ADFS를 IDP로 사용하여 ASP.NET Core SSO(Single Sign-On)를 구성하는 단계

1. ASP.NET Core 애플리케이션에 미들웨어 추가

  • 통합 후 브라우저를 열고 아래 URL을 사용하여 미들웨어 대시보드를 찾아보세요.
    https://<asp-net-middleware-base-url>/?ssoaction=config
  • 등록 페이지 또는 로그인 페이지가 나타나면 miniOrange ASP.NET SAML SSO 미들웨어를 애플리케이션에 성공적으로 추가한 것입니다.
  • ADFS를 IDP로 사용하는 ASP.NET Core SAML SSO(Single Sign-On) - saml dll 레지스터
  • 다음을 클릭하여 귀하의 계정으로 등록하거나 로그인하십시오. 회원가입 미들웨어를 구성하는 버튼입니다.

2. ADFS를 ID 공급자로 구성

  • 아래의 플러그인 설정 탭에서 ADFS 표시된 목록에서 ID 공급자로 지정하세요.
  • ADFS를 IDP로 사용하는 ASP.NET Core SAML SSO(Single Sign-On) - ADFS를 ID 공급자로 선택

ID 공급자 측에 구성할 SAML SP 메타데이터를 가져올 수 있는 두 가지 방법이 아래에 자세히 설명되어 있습니다.

A] SAML 메타데이터 URL 또는 메타데이터 파일 사용:
  • . 플러그인 설정 메뉴, 찾다 서비스 제공업체 설정. 그 아래에는 메타데이터 URL과 SAML 메타데이터를 다운로드하는 옵션이 있습니다.
  • 메타데이터 URL을 복사하거나 메타데이터 파일을 다운로드하여 ID 공급자 측에서도 동일하게 구성하세요.
  • 아래 스크린샷을 참고하시면 됩니다.
  • ADFS를 IDP로 사용하는 ASP.NET Core SAML SSO(Single Sign-On) - 다운로드한 메타데이터 복사
B] 메타데이터 수동 업로드:
  • 에서 서비스 제공업체 설정 섹션에서 다음과 같은 서비스 제공업체 메타데이터를 수동으로 복사할 수 있습니다. SP 엔티티 ID, ACS URL, 싱글 로그아웃 URL 구성을 위해 ID 공급자와 공유하세요.
  • 아래 스크린샷을 참고하시면 됩니다.
  • ADFS를 IDP로 사용하는 ASP.NET Core SAML SSO(Single Sign-On) - 수동 메타데이터
  • 먼저, 검색 ADFS 관리 ADFS 서버에 응용 프로그램을 설치하세요.
  • ADFS를 IDP로 사용하는 ASP.NET Core SAML SSO(Single Sign-On) - adfs 서버
  • AD FS 관리에서 다음을 선택합니다. 신뢰 당사자 트러스트 그리고 클릭 신뢰 당사자 트러스트 추가.
  • ADFS를 IDP로 사용하는 ASP.NET Core SAML SSO(Single Sign-On) - 신뢰 당사자 트러스트 추가
  • 선택 클레임 인식 신뢰 당사자 신뢰 마법사에서 다음을 클릭합니다. 스타트 버튼을 클릭합니다.
  • ADFS를 IDP로 사용하는 ASP.NET Core SAML SSO(Single Sign-On) - 클레임 인식
미니오렌지 img 데이터 소스 선택
  • 데이터 소스 선택에서 신뢰 당사자 트러스트를 추가하기 위한 데이터 소스를 선택합니다.

  • 로 이동 서비스 제공업체 메타데이터 ASP.NET Core SAML 미들웨어의 섹션을 복사하고 메타 데이터 URL.
  • 선택 온라인 또는 로컬 네트워크에 게시된 신뢰 당사자에 대한 데이터 가져오기 옵션을 선택하고 페더레이션 메타데이터 주소에 메타데이터 URL을 추가합니다.
  • 를 클릭하십시오 다음 보기.
  • ADFS를 IDP로 사용하는 ASP.NET Core SAML SSO(Single Sign-On) - SAML 2.0 마법사 메타데이터 지원

    참고 : 다음 단계에서 원하는 내용을 입력하세요. 표시 이름 클릭 다음 보기.

미니오렌지 img 액세스 제어 정책 선택
  • 선택 모두 허용 액세스 제어 정책으로 클릭하고 다음 보기.
  • ADFS를 IDP로 사용하는 ASP.NET Core SAML SSO(Single Sign-On) - SAML 2.0 마법사 다단계용
미니오렌지 img 신뢰를 더할 준비가 되었습니다
  • In 신뢰를 더할 준비가 되었습니다 클릭 다음 보기 그리고 닫기.
  • ADFS를 IDP로 사용하는 ASP.NET Core SAML SSO(Single Sign-On) - SAML 2.0 마법사 클레임 편집
미니오렌지 img 청구서 발행 정책 편집
  • 목록에서 신뢰 당사자 트러스트, 생성한 애플리케이션을 선택하고 다음을 클릭하세요. 클레임 발행 정책 수정.
  • ADFS를 IDP로 사용하는 ASP.NET Core SAML SSO(Single Sign-On) - SAML 2.0 마법사 클레임 편집
  • 발급 변환 규칙 탭에서 다음을 클릭합니다. 규칙 추가 버튼을 클릭합니다.
  • ADFS를 IDP로 사용하는 ASP.NET Core SAML SSO(Single Sign-On) - SAML 2.0 마법사 클레임 규칙용
미니오렌지 img 규칙 유형 선택
  • 선택 LDAP 속성을 클레임으로 보내기 그리고 클릭 다음 보기.
  • ADFS를 IDP로 사용하는 ASP.NET Core SAML SSO(Single Sign-On) - SAML 2.0의 경우 Configure_LDAP 특성
미니오렌지 img 클레임 규칙 구성
  • 추가 할 청구 규칙 이름 선택하고 속성 저장소 드롭다운에서 필요에 따라.
  • $XNUMX Million 미만 나가는 클레임 ​​유형에 대한 LDAP 속성 매핑, LDAP 속성을 다음으로 선택하세요. 이메일 주소 및 나가는 클레임 ​​유형 이름 아이디.
  • ADFS를 IDP로 사용하는 ASP.NET Core SAML SSO(Single Sign-On) - SAML 2.0 변환 클레임 규칙 추가용
  • 속성을 구성한 후 다음을 클릭하십시오. 마감재 .
  • ADFS를 IDP로 구성한 후에는 다음이 필요합니다. 페더레이션 메타데이터 서비스 공급자를 구성합니다.
  • ADFS 페더레이션 메타데이터를 얻으려면 이 URL을 사용할 수 있습니다.
    https://< ADFS_Server_Name >/federationmetadata/2007-06/federationmetadata.xml
  • ADFS SSO(Single Sign-On) 로그인을 달성하기 위해 ADFS를 SAML IdP(ID 공급자)로 성공적으로 구성했습니다.

Windows SSO(선택 사항)

Windows SSO를 구성하려면 아래 단계를 따르세요.

미니오렌지 img Windows 인증을 위해 ADFS를 구성하는 단계
  • ADFS 서버에서 관리자 권한 명령 프롬프트를 열고 다음 명령을 실행합니다.
    • 미니오렌지 img setspn -a HTTP/##ADFS 서버 FQDN## ##도메인 서비스 계정##

      미니오렌지 img FQDN은 정규화된 도메인 이름입니다(예: adfs4.example.com).

      미니오렌지 img 도메인 서비스 계정은 AD 계정의 사용자 이름입니다.

      미니오렌지 img 예: setspn -a HTTP/adfs.example.com 사용자 이름/도메인

  • AD FS 관리 콘솔을 열고 다음을 클릭하세요. 서비스 그리고로 가세요 인증 방법 부분. 오른쪽에서 기본 인증 방법 편집. 인트라넷 영역에서 Windows 인증을 확인하세요.
  • ADFS를 IDP로 사용하는 ASP.NET Core SAML SSO(Single Sign-On) - 기본 인증 ADFS를 IDP로 사용하는 ASP.NET Core SAML SSO(Single Sign-On) - 관리 애플리케이션
  • 인터넷 익스플로러를 엽니다. 인터넷 옵션의 보안 탭으로 이동합니다.
  • 로컬 인트라넷의 사이트 목록에 AD FS의 FQDN을 추가하고 브라우저를 다시 시작합니다.
  • 보안 영역에 대해 사용자 지정 수준을 선택합니다. 옵션 목록에서 인트라넷 영역에서만 자동 로그온을 선택합니다.
  • ADFS를 IDP로 사용하는 ASP.NET Core SAML SSO(Single Sign-On) - SAML 2.0 마법사의 경우_SAML 활성화
  • Powershell을 열고 다음 두 명령을 실행하여 Chrome 브라우저에서 Windows 인증을 활성화합니다.
    •   Set-AdfsProperties -WIASupportedUserAgents ((Get-ADFSProperties | Select -ExpandProperty WIASupportedUserAgents) + "Chrome")
        Get-AdfsProperties | Select -ExpandProperty WIASupportedUserAgents;
  • Windows 인증을 위해 ADFS를 성공적으로 구성했습니다.

3. ASP.NET SAML 미들웨어를 서비스 공급자로 구성

미들웨어에서 SAML ID 공급자 메타데이터를 구성할 수 있는 두 가지 방법이 아래에 자세히 설명되어 있습니다.

A] IDP 메타데이터 업로드 버튼을 사용하여 메타데이터를 업로드합니다.
  • ID 공급자가 메타데이터 URL 또는 메타데이터 파일(.xml 형식만 해당)을 제공한 경우 다음을 사용하여 미들웨어에서 ID 공급자 메타데이터를 간단히 구성할 수 있습니다. IDP 메타데이터 업로드 옵션을 선택합니다.
  • 아래 스크린샷을 참고하시면 됩니다.
  • ADFS를 IDP로 사용하는 ASP.NET Core SAML SSO(Single Sign-On) - 메타데이터 업로드
  • 사용 가능한 메타데이터 형식에 따라 옵션 중 하나를 선택할 수 있습니다.
B] ID 공급자 메타데이터를 수동으로 구성합니다.
  • 구성한 후 아이덴티티 공급자, 그것은 당신에게 다음을 제공할 것입니다 IDP 엔터티 ID, IDP 싱글 사인온 URLSAML X509 인증서 각각 필드.
  • 찜하기 IDP 세부 정보를 저장합니다.
  • ADFS를 IDP로 사용하는 ASP.NET Core SAML SSO(Single Sign-On) - SAML dll 구성

4. SAML SSO 테스트

  • 온 클릭 테스트 구성 버튼을 눌러 수행한 SAML 구성이 올바른지 테스트합니다.
  • 아래 스크린샷은 성공적인 결과를 보여줍니다. 클릭 SSO 통합 SSO 통합을 계속 진행합니다.
  • ADFS를 IDP로 사용하는 ASP.NET Core SAML SSO(Single Sign-On) - SAML dll 테스트 구성
  • 미들웨어 측에서 오류가 발생하는 경우 아래와 유사한 창이 표시됩니다.
  • ADFS를 IDP로 사용하는 ASP.NET Core SAML SSO(Single Sign-On) - 디버그 로그 활성화
  • 오류를 해결하려면 다음 단계를 따르세요.
    • $XNUMX Million 미만 문제 해결 탭에서 토글을 활성화하여 플러그인 로그를 수신하세요.
    • ADFS를 IDP로 사용하는 ASP.NET Core SAML SSO(Single Sign-On) - 디버그 로그 활성화
    • 활성화되면 다음으로 이동하여 플러그인 로그를 검색할 수 있습니다. 플러그인 설정 탭을 클릭하고 테스트 구성.
    • 를 다운로드 로그 파일 인사말 문제 해결 탭을 클릭하여 무엇이 잘못되었는지 확인하세요.
    • 당신은 공유할 수 있습니다 로그 파일 우리와 함께 aspnetsupport@xecurify.com 문제를 해결하기 위해 저희 팀에서 연락을 드릴 것입니다.

5. 속성 매핑

  • 구성을 테스트한 후 애플리케이션 속성을 ID 공급자(IdP) 속성과 매핑합니다.
  • 참고 : 매핑된 모든 속성은 세션에 저장되므로 애플리케이션에서 해당 속성에 액세스할 수 있습니다.
  • ADFS를 IDP로 사용하는 ASP.NET Core SAML SSO(Single Sign-On) - 특성 매핑

6. 통합 코드

  • 이 단계를 통해 애플리케이션에서 사용자 클레임 형식으로 SSO 사용자 정보를 검색할 수 있습니다.
  • 당신은 또한 볼 수 있습니다 설정 둘러보기 asp.net 미들웨어 애플리케이션에서 SSO 통합이 어떻게 작동하는지 이해합니다.
  • 사용자 속성에 액세스하려는 위치에 해당 코드 조각을 복사하여 붙여넣기만 하면 됩니다.
  • ASP.NET Core SAML SSO(Single Sign-On) | ASP.NET 핵심 인증 | ASP.NET Core SAML SSO - 통합 코드
  • 참고 :이 평가판 미들웨어는 클레임의 사용자 정보만 지원하며 세션 및 헤더의 사용자 정보 검색은 프리미엄 플러그인에서 사용할 수 있습니다.
  • 아래에서 통합 코드를 복사할 수도 있습니다.
  •           
      string name="";   string claimtype="";   string claimvalue="";    if(User.Identity.IsAuthenticated)    {      foreach( var claim in User.Claims)      {        claimtype = claim.Type;        claimvalue = claim.Value;      }      //retrive custom attributes(for eg. Retrieve Mapped 'mobileNumber' attribute of your IDP)      var identity = (ClaimsIdentity)User.Identity;      IEnumerable claims = identity.Claims;      string mobileNumber = identity.FindFirst("mobileNumber")?.Value;    }
  • 참고 : 매핑된 모든 특성은 애플리케이션에서 액세스할 수 있는 클레임에 저장됩니다.
  • 통합 코드와 관련하여 도움이 필요한 경우 다음 주소로 문의해 주세요. aspnetsupport@xecurify.com

7. 로그인 설정

  • 마우스를 올리면 작업 선택 그리고 클릭 SSO 링크 복사. ADFS를 IDP로 사용하는 ASP.NET Core SAML SSO(Single Sign-On) - SSO 링크 복사
  • SSO를 수행하려는 애플리케이션의 링크로 다음 URL을 사용하십시오.
    https://asp-net-middleware-base-url/?ssoaction=login
  • 예를 들어 다음과 같이 사용할 수 있습니다.
    <a href=”https://asp-net-middleware-base-url/?ssoaction=login”>Log in</a>

8. 로그아웃 설정

  • SLO를 수행하려는 애플리케이션에 대한 링크로 다음 URL을 사용하십시오.
    https://asp-net-middleware-base-url/?ssoaction=logout
  • 예를 들어 다음과 같이 사용할 수 있습니다.
    <a href=”https://asp-net-middleware-base-url/?ssoaction=logout”>Log out</a>

다음과 같은 ID 공급자를 사용하여 ASP.NET Core SAML 2.0 SSO(Single Sign-On) 미들웨어를 구성할 수 있습니다. ADFS, Azure AD, Bitium, centrify, G Suite, JBoss Keycloak, Okta, OneLogin, Salesforce, AWS Cognito, OpenAM, Oracle, PingFederate, PingOne, RSA SecureID, Shibboleth-2, Shibboleth-3, SimpleSAML, WSO2 아니면 당신 자신의 것과도 맞춤형 ID 공급자. ID 공급자 목록을 확인하세요. 여기에서 지금 확인해 보세요..

추가 자료


도움이 필요하신가요?

귀하의 ID 공급자를 찾을 수 없습니까? 우리에게 메일을 보내세요 aspnetsupport@xecurify.com 귀하의 IDP로 SSO를 설정하고 귀하의 요구 사항에 대한 빠른 안내(이메일/회의를 통해)를 도와드릴 것이며, 저희 팀은 귀하의 요구 사항에 따라 가장 적합한 솔루션/계획을 선택할 수 있도록 도와드릴 것입니다.

안녕하세요!

도움이 필요하다? 우리는 바로 여기에 있습니다!

SUPPORT
miniOrange 지원팀에 문의하세요
성공

문의 해 주셔서 감사합니다.

24시간 이내에 연락을 받지 못한 경우 언제든지 다음 이메일로 후속 이메일을 보내주세요. info@xecurify.com