ADFS를 사용하여 Joomla에 대한 SAML Single Sign-On
회사 개요
miniOrange Joomla SAML SP SSO 플러그인은 SAML 2.0 프로토콜을 사용하여 Joomla 사이트를 ADFS에 통합하는 데 도움이 됩니다. 사용자 친화적인 플러그인은 Joomla에서 ADFS(Active Directory Federation Services)로 Single Sign-on(SSO)을 설정하는 프로세스를 간소화하여 안전한 로그인 환경을 보장합니다. 이를 통해 사용자는 ADFS IDP 자격 증명을 사용하여 다양한 Joomla 사이트에 손쉽게 액세스할 수 있습니다.
우리 플러그인은 Joomla 3, 4 및 5와 호환되도록 설계되었으며 모든 SAML 2.0 호환 ID 공급자와 원활하게 작동합니다. Joomla SAML SP 플러그인이 제공하는 포괄적인 기능에 대한 자세한 개요를 보려면 당사 페이지를 방문하십시오. 여기에서 확인하세요. 아래에서는 ADFS가 ID 공급자(IDP) 역할을 하고 Joomla가 서비스 공급자(SP) 역할을 하는 방식으로 Joomla 사이트와 ADFS 간에 SAML SSO 로그인을 구성하는 방법에 대한 단계별 가이드를 제공합니다.
ADFS와 Joomla 간에 Single Sign-On을 설정하려면 다음 단계를 따르세요. 비디오 설정.
구성 단계
이 설정에서는 ADFS 사용자를 저장하는 저장소 역할을 합니다. 즉 IDP 역할을 합니다. 줌라 사용자가 ADFS에서 자격 증명을 사용하여 로그인하는 곳입니다. Joomla SAML SP SSO 플러그인 설치 될 것이다.
1단계: Joomla SAML SP 플러그인 설치
- Joomla 사이트에 로그인하세요. 관리자 콘솔.
- 왼쪽 토글 메뉴에서 시스템을 클릭한 다음 설치 섹션에서 다음을 클릭하세요. 확장.
- 이제 클릭하십시오. 또는 파일 찾아보기 버튼을 눌러 앞서 다운로드한 플러그인 파일을 찾아서 설치하세요.
- 플러그인 설치가 성공했습니다. 이제 다음을 클릭하세요. 시작!
- 로 이동 서비스 제공업체 메타데이터 탭에서 다음을 찾을 수 있습니다. 메타 데이터 URL, 다운로드 메타데이터 XML 파일또는 복사할 수 있습니다 엔티티 ID ACS URL 직접.
2단계: ADFS를 IDP(ID 공급자)로 구성
- ADFS에서 다음을 검색합니다. ADFS 관리 응용 프로그램.
- ADFS 관리 앱을 연 후 다음을 선택하세요. 신뢰 당사자 트러스트 그리고 다음을 클릭하세요 신뢰하는 당사자 신뢰 추가.
- 클릭 스타트 Relying Party Trust Wizard 팝업에서 버튼을 클릭합니다. 하지만 그 전에 다음 사항을 확인하세요. 클레임 인식 선택됩니다.
- 신뢰 당사자 트러스트를 추가하기 위한 옵션을 선택합니다.
- 데이터 소스 선택에서: 온라인 또는 로컬 네트워크에 게시된 신뢰 당사자에 대한 데이터 가져오기 옵션을 선택한 다음, 페더레이션 메타데이터 주소에 URL을 추가합니다(플러그인에서 서비스 공급자 메타데이터 탭으로 이동하여 SP Meatadata URL을 가져옵니다).
- 메타데이터 URL이 있는 경우 아래 단계를 건너뛰고 mentadata 파일을 가져와서 수동으로 데이터를 입력한 다음 구성을 시작할 수 있습니다. 이 단계.
- 데이터 소스 선택에서: 파일에서 신뢰 당사자에 대한 데이터 가져오기 옵션 & 메타데이터 파일을 탐색합니다(플러그인에서 SP 메타데이터 파일을 다운로드할 수 있습니다. 서비스 제공자 메타데이터 탭).
- 데이터 소스 선택에서: 신뢰 당사자에 대한 데이터를 입력하세요 수동으로 & 클릭 다음.
- 표시 이름 입력 및 클릭 다음.
- 인증서를 업로드하고 클릭하세요. 다음플러그인에서 인증서를 다운로드하고 동일한 인증서를 사용하여 ADFS에 업로드합니다.
- 선택 SAML 2.0 WebSSO 프로토콜 지원 활성화 & 플러그인에서 ACS URL 입력 서비스 제공자 메타데이터 탭. 딸깍 하는 소리 다음.
메타데이터 URL 사용:
메타데이터 XML 파일 사용:
수동 구성 사용:
- 추가 엔티티 ID 플러그인에서 서비스 제공업체 메타데이터 신뢰 당사자 신뢰 식별자로 탭을 클릭한 다음 추가 버튼을 누른 후 클릭하세요 다음.
- 또한 다음에서 서명 인증서를 다운로드하세요. 서비스 제공업체 메타데이터 플러그인에서 탭하세요.
- 선택 모두 허용 액세스 제어 정책으로 클릭하고 다음.
- 클릭 다음 Ready to Add Trust에서 버튼을 클릭하고 클릭하세요. 닫기.
- 신뢰 당사자 신탁 목록이 표시됩니다. 해당 응용프로그램을 선택하고 클릭하세요. 클레임 발행 정책 편집.
- 를 클릭하십시오 규칙 추가 버튼을 클릭합니다.
- 선택 LDAP 속성을 클레임으로 보내기 & 클릭 다음.
- 다음 세부정보를 입력하고 클릭하세요. 마감재 .
| 클레임 규칙 이름 | Attributes |
| 속성 저장소 | Active Directory의 |
| LDAP 속성 | 이메일 주소 |
| 나가는 청구 유형 | 이름 아이디 |
- 신청 그리고 Ok.
- 애플리케이션의 속성을 선택하고 애드온에서 다운로드한 인증서를 추가하세요.
- 다음 URL을 사용하여 ADFS 메타데이터를 다운로드할 수 있습니다. 이 메타데이터 URL을 서비스 공급자 설정 탭에서 사용할 수 있습니다.
{ }
Windows SSO(선택 사항)
- Windows 인증을 위해 ADFS를 구성하는 단계:
- ADFS 서버에서 관리자 권한 명령 프롬프트를 열고 다음 명령을 실행합니다.
- setspn -a HTTP/##ADFS 서버 FQDN## ##도메인 서비스 계정##
- FQDN은 정규화된 도메인 이름입니다(예: adfs4.example.com).
- 도메인 서비스 계정은 AD 계정의 사용자 이름입니다.
- 예: setspn -a HTTP/adfs.example.com 사용자 이름/도메인
- AD FS 관리 콘솔을 열고 인증 정책 섹션으로 이동하여 글로벌 인증 정책을 편집합니다. 인트라넷 영역에서 Windows 인증을 확인합니다.
- 인터넷 익스플로러를 엽니다. 인터넷 옵션의 보안 탭으로 이동합니다.
- 로컬 인트라넷의 사이트 목록에 AD FS의 FQDN을 추가하고 브라우저를 다시 시작합니다.
- 보안 영역에 대해 사용자 지정 수준을 선택합니다. 옵션 목록에서 인트라넷 영역에서만 자동 로그온을 선택합니다.
- Powershell을 열고 다음 두 명령을 실행하여 Chrome 브라우저에서 Windows 인증을 활성화합니다.
Set-AdfsProperties -WIASupportedUserAgents((Get-ADFSProperties | Select -ExpandProperty WIASupportedUserAgents) + "Chrome")
Get-AdfsProperties | -ExpandProperty WIASupportedUserAgents를 선택하세요.
3단계: Joomla를 SP(서비스 공급자)로 구성
Joomla SAML 플러그인에서 서비스 공급자 설정 탭으로 이동한 다음 클릭하세요. 새 IDP 추가IDP를 구성하는 방법은 3가지가 있습니다.
A. IDP 메타데이터를 업로드하면 다음과 같습니다.
- Joomla SAML 플러그인에서 다음으로 이동하세요. 서비스 제공업체 설정 탭을 클릭하고 여기를 클릭하세요 파일 선택 메타데이터 파일을 선택하려면 버튼을 클릭한 다음 가이드라가 버튼을 클릭합니다.
B. 메타데이터 URL별:
- 엔터 버튼 메타 데이터 URL (IDP 앱에서 복사)를 클릭하세요. 메타데이터 가져오기 버튼을 클릭합니다.
C. 수동 구성:
- 부 SAML 엔터티 ID, SAML Single-Sign-On 끝점 URL 및 X.509 인증서 연방 메타데이터 문서에서 복사하여 붙여넣습니다. IDP 엔터티 ID, Single Sign-On URL, X.509 인증서 플러그인의 각 필드.
| IdP 엔터티 ID | 페더레이션 메타데이터 문서의 SAML 엔터티 ID |
| 싱글 사인온(SSO) URL | 페더레이션 메타데이터 문서의 SAML Single-Sign-On 끝점 URL |
| X.509 인증서 값 | 페더레이션 메타데이터 문서의 X.509 인증서 |
4단계: 테스트 구성
- 찜하기 설정을 저장합니다. 저장되면 구성된 IDP가 표시됩니다. 국내 실향민 목록여기서 복사할 수 있습니다. SSO URL 또는 구성된 IDP를 편집하거나 필요에 따라 삭제하여 설정을 관리할 수 있습니다.
- 마지막으로, 설정을 테스트하려면 클릭하세요. Test 버튼을 클릭하세요. 테스트가 성공적으로 완료되면 IDP에서 수신한 속성이 창에 표시되어 설정이 올바르게 작동하는지 확인할 수 있습니다.
5단계: 속성 매핑 - 프리미엄 기능
- 속성은 아이덴티티 공급자에 저장되는 사용자 세부 정보입니다.
- 속성 매핑을 사용하면 ID 공급자(IDP)로부터 사용자 속성을 가져와 이름, 성, 주소, 전화번호 등과 같은 Joomla 사용자 속성에 매핑할 수 있습니다.
- Joomla 사이트에 사용자를 자동 등록하는 동안 이러한 속성은 자동으로 Joomla 사용자 세부 정보에 매핑됩니다.
- 매핑 탭으로 이동하여 모든 필드를 채우십시오. 속성 매핑 안내
| 사용자 이름: | IdP의 사용자 이름 속성 이름(기본적으로 NameID 유지) |
| 이메일 : | IdP의 이메일 속성 이름(기본적으로 NameID 유지) |
| 이름: | IdP의 이름 속성 이름 |
- 서비스 공급자 설정 탭에서 테스트 구성 결과를 확인하면 여기에 매핑해야 할 값을 더 잘 파악할 수 있습니다.
참고: 속성 매핑이 작동하는 방식을 확인할 수 있습니다. 여기에서 확인하세요.
6단계: 그룹 매핑 - 프리미엄 기능
- 그룹/역할 매핑을 사용하면 IdP(ID 공급자)의 특정 그룹 사용자에게 특정 역할을 할당할 수 있습니다.
- 자동 등록하는 동안 사용자는 매핑된 그룹에 따라 역할이 할당됩니다.
참고: 그룹/역할 매핑이 작동하는 방식을 확인할 수 있습니다. 여기에서 확인하세요.
7단계: 리디렉션 및 SSO 링크
- 로그인 설정 탭으로 이동합니다. 아래 단계에 따라 Joomla 사이트에서 SAML SSO를 수행하기 위한 로그인 URL을 추가할 수 있습니다.
- 이 탭에서는 사용자를 ID 공급자로 자동 리디렉션하고 슈퍼 사용자를 위한 백엔드 로그인을 활성화하는 등 여러 가지 기능을 사용할 수 있습니다. 이러한 기능을 사용하려면 해당 확인란을 클릭합니다.
- 업그레이드 탭을 클릭하여 전체 기능 목록과 다양한 라이선싱 플랜을 확인하세요. 또는 여기를 클릭하여 기능과 라이선싱 플랜을 확인할 수 있습니다.
- 문제가 있거나 질문이 있는 경우 플러그인의 지원 버튼을 통해 문의 사항을 보내거나 다음 주소로 메일을 보내 문의하실 수 있습니다. joomlasupport@xecurify.com.
자주 묻는 질문
더 많은 FAQ ➔테스트 구성은 성공적이었지만 로그인을 시도하면 리디렉트 루프에 갇혔습니다.
이런 일이 발생할 수 있는 몇 가지 이유는 다음과 같습니다.
1. 웹사이트에서 캐싱이 활성화되어 있습니다.
자동 리디렉션이 활성화된 경우, 사용자는 IDP 로그인 페이지로 리디렉션되고 로그인한 후 다시 메인 사이트로 돌아갑니다. 하지만 캐싱이 활성화되어 있기 때문에 IDP 로그인 페이지로 리디렉션되어 루프가 발생합니다.
2. HTTP/HTTPS 불일치:
이는 HTTPS가 사이트에 적용되지 않지만 HTTPS URL로 IDP 측에 구성된 경우 발생합니다. 이는 .htaccess 파일이나 Apache 수준에서 리디렉션 규칙을 정의하여 사이트에 HTTPS를 적용하면 해결할 수 있습니다.
3. 쿠키 변조:
사용자가 로그인한 후 플러그인에 의해 생성된 쿠키가 다른 플러그인에 의해 변경되어 사용자가 Joomla 사이트에 로그인하지 않지만 IDP에 세션이 생성됩니다.
테스트 구성을 클릭하면 IDP 대신 Joomla 사이트로 리디렉션되는 이유는 무엇인가요?
Joomla SAML 플러그인에서 플러그인을 설치한 후 확장 기능이 활성화되지 않은 경우 '테스트 구성'을 클릭하면 IDP로 리디렉션되는 대신 자신의 사이트로 이동합니다. 이를 해결하려면 플러그인을 설치한 후 모든 확장 기능을 활성화해야 합니다.
이 문제를 해결하려면 아래 단계를 따르세요.
1. Joomla 관리자 인터페이스에서 확장 프로그램 -> 관리 -> 관리로 이동합니다.
2. '미니오렌지'를 검색하세요.
3. 플러그인의 모든 확장 기능을 활성화합니다.
ID 공급자에 로그인했더니 Joomla 사이트로 리디렉션되는데 로그인하지 않았어요?
자주 발생할 수 있는 오류는 다음과 같습니다.
INVALID_ISSUER: 이는 ID 공급자가 제공한 올바른 발급자 또는 엔터티 ID 값을 입력하지 않았다는 것을 의미합니다. 오류 메시지에서 예상 값(구성한 값)과 SAML 응답에서 실제로 발견된 값을 확인할 수 있습니다.
INVALID_AUDIENCE: 이는 ID 공급자에서 Audience URL을 올바르게 구성하지 않았다는 것을 의미합니다. ID 공급자에서 https://base-url-of-your-joomla-site/plugins/authentication/miniorangesaml/로 설정해야 합니다.
INVALID_DESTINATION: 이는 ID 공급자에서 대상 URL을 올바르게 구성하지 않았음을 의미합니다. ID 공급자에서 https://base-url-of-your-joomla-site/plugins/authentication/miniorangesaml/saml2/acs.php로 설정해야 합니다.
INVALID_SIGNATURE: 제공한 인증서가 SAML 응답에서 찾은 인증서와 일치하지 않는다는 의미입니다. IdP에서 다운로드한 것과 동일한 인증서를 제공해야 합니다. IdP의 메타데이터 XML 파일이 있는 경우 use='signing' 속성을 가진 X509 인증서 태그에 포함된 인증서를 제공해야 합니다.
INVALID_CERTIFICATE: 제공한 인증서가 적절한 형식이 아님을 의미합니다. IdP에서 제공한 전체 인증서를 복사했는지 확인하세요. IdP의 메타데이터 XML 파일에서 복사한 경우 전체 값을 복사했는지 확인하세요.
구성된 지문과 일치하는 인증서를 찾을 수 없습니다.
이는 SAML 응답으로 들어오는 인증서가 플러그인에서 구성된 인증서와 일치하지 않는 경우에만 가능합니다. 테스트 구성 창에 표시된 인증서 값을 복사하여 플러그인의 서비스 공급자 탭에 있는 X.509 인증서 필드에 붙여넣습니다.
Joomla SAML에서 구성을 내보내는 방법은 무엇입니까?
다음 단계에 따라 구성을 내보내세요.
1) miniOrange SAML SP 플러그인으로 가서 서비스 공급자 설정 탭으로 이동합니다.
2) 그런 다음 페이지 하단에 있는 가져오기/내보내기 버튼을 클릭한 다음 구성 내보내기 버튼을 클릭합니다.
3) 시스템 >> 관리로 이동하여 검색창에서 miniOrange를 검색합니다. 그런 다음 모든 miniOrange 확장 프로그램을 제거합니다.
구성을 가져오려면 다음 단계를 따르세요.
1) 최신 플러그인을 설치하고 플러그인에 miniOrange 자격 증명을 사용하여 로그인합니다.
2) 서비스 공급자 설정 탭으로 이동하여 가져오기/내보내기 버튼을 클릭합니다.
3) 다운로드한 구성 파일을 업로드한 후 구성 가져오기 버튼을 클릭합니다.
Joomla SAML 플러그인을 업데이트하는 동안 테이블 누락 오류가 발생하는 이유는 무엇입니까?
Joomla SAML 플러그인을 업데이트하는 동안 테이블이나 열이 데이터베이스에 추가되지 않으면 누락된 테이블 오류가 발생합니다. 이 문제는 일반적으로 플러그인을 업데이트하는 동안 테이블이나 열이 데이터베이스에 추가되지 않을 때 발생합니다.
이 문제를 해결하려면 플러그인을 다시 설치하세요. 아래 단계를 따르세요.
기존 플러그인을 제거합니다(플러그인을 제거하기 전에 기존 플러그인을 백업하세요)
– 확장 프로그램 -> 관리 -> 관리로 이동
– miniOrange 검색
– 모든 확장 프로그램을 선택하고 '제거'를 클릭합니다.
이제 플러그인을 다시 설치하고 구성하세요.
치명적인 오류: 이름이 이미 사용 중이므로 클래스를 선언할 수 없습니다.를 해결하려면 어떻게 해야 하나요?
Joomla 사이트는 관련 SP 또는 IDP 플러그인을 사용하여 서비스 공급자 또는 ID 공급자로 사용할 수 있습니다. 이 오류는 아마도 두 플러그인을 같은 사이트에 설치했기 때문일 것입니다.
이 문제를 해결하려면 아래 언급된 단계를 따르세요. Joomla 디렉토리에서 다음 폴더를 삭제하세요.
1. /libraries/miniorangejoomlaidpplugin
2. /libraries/miniorangesamlplugin
3. /플러그인/시스템/saml리디렉션
이제 Joomla 사이트에 로그인할 수 있습니다.
나머지 확장자를 제거하세요:
1. Joomla 사이트 관리자 콘솔에서 확장 프로그램 -> 관리 -> 관리로 이동합니다.
2. '미니오렌지' 검색
3. 모든 확장 프로그램을 선택하고 제거를 클릭합니다.
SSO가 작동하지 않나요? SAML SP 플러그인과 함께 Admin Tools를 사용하고 계신가요?
리디렉션 문제는 Joomla SAML SSO용 관리 도구 플러그인을 사용하는 동안 발생합니다. 관리 도구 플러그인은 .htaccess 파일을 변경하고 사이트에서 리디렉션되는 것을 방지하는 특정 규칙을 추가합니다.
위의 문제는 아래 단계에 따라 해결할 수 있습니다.
1. 관리 도구 >> 제어판으로 이동한 다음 .htaccess maker 옵션을 클릭합니다.
2. 그런 다음 '일반적인 파일 삽입 공격으로부터 보호' 옵션을 비활성화합니다.
그런 다음 사이트 캐시를 지우고 Single Sign-On을 테스트합니다.
SAML 추적 로그를 사용하여 SAML 요청/응답을 확인하거나 다운로드하는 방법은 무엇입니까?
로그인하는 동안 "로그인할 수 없습니다. 관리자에게 문의하세요"라는 오류가 표시됩니다.
귀하의 ID 공급자가 SAML 응답에서 오류를 보내는 것 같습니다. 이 문제를 해결하려면 SAML SP 플러그인의 서비스 공급자 설정 탭으로 이동하세요. 테스트 구성을 클릭하고 구성 결과 창을 검토하세요. 속성 매핑이 올바르게 수행되었는지 확인하고 X.509 인증서 값이 정확한지 확인하세요.
