SaaS 관리자 여러분, 잘 찾아오셨습니다.
셀프 및 관리 호스팅 관리자 여러분, 호스팅 배포에 해당하는 SAML 정보를 확인해 보십시오.
SAML(Security Assertion Markup Language) 정보
SAML(Security Assertion Markup Language)은 별개의 시스템 간에 사용자를 인증하고 사용자에게 권한을 부여하는 데 사용할 수 있는 XML 기반 데이터 형식입니다. SAML은 Blackboard Learn 등의 제품에서 단일 로그인 솔루션으로 자주 사용됩니다. 올바르게 설치하고 구성한 경우 Blackboard Learn 사용자는 SAML을 통해 다른 교육기관 또는 애플리케이션의 사용자명 및 비밀번호를 사용하여 로그인할 수 있습니다. SSO를 사용하면 원활한 로그인 통합 덕분에 관리자 및 사용자의 시간이 절약됩니다.
사용자 정보는 SAML 어설션에서 시스템 간에 전달됩니다. ID 제공자는 사용자 계정의 타사 호스트이며, Blackboard Learn 인스턴스는 서비스 제공자의 역할을 합니다. ID 제공자는 Blackboard Learn이 사용자의 계정을 생성하거나 업데이트할 때 사용하는 특성을 전송합니다. 이러한 특성은 사용자명, 이름, 성 및 이메일 주소와 같은 정보를 포함하며 SAML 어설션과 같은 보안 토큰에 담겨 패키지로 제공됩니다. ID 제공자는 사용자가 단일 로그인을 사용하여 로그인 정보를 입력할 때 이 SAML 어설션을 Blackboard Learn에 전송합니다. 사용자명이 시스템의 사용자명과 일치하지 않는 경우 Blackboard Learn에서는 SAML 어설션에 포함되어 있는 사용자 속성으로 새 계정을 생성합니다.
SAML 빌딩 블록은 SSO 구성을 간소화합니다. 빌딩 블록을 활성화하고 나면 관리자 패널 > 인증의 제공자 생성 목록에 나타나는 새 인증 유형을 사용하여 서비스를 적절히 구성할 수 있습니다.
SAML 빌딩 블록은 Blackboard Learn SaaS 및 Blackboard Learn 9.1 2016 Q2 이상 버전과 함께 제공됩니다.
SAML 빌딩 블록은 Blackboard Learn과 ID 제공자 간에 단일 연결을 설정합니다. 여러 ID 제공자에게 연결하기 위해 여러 SAML 인증 제공자 항목을 생성할 수 있습니다. 또한 SAML은 Blackboard Learn 로그인 워크플로를 완전히 대체하지 않습니다. 사용자는 원하는 경우 평소처럼 자신의 자격 증명을 사용하여 Blackboard Learn에 로그인할 수 있습니다.
SAML 빌딩 블록 활성화
SaaS 배포에서 Blackboard Learn을 사용하는 경우 시스템에 빌딩 블록이 이미 있기 때문에 이를 설치할 필요가 없습니다.
- '관리자 패널'로 이동합니다.
- 통합에서 빌딩 블록을 선택합니다.
- 설치된 도구를 선택합니다.
- 목록에서 인증 제공자 - SAML을 찾은 다음, 상태를 '사용 가능'으로 설정합니다.
- '관리자 패널'의 통합에서 인증을 선택합니다.
- SAML이 이제 '인증 제공자' 페이지의 제공자 생성 목록에 나타납니다.
설정 구성
설정을 구성하여 문제를 해결하거나 SAML 연결의 보안을 보장할 수 있습니다.
- '관리자 패널'로 이동합니다.
- 통합에서 빌딩 블록을 선택합니다.
- 설치된 도구를 선택합니다.
- 목록에서 인증 제공자 - SAML을 찾습니다. 메뉴를 열고 설정을 선택합니다. 다음 옵션을 사용할 수 있습니다.
- 인증서 재생성: SAML 인증서를 재생성하려면 다시 생성을 선택합니다. 연결의 보안을 유지하려는 경우 또는 인증서가 만료된 경우 인증서를 재생성해야 할 수 있습니다.
인증서를 재생성하고 나면 서비스 제공자 메타데이터를 ID 제공자에 다시 업로드해야 합니다. 재생성을 선택하는 경우 이 단계를 확인하라는 메시지가 표시됩니다.
B2 설정에서 새 인증서를 생성하는 경우 변경 내용을 적용하려면 SAML B2를 비활성으로 전환한 다음, 다시 활성으로 전환해야 합니다. 그런 다음, 제공자 설정으로 돌아가 IDP로 가져올 새 메타데이터를 생성할 수 있습니다. 설정을 전환하지 않으면 새 메타데이터를 생성할 때 계속 이전 인증서가 포함될 수 있습니다. IDP가 업데이트되지 않고 다음에 Learn이 다시 시작할 때 새 인증서가 표시됩니다. 이 불일치로 인해 SAML 인증이 해제됩니다.
- 어설션 만료 설정: 이 섹션에서 만료 시간(ResponseSkew) 및 SAML 세션 수명 제한을 조정할 수 있습니다. Blackboard Learn 서버가 ID 제공자의 서버와 다른 표준 시간대에 있는 경우 ResponseSkew 값을 수정해야 할 수 있습니다. 시차로 인해 사용자가 제대로 인증되기 전에 SAML 어설션이 만료될 수 있습니다. SAML 세션은 SAML 세션 수명 제한의 시간에 따라 만료됩니다. 세션이 만료되지 않게 하려면 세션 기간 제한 안 함을 선택합니다.
- 서명 알고리즘 설정: 보안 요구 사항 또는 ID 제공자의 요구 사항을 충족하는 서명 알고리즘 유형을 선택합니다. 서명 알고리즘 유형을 선택한 후 SAML 빌딩 블록을 다시 시작하여 새 설정을 적용합니다.
- 인증서 재생성: SAML 인증서를 재생성하려면 다시 생성을 선택합니다. 연결의 보안을 유지하려는 경우 또는 인증서가 만료된 경우 인증서를 재생성해야 할 수 있습니다.
- 변경사항을 저장하려면 제출을 선택합니다.
SAML 인증 제공자 생성 및 구성
- 제공자 생성 버튼을 선택하고 SAML 인증 제공자 유형을 선택합니다.
- 제공자의 이름과 설명(선택 사항)을 입력합니다.
- 인증 제공자 사용 가능성을 활성으로 설정합니다.
- 사용자 조회 방법을 사용자명 또는 배치 UID로 설정합니다.
- 호스트명으로 제한을 모든 호스트명에 이 제공자 사용으로 설정합니다.
- 필요시 이 제공자를 지정된 호스트명으로만 제한을 선택합니다. 뒤이어 나타나는 제한된 호스트명 필드에 호스트명을 입력합니다.
- 링크 텍스트 필드에 Blackboard Learn 로그인 페이지에 나타내고 싶은 링크의 제목을 입력합니다.
- 필요시 로그인 페이지에 아이콘을 추가할 수도 있습니다. 로그인 페이지의 아이콘을 업로드하려면 찾아보기를 선택합니다.
- 저장 및 구성을 선택하여 계속합니다.
SAML 인증 설정 페이지에서 신뢰할 수 있는 연결을 설정하도록 서비스 제공자 및 ID 제공자 설정을 지정할 수 있습니다. ID 제공자는 사용자 계정의 타사 호스트이며, Blackboard Learn 인스턴스는 서비스 제공자의 역할을 합니다.
서비스 제공자 설정
- 어설션 소비자 서비스 URL이 ACS URL 필드에 표시됩니다. ID 제공자는 제공자 측에서 구성을 완료하도록 이 URL을 요청할 수 있습니다.
- 엔터티 ID의 이름을 입력합니다. 이 ID는 서비스 제공자 메타데이터에 채워집니다.
- 자동 단일 로그인 활성화 확인란을 선택하면 사용자가 신뢰할 수 있는 ID 제공자에 이미 로그인한 경우 Blackboard Learn 로그인 화면을 건너뛸 수 있습니다.
- 단일 로그아웃 서비스 유형 섹션에는 3가지 확인란이 있습니다. ADFS가 ID 제공자인 경우 게시 및 ADFS LogoutResponse 허용을 선택합니다. ADFS LogoutResponse 허용을 선택하면 사용자가 Blackboard Learn에서 로그아웃할 때 사용자의 ID 제공자 세션이 종료됩니다.
- 신뢰할 수 있는 연결을 설정하려면 ID 제공자와 메타데이터를 공유해야 합니다. 서비스 제공자 메타데이터 옆에 있는 생성 버튼을 선택합니다.
- ID 제공자와 메타데이터를 공유합니다. ID 제공자 측에서 메타데이터를 저장하면 신뢰할 수 있는 연결이 설정됩니다.
- 이 인증 제공자의 데이터 소스를 선택합니다. 데이터 소스는 이 인증 제공자가 프로비저닝한 계정의 소스입니다. 기본값은 내부입니다. SAML 인증 제공자와 함께 사용할 특정한 데이터 소스를 생성하는 것이 좋습니다.
이 주제는 셀프 및 관리 호스팅 섹션에 나와 있습니다. 확인을 마치면 브라우저의 뒤로 기능을 사용하여 여기로 돌아오십시오.
- 호환되는 데이터 소스 목록에서 이 인증 제공자와 호환되어야 하는 데이터 소스를 선택합니다. 이는 인증 제공자가 기존 데이터 소스와 공유된 계정을 보유하고 있는 경우 중요합니다. 사용자가 있으며 확인 표시되지 않은 데이터 소스와 연결되어 있으면 해당 사용자는 성공적으로 인증되지 않습니다.
- 사용자의 정보를 찾을 수 없는 경우 사용자용 새 계정이 자동으로 생성되도록 하려면 확인란을 선택합니다.
- 오류 메시지 텍스트 상자에서는 SAML 인증이 올바르게 작동하지 않는 경우 사용자에게 보낼 사용자 지정 메시지를 입력할 수 있습니다.
ID 제공자 설정
- 포인트 ID 제공자를 선택하는 경우 공유하고 있는 ID 제공자의 메타데이터 파일을 업로드합니다. ID 제공자의 메타데이터 URL을 입력할 수도 있지만, 메타데이터 파일을 업로드하는 것이 좋습니다. 시스템에서는 이러한 메타데이터 버전 중 하나만 유지됩니다.
- ID 페더레이션을 선택하는 경우 검색 서비스 URL을 입력할 수 있는 필드가 나타납니다.
또한 구성한 후에는 InCommon, UK Federation 등의 페더레이션 커뮤니티에 서비스 제공자 메타데이터를 등록해야 합니다.
SAML 특성 매핑
- ID 제공자의 특성 정의와 적절하게 매핑되도록 SAML 특성을 구성합니다. 특성이 비어 있는 경우 SAML 빌딩 블록은 SAML 응답을 구문 분석할 때 특성을 무시합니다.
- 제출을 선택하여 정보를 저장합니다.
교육기관 내 역할
Blackboard Learn 시스템에서 사용자의 교육기관 내 역할은 ID 제공자로부터 수신한 정보에 따라 달라집니다. 역할은 다음과 같이 매핑됩니다.
교육기관 내 기본 역할(SAML) | Blackboard Learn 교육기관 내 역할 |
---|---|
학생 | 학생 |
스탭 | 스탭 |
교직원 | 교직원 |
코스 내 역할
사용자의 코스 내 역할은 ID 제공자로부터 수신한 정보에 따라 달라집니다. 역할은 다음과 같이 매핑됩니다.
코스 멤버십(SAML) | Blackboard Learn 코스 내 역할 |
---|---|
학습자 | 학생 |
교수자 | 교수자 |
콘텐츠 개발자 | 코스 생성자 |
구성원 | 학생 |
관리자 | 학생 |
관리자 | 학생 |
조교 | 조교 |
멘토 | 교수자 |
다중 속성 값
ID 제공자의 응답에 여러 속성 값이 포함될 것으로 예상되는 경우 다음과 같이 SAML 응답의 서식을 지정합니다.
<saml2:Attribute FriendlyName="bbuasqa3_cm" Name="urn:oid:1.3.6.1.4.1.5923.1.6.1.2" NameFormat="urn:oasis:names:tc:SAML:2.0:attrname-format:uri">
<saml2:AttributeValue>Learner@batchUid:TEST_COURSE_003
</saml2:AttributeValue>
<saml2:AttributeValue>Learner@batchUid:TEST_COURSE_004
</saml2:AttributeValue>
</saml2:Attribute>
연결 테스트하기
연결이 제대로 작동하는지 테스트하십시오. Learn에서 로그아웃했다가 SAML 링크를 사용하여 다시 로그인합니다. 외부 사이트의 계정 자격 증명을 입력하여 로그인합니다. 로그인하면 Blackboard Learn으로 다시 돌아오게 됩니다.
Blackboard Learn에서 로그아웃하면 관련된 모든 세션을 종료할지를 묻는 메시지가 나타납니다. 아무것도 하지 않으면 2분 후 모든 세션이 종료됩니다. 세션을 계속하려는 경우에는 보안을 위해 다시 로그인해야 합니다.
문제 해결
관리자 또는 사용자에게 오류가 발생할 경우 이 문제 해결 팁을 참조하십시오.
- 오류가 ID 제공자의 로그인 페이지로 리디렉션되기 전에 나타난다면 ID 제공자의 메타데이터가 유효하지 않은 것일 수 있습니다.
- 오류가 ID 제공자의 페이지에 로그인한 후에 나타난다면 다음과 같은 이유 때문일 수 있습니다.
- 서비스 제공자와 ID 제공자 간의 특성 매핑이 잘못되었거나 ID 제공자가 유효한 원격 사용자 ID를 반환하지 않았습니다.
- 서비스 제공자가 ID 제공자의 SAML 응답 유효성을 검사하지 않았습니다. 이는 다음과 같은 이유 때문일 수 있습니다.
- ID 제공자가 유효한 인증 기관에서 발급하지 않은 인증서를 사용하여 SAML 응답에 서명하며, 서비스 제공자의 키 저장소에 이 인증서가 들어 있지 않습니다.
- 서비스 제공자의 시스템 시계가 잘못되었습니다.
- 오류에 관한 자세한 정보를 찾으려면 bb-services-log.txt 파일 또는 시각적 로그 패널을 열고 unsuccessfulAuthentication 또는 BbSAMLExceptionHandleFilter와 같은 키워드를 검색하십시오.
- Chrome 개발자 콘솔, Firefox용 SAML Tracer 플러그 인 또는 Firefox용 SAML Message Decoder를 사용하여 SAML 응답을 찾을 수 있습니다.