검색 결과 :

×

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

miniOrange SAML SP 모듈을 사용한 Drupal SAML 통합은 SimpleSAMLphp와 Drupal 사이트 간의 원활한 SSO(Single Sign-On)를 구축합니다. 사용자는 SimpleSAMLphp 자격 증명을 사용하여 Drupal 사이트에 로그인할 수 있습니다. 이 문서에서는 서비스 제공자(SP)인 Drupal과 ID 제공자(IdP)인 SimpleSAMLphp 간의 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 설치 디렉토리에서 config/config.php 파일을 열고 다음 내용을 수정하십시오.

    'enable.saml20-idp' ⇒ 참
  • 활성화 UserPass 인증 모듈(exampleauth에 포함됨). 이는 이름이 지정된 파일을 생성하여 수행됩니다. 가능 (파일 이름) 모듈/예제인증/.
  • config/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는 metadata/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 Service 엔드포인트의 URL은 서비스 제공업체마다 다릅니다. 원격 SP의 메타데이터가 XML 파일인 경우, SimpleSAMLphp 설치 디렉토리의 /admin/metadata-converter.php에 기본적으로 제공되는 XML-SimpleSAMLphp 메타데이터 변환기를 사용할 수 있습니다.


  • 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