Microsoft Entra ID와 SAML 구성
Mattermost v12.0요약
이 페이지는 Mattermost에서 Microsoft Entra ID와 SAML을 구성하는 방법을 안내합니다. 시작하기 전에 SAML 연결을 암호화하기 위한 암호화 인증서를 생성해야 합니다. 또는 Manage > Properties를 선택하고 할당 필요 여부를 아니요로 설정한 후 저장을 선택할 수도 있습니다.
사용 가능 플랜: Entry, Professional, Enterprise, Enterprise Advanced
이 페이지는 Mattermost에서 Microsoft Entra ID와 SAML을 구성하는 방법을 안내합니다.
- OpenID Connect 인증을 위해 Entra ID를 구성해야 합니까? 자세한 내용은 Entra ID Single Sign-On 문서를 참고하세요.
- 인증 구성 설정 문서에서 지원되는 SAML 암호화 방법을 참고하세요.
시작하기 전에 SAML 연결을 암호화하기 위한 암호화 인증서를 생성해야 합니다.
- GitHub의
mattermost/docs리포지터리에 있는 Bash 스크립트를 사용하거나 다른 적절한 방법을 사용할 수 있습니다. 여러 URL/IP에서 사용하기 위한 자체 서명 x509v3 인증서 생성에 대한 자세한 내용은 자체 서명 인증서 생성 문서를 참고하세요. - 생성된 두 파일을 저장하세요. 각각 개인 키와 공개 키입니다. System Console에서는 각각 서비스 공급자 개인 키와 서비스 공급자 공개 인증서로 불립니다.
전제 조건#
- 해당 사용자 데이터가 포함된 Microsoft Entra 테넌트.
- 테넌트에 대한 확인된 사용자 지정 도메인. 자세한 내용은 Microsoft의 테넌트에 사용자 지정 도메인 이름 추가 문서를 참고하세요.
- Microsoft Entra ID P1 또는 P2 라이선스.
- Entra 테넌트에서 최소 애플리케이션 관리자 역할을 가진 계정.
Entra ID에서 Mattermost SSO용 엔터프라이즈 앱 설정#
- 애플리케이션 관리자 역할을 최소한 보유한 계정으로 Microsoft Entra 관리 센터에 로그인합니다.
- 왼쪽 탐색 메뉴에서 Entra ID > Enterprise applications를 선택합니다.
- + 새 애플리케이션을 선택합니다.
- + 나만의 애플리케이션 만들기를 선택합니다.
- 앱 이름이 무엇입니까? 필드에 Mattermost를 입력합니다.
- 애플리케이션으로 무엇을 하시겠습니까? 아래에서 갤러리에서 찾을 수 없는 다른 애플리케이션 통합(갤러리 외)을 선택합니다.
- 만들기를 선택합니다. Entra가 애플리케이션을 프로비저닝하는 데 몇 초 정도 걸릴 수 있습니다.
- Mattermost 엔터프라이즈 애플리케이션 설정에서 Manage > Users and groups를 선택한 후, Mattermost에 액세스할 수 있어야 하는 승인된 사용자 및/또는 그룹을 할당합니다.
또는 Manage > Properties를 선택하고 할당 필요 여부를 아니요로 설정한 후 저장을 선택할 수도 있습니다. 이렇게 하면 Mattermost가 Entra 테넌트의 모든 사용자에 대한 액세스 권한을 갖게 되므로, 진행하기 전에 이것이 조직의 접근 제어 요구 사항에 부합하는지 평가하세요.
-
Mattermost 엔터프라이즈 애플리케이션 설정에서 Manage > Single sign-on을 선택한 후, Select a single sign-on method에서 SAML을 선택합니다.
-
기본 SAML 구성 섹션에서 편집을 선택하고 아래 필드를 설정한 후 저장을 선택합니다.
- 식별자(엔티티 ID):
https://<your-mattermost-url> - 회신 URL(Assertion Consumer Service URL):
https://<your-mattermost-url>/login/sso/saml - 로그온 URL:
https://<your-mattermost-url>/login
- 식별자(엔티티 ID):
-
특성 및 클레임 섹션에서 편집을 선택한 후, 아래 설명에 따라 필수 클레임과 추가 클레임을 구성합니다.
Entra 클레임이 Mattermost에 매핑되는 방식
Entra가 Mattermost로 전송하는 SAML 어설션에는 사용자를 설명하는 이름/값 쌍인 클레임 집합이 포함됩니다. Mattermost는 System Console > Authentication > SAML 2.0 > Attributes(예: 이메일 속성, 사용자명 속성, 이름 속성)에서 구성한 속성 이름을 기준으로 이러한 클레임을 읽습니다.
Entra에서 설정하는 클레임 이름은 대응하는 Mattermost 속성 필드에 입력하는 값과 한 글자도 다르지 않게 일치해야 합니다. 값(소스 특성이라고도 함)은 Entra가 어떤 사용자 속성을 전송할지 지정합니다. 예를 들어
user.mail은 사용자의 이메일 주소를 전송합니다.a. 필수 클레임 — 고유 사용자 식별자(Name ID)
환경에 맞게 이름 식별자 형식과 소스 특성 값을 설정합니다. Name ID는 SAML 어설션의 일부이지만, Mattermost 계정 바인딩은 Id 속성(SAML) 설정을 구성한 경우 그 설정에 따르며, 그렇지 않으면 이메일로 결정됩니다. Mattermost에서 변경 불가능한 사용자 바인딩을 원한다면 추가 클레임 아래에 별도의
Id클레임을 추가하고 그 값(소스 특성)을user.objectid와 같은 변경 불가능한 Entra 속성으로 설정하세요. 사람이 읽기 쉬운 식별자를 선호하는 경우user.userprincipalname도 Name ID로 흔히 선택되지만, 이를 ID 매칭에 사용하면 Entra에서 이름이 변경될 때 해당 Mattermost 계정이 연결되지 않을 수 있다는 단점이 있습니다.b. 추가 클레임
기본적으로 Entra는 이 섹션을
http://schemas.xmlsoap.org/ws/2005/05/identity/claims/...네임스페이스를 사용하는 네 개의 클레임으로 채웁니다. 이 값들도 작동하지만, Mattermost의 속성 필드와 일치하는 짧고 읽기 쉬운 이름으로 교체하는 것을 권장합니다. 클레임을 수정하려면 해당 클레임을 선택하고 이름 필드를 업데이트한 후(그리고 네임스페이스 필드를 지운 후) 저장하세요.
Mattermost는 SAML 어설션에 표시되는 그대로 네임스페이스를 포함한 **전체 클레임 이름**으로 각 속성을 일치시킵니다. Entra는 기본적으로 내장 클레임을 `http://schemas.xmlsoap.org/ws/2005/05/identity/claims/` 네임스페이스 아래에 표시합니다. 따라서 **클레임 이름** 열에 `emailaddress`로 표시되는 클레임은 실제로는 어설션에서 `http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress`로 전송됩니다.
Mattermost 속성 필드에 짧은 이름(예: `email` 또는 `name`)만 입력하면 일치하지 **않으며**, `SAML login was unsuccessful because one of the attributes is incorrect... <attribute> attribute is missing`와 같은 오류로 로그인에 실패합니다.
다음 두 가지 옵션이 있습니다.
- **Entra ID에서 각 클레임의 네임스페이스를 지워**(아래 표에 나온 방식) 클레임 이름을 짧은 값(예: `email`)으로 만든 후, Mattermost에도 동일한 짧은 값을 입력하거나, **또는**
- **Entra ID에서 기본 네임스페이스를 그대로 두고** Mattermost에 정규화된 클레임 이름을 입력합니다(예: `http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress`).
로그인이 실패하는 경우, 전송되는 정확한 클레임 이름을 확인하는 가장 안전한 방법은 브라우저에서 SAML 응답을 캡처하고 디코딩하여(예: [SAML-tracer](https://addons.mozilla.org/firefox/addon/saml-tracer/) 브라우저 확장 프로그램 사용) 각 `` 요소의 `Name` 속성을 확인하는 것입니다.
다음 클레임 구성은 일반적인 Mattermost 설정을 다룹니다(네임스페이스 제거 옵션 사용).
| Mattermost 속성 필드 | Entra 클레임 이름 | Entra 소스 속성 |
|:---|:---|:---|
| 이메일 속성 | `email` | `user.mail` |
| 사용자명 속성 | `username` | `user.mailnickname` |
| 이름 속성 | `firstname` | `user.givenname` |
| 성 속성 | `lastname` | `user.surname` |
| 직위 속성 | `position` | `user.jobtitle` |
사용자명 클레임의 소스로는 `user.userprincipalname` 대신 `user.mailnickname`을 사용하세요. 사용자 계정 이름(UPN)은 일반적으로 이메일 주소 형식(`user@domain.com`)이지만, Mattermost 사용자명에는 `@` 문자를 사용할 수 없으므로 `user.userprincipalname`을 사용하는 SAML 로그인은 실패합니다. 메일 닉네임은 이메일 주소의 로컬 부분(`@` 앞부분)이며 유효한 Mattermost 사용자명에 깔끔하게 매핑됩니다.
조직에서 `mailnickname`을 일관되게 채우지 않는 경우, 커스텀 Entra 속성을 사용하거나 UPN에서 도메인을 제거하는 변환을 적용하는 것도 하나의 방법입니다.
편집을 마치면 **특성 및 클레임** 페이지는 아래 스크린샷과 유사하게 표시됩니다.

**게스트**, **관리자**, **닉네임**, **기본 설정 언어** 속성도 Entra에서 값을 가져오도록 Mattermost에서 구성할 수 있습니다. 동일한 패턴을 사용하세요. Entra에서 짧은 클레임 이름을 선택하고 소스 특성을 설정한 후, 대응하는 Mattermost 속성 필드에 일치하는 클레임 이름을 입력합니다.
12. SAML 인증서 섹션에서 편집을 선택합니다. 서명 옵션으로 SAML 응답 및 어설션 서명을 선택하고, 서명 알고리즘으로 SHA-256을 선택한 후 저장을 선택합니다.
13. SAML 인증서 섹션에서 인증서(Base64) 다운로드 링크를 선택합니다. 이것이 Mattermost에 업로드할 ID 공급자 공개 인증서입니다.
14. Mattermost 엔터프라이즈 애플리케이션 설정에서 Security > Token encryption을 선택합니다. 인증서 가져오기를 선택하여 서비스 공급자 인증서를 가져옵니다. 시작하기 전에 섹션에서 참조한 Bash 스크립트를 사용한 경우, 이것은 mattermost-x509.crt 파일입니다. 가져오기 대화 상자에 .cer 파일 확장자를 가진 인증서를 업로드하라고 나오지만, .crt 파일도 허용됩니다. 파일을 업로드한 후 추가를 선택합니다.
15. 가져온 인증서 세부 정보 오른쪽의 ...을 선택하고, 토큰 암호화 인증서 활성화를 선택한 후 예를 선택하여 활성화합니다.
16. Mattermost SAML 2.0 URL 설정에 사용할 테넌트 ID를 복사합니다.
이 설정 과정에서 Entra는 서로 다른 세 가지 GUID를 노출하므로 혼동하기 쉽습니다. **테넌트 ID**는 전체 Entra 디렉터리를 식별하는 반면, **애플리케이션 ID**와 **개체 ID**(엔터프라이즈 애플리케이션의 **속성** 페이지에서 확인 가능)는 해당 디렉터리 내에서 Mattermost SAML 애플리케이션을 식별합니다. Mattermost는 테넌트 ID와 애플리케이션 ID를 사용하며, 개체 ID는 사용하지 않습니다.
테넌트 ID를 확인하려면 관리 센터 홈에서 **Entra ID**를 선택한 후, **개요** 페이지의 **기본 정보** 패널에서 **테넌트 ID** 값을 찾습니다.

17. Mattermost SAML 2.0 설정의 ID 공급자 메타데이터 URL 설정에 사용할 애플리케이션 ID를 복사합니다.
애플리케이션 ID를 확인하려면 왼쪽 탐색 메뉴에서 **Entra ID > Enterprise applications**를 선택하고, **Mattermost** 애플리케이션을 선택한 후 **속성** 페이지에서 **애플리케이션 ID**를 복사합니다(옆에 표시되는 개체 ID는 필요하지 않습니다).
Mattermost SAML SSO 구성#
- Mattermost System Console에서 Authentication > SAML 2.0을 선택합니다.
- SAML 2.0으로 로그인 활성화를 True로 설정합니다.
- ID 공급자 메타데이터 URL을 설정합니다:
https://login.microsoftonline.com/<your-tenant-id>/federationmetadata/2007-06/federationmetadata.xml?appid=<your-app-id> - IdP에서 SAML 메타데이터 가져오기를 선택하여 SAML 메타데이터를 성공적으로 검색할 수 있는지 확인합니다.
- SAML SSO URL을 설정합니다:
https://login.microsoftonline.com/<your-tenant-id>/saml2 - ID 공급자 발급자 URL을 설정합니다(후행 슬래시 필수):
https://sts.windows.net/<your-tenant-id>/ - Entra ID에서 Mattermost SSO용 엔터프라이즈 앱 설정의 13단계에서 받은 ID 공급자 공개 인증서 파일을 선택한 후 업로드합니다.
- 서명 검증을 True로 설정합니다.
- 서비스 공급자 로그인 URL을 설정합니다:
https://<your-mattermost-url>/login/sso/saml - 서비스 공급자 식별자를 설정합니다:
https://<your-mattermost-url> - 암호화 활성화를 True로 설정합니다.
- 서비스 공급자 개인 키 파일을 선택한 후 업로드합니다. 시작하기 전에 섹션에서 참조한 Bash 스크립트를 사용한 경우, 이것은
mattermost-x509.key파일입니다. - 서비스 공급자 공개 인증서를 선택한 후 업로드합니다. 시작하기 전에 섹션에서 참조한 Bash 스크립트를 사용한 경우, 이것은
mattermost-x509.crt파일입니다. - Mattermost가 Entra ID로 전송하는 아웃바운드 AuthnRequest에 서명하도록 하려면 요청 서명을 True로 설정합니다. 이는 Entra가 자체 SAML 응답 및 어설션에 서명하는 것(Entra 설정의 12단계에서 구성)과는 별개입니다. 활성화하는 경우 서명 알고리즘을 RSAwithSHA256으로 설정하고(Entra ID는 서명된 요청에 RSA-SHA256을 요구합니다), 요청 검증을 위해 Mattermost의 공개 인증서를 Entra ID에 업로드하세요. 엔터프라이즈 애플리케이션에서 SAML 인증서를 선택한 후 확인 인증서 아래에
mattermost-x509.crt파일을 업로드합니다.
Microsoft Entra ID의 Mattermost SAML로 Single Sign-On 테스트 도구는 Mattermost에서 요청 서명을 True로 설정하더라도 요청에 서명하지 않습니다. 보안 설정 및 키 길이에 따라, Entra ID 테스트 도구는 성공적으로 로그인할 수 있지만, Entra ID가 HTTP GET 리다이렉트로 초기 요청을 처리하므로(HTTP POST 대신) 실제 Mattermost 로그인 페이지의 로그인 요청은 AADSTS90015: Requested query string is too long. 오류가 발생할 수 있습니다.
- Entra ID에서 Mattermost SSO용 엔터프라이즈 앱 설정 섹션의 11단계에서 구성한 속성과 일치하도록 속성 설정을 구성합니다. 각 값은 네임스페이스를 포함하여 어설션에서 전송되는 전체 클레임 이름과 정확히 일치해야 합니다. 자세한 내용과 일반적인 실패 사례는 11단계 아래의 중요 노트를 참고하세요.
- 환경에 맞게 로그인 버튼 텍스트를 설정합니다.
- 저장 버튼을 선택합니다.
SAML 로그인 구성 외에도 선택적으로 SAML 계정을 AD/LDAP와 동기화하도록 구성할 수 있습니다. 구성 시:
- Mattermost가 AD/LDAP에서 관련 계정 정보를 쿼리하고 속성(이름, 성 및 닉네임) 변경에 따라 SAML 계정을 업데이트합니다.
- AD/LDAP에서 비활성화된 계정은 Mattermost에서 비활성화되며 Mattermost가 속성을 동기화하면 활성 세션이 취소됩니다.
AD/LDAP와 SAML 동기화를 구성하려면:
-
System Console > Authentication > SAML 2.0 으로 이동한 다음 AD/LDAP와 SAML 계정 동기화 활성화 를 true 로 설정합니다.
-
System Console > Authentication > AD/LDAP 로 이동하여 AD/LDAP 마법사를 열고 연결 설정 섹션으로 이동한 다음 AD/LDAP와 동기화 활성화 를 true 로 설정합니다.
-
동기화 시 게스트 사용자를 무시하려면 System Console > Authentication > SAML 2.0 으로 이동한 다음 AD/LDAP와 동기화할 때 게스트 사용자 무시 를 true 로 설정합니다.
-
구성 설정 문서에 따라 나머지 AD/LDAP 설정을 지정하여 Mattermost를 AD/LDAP 서버와 연결합니다.
AD/LDAP 로그인을 활성화하지 않으려면 System Console > Authentication > AD/LDAP 마법사로 이동하고 연결 설정 섹션으로 이동한 다음 AD/LDAP로 로그인 활성화 를 false 로 설정합니다.
-
Mattermost가 SAML 사용자 계정을 AD/LDAP와 얼마나 자주 동기화하는지 지정하려면 System Console > Authentication > AD/LDAP 마법사로 이동하고 동기화 성능 섹션으로 이동한 다음 동기화 간격 을 분 단위로 설정합니다. 기본 설정은 60분입니다. 계정 비활성화 후 즉시 동기화하려면 동기화 기록 섹션으로 이동하고 AD/LDAP 지금 동기화 를 선택합니다.
-
Mattermost가 AD/LDAP 서버에 성공적으로 연결할 수 있는지 확인하려면 System Console > Authentication > AD/LDAP 마법사로 이동하고 연결 설정 섹션으로 이동한 다음 연결 테스트 를 선택합니다.
AD/LDAP와의 동기화가 활성화되면 사용자 속성이 이메일 주소를 기반으로 AD/LDAP와 동기화됩니다. 주어진 이메일 주소를 가진 사용자가 AD/LDAP 계정을 가지지 않으면 다음 AD/LDAP 동기화 시 Mattermost에서 비활성화됩니다.
계정을 다시 활성화하려면:
- AD/LDAP 서버에 사용자를 추가합니다.
- System Console > Environment > Web Server 로 이동하여 모든 캐시 삭제 를 선택하여 Mattermost의 모든 캐시를 지웁니다.
- System Console > Authentication > AD/LDAP 마법사로 이동하여 동기화 기록 섹션으로 이동한 다음 AD/LDAP 지금 동기화 를 선택하여 AD/LDAP 동기화를 실행합니다.
- System Console > Environment > Web Server 로 이동하여 모든 캐시 삭제 를 다시 선택하여 Mattermost의 모든 캐시를 다시 지웁니다. 이렇게 하면 Mattermost에서 계정이 다시 활성화됩니다.
- 사용자가 AD/LDAP에서 비활성화되면 다음 동기화 시 Mattermost에서 비활성화됩니다. 시스템 콘솔 사용자 목록에 "Deactivated"로 표시되고, 모든 세션이 만료되며 Mattermost에 다시 로그인할 수 없게 됩니다. - 사용자가 SAML에서 비활성화되면 AD/LDAP에서 비활성화될 때까지 세션이 만료되지 않습니다. 그러나 Mattermost에 다시 로그인할 수 없습니다. - AD/LDAP와의 SAML 동기화는 인증을 제어하는 것이 아니라 이름, 성 등의 사용자 속성을 AD/LDAP에서 가져오도록 설계되었습니다. 특히 사용자 필터는 Mattermost에 로그인할 수 있는 사람을 제어하는 데 사용할 수 없으며, 이는 SAML 서비스 공급자의 그룹 권한으로 제어해야 합니다.
자세한 내용은 AD/LDAP와의 SAML 동기화 기술적 설명을 참조하세요.
AD/LDAP 데이터로 SAML 데이터 재정의#
또는 AD/LDAP 정보로 SAML 바인딩 데이터를 재정의하도록 선택할 수 있습니다. SAML ID 속성으로 사용자를 바인딩하는 방법에 대한 자세한 내용은 이 문서를 참조하세요.
이 프로세스는 구성된 경우 SAML 이메일 주소를 AD/LDAP 이메일 주소 데이터로 재정의하거나 SAML Id 속성을 AD/LDAP Id 속성으로 재정의합니다. 사용자의 이메일 주소가 변경될 때 새 사용자가 생성되지 않도록 SAML ID 속성과 함께 이 구성을 사용하는 것을 권장합니다.
이 프로세스에서 기존 사용자 계정이 비활성화되지 않도록 하려면 두 시스템에서 데이터를 내보내고 ID 데이터를 비교하여 SAML ID가 LDAP ID와 일치하는지 확인하세요. Mattermost 내에서 AD/LDAP와 SAML 모두에 대한 ID 속성을 동일한 데이터를 보유하는 필드에 매핑하면 ID가 일치하게 됩니다.
- System Console > Authentication > SAML 2.0 > Id Attribute 로 이동하여 SAML
Id Attribute를 설정합니다. - System Console > Authentication > SAML 2.0 > Override SAML bind data with AD/LDAP information 을 true 로 설정합니다.
- System Console > Authentication > SAML 2.0 > Enable Synchronizing SAML Accounts With AD/LDAP 를 true 로 설정합니다.
- System Console > Authentication > AD/LDAP 마법사로 이동하고 동기화 기록 섹션으로 이동한 다음 AD/LDAP 지금 동기화 를 선택하여 AD/LDAP 동기화를 실행합니다.
SAML에서 지원되는 암호화 옵션은 무엇입니까?#
인증 구성 설정 문서에서 지원되는 SAML 암호화 방법을 참고하세요.
이메일 대신 Id 속성으로 인증을 바인딩하는 방법#
또는 이메일 대신 Id 속성을 사용하여 사용자를 바인딩할 수 있습니다. 고유하고 시간이 지나도 변경되지 않는 ID를 선택하는 것을 권장합니다.
Id 속성으로 구성하면 이전 사용자의 정보를 노출하지 않고 새 사용자를 위해 이메일 주소를 재사용할 수 있습니다. 예를 들어, 이메일 주소가 joe.smith@mattermost.com인 사용자가 한때 직원이었다면 Joe Smith라는 새 직원이 동일한 이메일을 사용할 수 있습니다. 이 구성은 사용자의 이름이 변경되어 이메일을 업데이트해야 할 때도 유용합니다.
이 프로세스는 이메일 바인딩과의 하위 호환성을 위해 설계되었습니다. 다음은 새 계정 생성 시와 구성 후 로그인하는 계정에 적용되는 프로세스입니다.
- SAML로 인증된 사용자는 Id 속성(구성된 경우)을 사용하거나 SAML에서 받은 이메일을 통해 SAML 서비스 사용자에 바인딩됩니다.
- 사용자가 로그인을 시도하고 SAML 서버가 유효한 인증으로 응답하면 서버는 SAML 인증의 "Id" 필드를 사용하여 사용자를 검색합니다.
- 해당 ID에 바인딩된 사용자가 이미 존재하면 해당 사용자로 로그인됩니다.
- 해당 ID에 바인딩된 사용자가 존재하지 않으면 이메일을 기반으로 검색합니다.
- 이메일에 바인딩된 사용자가 존재하면 이메일로 로그인하고 인증 데이터를 이메일 대신 ID로 업데이트합니다.
- ID 또는 이메일에 바인딩된 사용자가 존재하지 않으면 ID로 SAML 계정에 바인딩된 새 Mattermost 계정을 생성하고 사용자가 로그인할 수 있도록 합니다.
기존 계정은 서버에 로그인할 때까지 업데이트되지 않습니다.
"one of the attributes is incorrect" / "<attribute> attribute is missing" 오류로 로그인이 실패하는 이유는 무엇입니까?#
SAML login was unsuccessful because one of the attributes is incorrect. Please contact your System Administrator. 오류와 함께 로그인이 실패하고, 서버 로그에 email attribute is missing 또는 name attribute is missing과 같은 세부 정보가 함께 표시된다면, 이는 ID 공급자(Identity Provider, IdP)에서 전달한 어설션에 Mattermost SAML 속성 설정에서 구성한 이름과 정확히 일치하는 속성이 포함되어 있지 않다는 의미입니다.
Mattermost는 어설션에 표시된 그대로의 전체 Name(또는 FriendlyName)을 문자 단위로 정확히 비교하여 각 속성을 매칭합니다. 오류 메시지에 표시된 속성 이름은 Mattermost에 입력했지만 찾을 수 없었던 값입니다.
이런 문제는 IdP가 네임스페이스 아래에 속성을 전송할 때 가장 흔히 발생합니다. 예를 들어 Microsoft Entra ID는 기본적으로 내장 클레임을 http://schemas.xmlsoap.org/ws/2005/05/identity/claims/ 네임스페이스 아래에 발행하므로, Entra ID 관리자 UI에서는 email처럼 보이는 속성이 실제 어설션에서는 http://schemas.xmlsoap.org/ws/2005/05/identity/claims/email로 전송됩니다. Mattermost에 email만 입력하면 일치하지 않습니다.
이 문제를 해결하려면 다음을 따르세요.
- SAML 응답을 캡처하여 디코딩하고(예: SAML-tracer 브라우저 확장 프로그램 사용),
내 각요소의Name속성을 확인하세요. - 각 Mattermost 속성 필드를 어설션에 있는 정확한
Name값(네임스페이스 접두사 포함)으로 설정하거나, Mattermost에서 사용할 짧은 이름으로 클레임을 발행하도록 IdP를 재구성하세요.
Microsoft ADFS를 통한 SAML을 통합 Windows 인증(IWA)으로 구성할 수 있습니까?#
예. IWA는 브라우저에서 지원되며 2019년 2분기(모바일 앱 v1.18 이상)에 iOS 및 Android 모바일 앱에 지원이 추가되었습니다.
그러나 IWA는 Electron의 제한으로 인해 Mattermost 데스크톱 앱에서는 지원되지 않습니다. 해결 방법으로 데스크톱 앱처럼 Mattermost에 빠르게 액세스하기 위한 브라우저 바탕화면 바로가기를 만들 수 있습니다.
SAML을 통해 로그인하는 사용자를 프로비저닝 및 디프로비저닝할 수 있습니까?#
예, 하지만 이는 AD/LDAP를 통해 수행됩니다. 현재 SCIM은 지원하지 않습니다. 자세한 내용은 "사용자를 어떻게 비활성화합니까?"를 참고하세요.
사용자를 한 인증 방법(예: 이메일)에서 SAML로 마이그레이션하는 방법#
자세한 내용은 mmctl user migrate-auth 명령 문서를 참고하세요.
SAML은 OAuth 2.0 및 OpenID Connect와 어떻게 다릅니까?#
OAuth 2.0은 주로 위임된 권한 부여를 위해 설계되었으며, 예를 들어 앱이 Google 연락처 목록과 같은 리소스에 액세스하도록 권한을 부여합니다. 인증을 처리하지 않습니다.
OpenID Connect는 OAuth 2.0 위에 구축되어 인증을 지원하므로 직접 SSO가 가능합니다.
SAML은 OpenID Connect와 유사하지만 일반적으로 엔터프라이즈 환경에서 사용됩니다. OpenID Connect는 소비자 웹사이트 및 웹/모바일 앱에서 더 일반적입니다.
https://hackernoon.com/demystifying-oauth-2-0-and-openid-connect-and-saml-12aa4cf9fdba에서 자세히 알아보세요.