검색 결과 :

×

SimpleSAMLphp를 ID 공급자로 사용하는 Drupal SAML Single Sign On

Drupal SAML 통합은 다음을 사용합니다. miniOrange SAML SP 모듈 SimpleSAMLphp와 Drupal 사이트 간에 원활한 SSO를 설정합니다. 사용자는 SimpleSAMLphp 자격 증명을 사용하여 Drupal 사이트에 로그인할 수 있습니다. 이 문서에서는 Drupal as a Service Provider(SP)와 SimpleSAMLphp as an Identity Provider(IdP) 간에 Single Sign-On - SSO를 구성하는 단계를 안내합니다. 이 모듈은 Drupal 7, Drupal 8, Drupal 9, Drupal 10 및 Drupal 11과 호환됩니다.

  • 모듈을 다운로드합니다:
    Composer에는 'drupal/miniorange_saml'이 필요합니다.
  • 로 이동 하다 Drupal 관리 콘솔의 메뉴에서 다음을 검색하세요. miniOrange SAML 서비스 제공자 검색창을 이용하세요.
  • 확인란을 선택하여 모듈을 활성화하고 다음을 클릭하십시오. 설치 버튼을 클릭합니다.
  • 다음에서 모듈을 구성하세요.
    {BaseURL}/admin/config/people/miniorange_saml/idp_setup
  • 모듈 설치:
    drush 및 drupal/miniorange_saml
  • 캐시 지우기:
     드러쉬 cr
  • 다음에서 모듈을 구성하세요.
    {BaseURL}/admin/config/people/miniorange_saml/idp_setup
  • 로 이동 하다 Drupal 관리 콘솔의 메뉴에서 다음을 클릭하세요. 새 모듈 설치 버튼을 클릭합니다.
  • 설치 Drupal SAML SP 2.0 싱글 사인온(SSO) - SAML 서비스 제공업체 zip 파일을 다운로드하거나 URL을 통해 모듈을 다운로드할 수 있습니다. 패키지(tar/zip).
  • 를 클릭하십시오 새로 추가된 모듈 활성화.
  • 확인란을 선택하여 이 모듈을 활성화하고 다음을 클릭하세요. 설치 버튼을 클릭합니다.
  • 다음에서 모듈을 구성하세요.
    {BaseURL}/admin/config/people/miniorange_saml/idp_setup
  • We Buy Orders 신청서를 클릭하세요. 구성사람들SAML 로그인 구성 에서 행정실 메뉴. (/admin/config/people/miniorange_saml/idp_setup)
구성-Drupal-Select-miniOrange-SAML-로그인-구성

  • 서비스 제공업체 메타데이터 탭에서 SP 엔터티 ID/발급자 SP ACS URL 그리고 편리하게 보관하세요. 이 SP 메타데이터는 SimpleSAMLphp를 Identity Provider(IdP)로 구성하는 데 필요합니다.
Drupal SAML Single Sign-On - Shibboleth 2를 IdP로 구성하는 데 필요한 SP 정보 복사

  • SimpleSAML 설치 디렉터리에서 다음을 엽니다. 설정/설정.php 다음을 편집하십시오.

    'enable.saml20-idp' ⇒ 참
  • 활성화 UserPass 인증 모듈(exampleauth에 포함됨). 이는 이름이 지정된 파일을 생성하여 수행됩니다. 가능 (파일 이름) 모듈/예제인증/.
  • 인증 소스 생성 구성/authsources.php. 파일에는 단일 항목이 포함되어야 합니다. 아래를 참조하세요.

      '__DEFAULT__', /* * 응답에 서명할 때 사용할 개인 키와 인증서. * 이것들은 cert-directory에 저장됩니다. */ 'privatekey' => 'example.org.pem', 'certificate' => 'example.org.crt', /* * 사용자를 인증하는 데 사용해야 하는 인증 소스. 이것은 config/authsources.php의 항목 중 하나와 일치해야 합니다. */ 'auth' => '' 예:- 'example-userpass', // 1단계에서 찾을 수 있습니다. ];
        

이 구성은 student와 employee라는 비밀번호로 studentpass와 employeepass라는 비밀번호를 가진 두 명의 사용자(student와 employee)를 생성합니다. 사용자 이름과 비밀번호는 배열 인덱스(student-user의 경우 student:studentpass)에 저장됩니다. 각 사용자의 속성은 인덱스에서 참조하는 배열에 구성됩니다. 따라서 student 사용자의 경우 다음과 같습니다.

  [ 'uid' => ['학생'], 'eduPersonAffiliation' => ['회원', '학생'], ],
    

사용자가 로그온하면 IdP가 속성을 반환합니다.

  • 다음 방법 중 하나를 사용하여 자체 서명된 인증서를 생성합니다.
    • openssl 명령 사용

      openssl req -newkey rsa:3072 -new -x509 -days 3652 -nodes -out example.org.crt -keyout example.org.pem
    • 온라인 도구를 사용하여 생성하고 cert 디렉터리에 추가합니다.

      확장자는 다음과 같아야합니다
      example.org.crt //(공개키)example.org.pem //(개인키)
참고 및 문의 - 두 WordPress 사이트 간 SSO

참고 : SimpleSAMLphp는 RSA 인증서에서만 작동합니다. DSA 인증서는 지원되지 않습니다.


  • SAML 2.0 IdP는 다음에 저장된 메타데이터로 구성됩니다. 메타데이터/saml20-idp-hosted.php. 이것은 최소 구성입니다:

      '__DEFAULT__', /* * 응답에 서명할 때 사용할 개인 키와 인증서입니다. * 인증서 디렉토리에 저장됩니다. */ 'privatekey' => 'example.org.pem', 'certificate' => 'example.org.crt', /* * 사용자를 인증하는 데 사용해야 하는 인증 소스입니다. 이는 config/authsources.php의 항목 중 하나와 일치해야 합니다. */ ' auth' => '' 예:- 'example-userpass', // 1단계에서 찾을 수 있습니다. ];
    
  • 구성하려는 ID 공급자는 연결하려는 서비스 공급자에 대해 알아야 합니다. 이는 metadata/saml20-sp-remote.php에 저장된 메타데이터로 구성됩니다. 이는 SimpleSAMLphp SP에 대한 metadata/saml20-sp-remote.php 메타데이터 파일의 최소 예입니다. (바꾸기 example.com 당신과 함께 Drupal 도메인 이름.)

      'https://example.com/samlassertion', 'SingleLogoutService' => 'https://example.com/user/logout', 'NameIDFormat' => 'urn:oasis:names:tc:SAML:1.1:nameid -format:emailAddress', 'simplesaml.nameidattribute' => 'mail', 'simplesaml.attributes' => true, 'attributes' => array('mail', 'givenname', 'sn', 'memberOf'), ];
    
참고 및 문의 - 두 WordPress 사이트 간 SSO

참고 : 엔티티 ID의 URI와 AssertionConsumerService 및 Single Logout 서비스 엔드포인트의 URL은 서비스 제공업체마다 다릅니다. 원격 서비스 제공업체의 메타데이터가 XML 파일로 저장되어 있는 경우, 기본 제공되는 XML-SimpleSAMLphp 메타데이터 변환기를 사용할 수 있습니다. 이 변환기는 기본적으로 SimpleSAMLphp 설치 경로에서 /admin/metadata-converter.php로 제공됩니다.


  • SimpleSAMLphp 설치 홈페이지로 이동합니다. (설치 URL은 다음과 같습니다. https://service.example.com/simplesaml/ 여기서 service.example.com은 SimpleSAMLphp 경로로 바꿔야 합니다.)
  • 페더레이션 탭으로 이동하여 다음을 클릭합니다. 메타데이터 표시(이 IdP 메타데이터는 Drupal을 SP로 구성하는 데 필요합니다.)
단순-SAML-sp-메타데이터

  • Drupal 사이트로 이동합니다. 다음으로 이동하세요. 서비스 제공업체 설정 모듈의 탭을 클릭하고 IDP 메타데이터 업로드.
  • 이전에 SimpleSAML에서 다운로드한 메타데이터 파일을 메타데이터 파일 업로드 텍스트 필드를 클릭하고 파일 업로드 버튼을 클릭합니다.
Drupal-SAML-SP-업로드-메타데이터-파일

참고 및 문의 - 두 WordPress 사이트 간 SSO

참고 : ID 공급자 이름을 업데이트하려면 다음 단계를 따르세요.

  • $XNUMX Million 미만 동작,를 선택 편집.
  • SimpleSAMLphp를 입력하세요 ID 제공자 이름 텍스트 필드.
  • 아래로 스크롤하여 구성 저장 버튼을 클릭합니다.

  • Drupal과 SimpleSAMLphp 간의 연결을 테스트하려면 테스트 링크를 클릭하세요.
Drupal SAML 서비스 제공자 - Drupal과 Simple-SAML 간의 연결 확인

  • 테스트 구성 팝업에서 SimpleSAMLphp 자격 증명을 사용하여 로그인하세요(활성 세션이 없는 경우). 인증에 성공하면 SimpleSAMLphp에서 수신한 속성 목록이 표시됩니다. 선택한다.
Drupal SAML 서비스 제공업체 - 테스트 구성

축하합니다! SimpleSAMLphp를 SAML ID 공급자(IdP)로, Drupal을 SAML 서비스 공급자로 성공적으로 구성했습니다.

  • 새 브라우저/개인 창을 열고 Drupal 사이트 로그인 페이지로 이동합니다.
  • 클릭 ID 공급자를 사용하여 로그인(SimpleSAMLphp) 링크를 클릭하십시오.
  • SimpleSAMLphp 로그인 페이지로 리디렉션됩니다. SimpleSAMLphp 자격 증명을 입력합니다. 인증에 성공하면 사용자는 Drupal 사이트로 다시 리디렉션됩니다.

 당신의 응답을 주셔서 감사합니다. 곧 다시 연락드리겠습니다.

문제가 발생했습니다. 문의사항을 다시 제출해 주세요.

최대한 빠른 시일 내에 연락드리겠습니다!



ADFS_sso ×
안녕하세요!

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

SUPPORT