# \`sso overrides groups\`가 Oauth2와 함께 작동하나요?

**URL:** https://meta.discourse.org/t/does-sso-overrides-groups-work-with-oauth2/175606
**Category:** SSO
**Created:** [1월 9, 2021, 4:08오후 UTC](https://meta.discourse.org/t/does-sso-overrides-groups-work-with-oauth2/175606 "2021-01-09T16:08:48Z")
**Posts on this page:** 14
**Page:** 1

<div class="post-metadata">

### Author: ![mattdm](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/mattdm/32/216484_2.png) [@mattdm](https://meta.discourse.org/u/mattdm)
#### Post date: [1월 9, 2021, 4:08오후 UTC](https://meta.discourse.org/t/does-sso-overrides-groups-work-with-oauth2/175606/1 "2021-01-09T16:08:48Z")

</div>

이 기능을 사용하려고 합니다. 현재 비즈니스 호스팅 플랜을 사용하고 있어 SAML을 사용할 수 없으므로, Oauth2 / OpenID Connect를 사용 중입니다. 모든 설정이 올바르게 완료되었다고 생각하는데(`sso overrides groups`가 켜져 있고, `oauth2 scope`는 `openid profile email https://id.fedoraproject.org/scope/groups`로 설정되어 있음).

Discourse가 SSO라는 용어를 어떻게 사용하는지, 그리고 어떤 옵션이 어디에 표시되는지에 대해 조금 혼란스럽습니다. 다만, `sso overrides username`은 사용 중이며 정상적으로 작동합니다. 이 기능도 동일하게 작동할 것으로 기대해도 될까요?

---

<div class="post-metadata">

### Author: ![simon](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/simon/32/339122_2.png) [@simon](https://meta.discourse.org/u/simon)
#### Post date: [1월 9, 2021, 7:10오후 UTC](https://meta.discourse.org/t/does-sso-overrides-groups-work-with-oauth2/175606/2 "2021-01-09T19:10:50Z")

</div>

`sso overrides groups` 설정은 OAuth2와 함께 작동하지 않습니다. 이 설정은 Discourse의 자체 SSO 구현에서만 작동합니다: [Setup DiscourseConnect - Official Single-Sign-On for Discourse (sso)](https://meta.discourse.org/t/discourseconnect-official-single-sign-on-for-discourse-sso/13045). 이 문제를 둘러싼 혼란을 피하기 위해 [Discourse SSO](https://meta.discourse.org/t/13045?silent=true)를 [DiscourseConnect](https://meta.discourse.org/t/13045?silent=true)로 이름 변경하는 작업을 진행 중입니다.

---

<div class="post-metadata">

### Author: ![mattdm](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/mattdm/32/216484_2.png) [@mattdm](https://meta.discourse.org/u/mattdm)
#### Post date: [1월 9, 2021, 7:24오후 UTC](https://meta.discourse.org/t/does-sso-overrides-groups-work-with-oauth2/175606/4 "2021-01-09T19:24:11Z")

</div>

아니, 그건 좀 불운하네요. 이름 변경은 혼란을 줄이는 데 분명 도움이 되겠지만, 제 필요에는 맞지 않아요. 이 제한은 의도적인 건가요, 아니면 아직 구현되지 않은 건가요?

---

<div class="post-metadata">

### Author: ![simon](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/simon/32/339122_2.png) [@simon](https://meta.discourse.org/u/simon)
#### Post date: [1월 9, 2021, 7:34오후 UTC](https://meta.discourse.org/t/does-sso-overrides-groups-work-with-oauth2/175606/5 "2021-01-09T19:34:48Z")

</div>

> [@mattdm](#):
>
> 이 제한은 의도적인 것인가요, 아니면 아직 구현되지 않은 것인가요?

해당 설정은 OAuth2 로그인에 사용되는 것과 다른 코드 경로를 사용합니다. OAuth2를 통한 그룹 동기화는 아직 구현되지 않았습니다. Discourse 그룹을 외부 사이트의 그룹과 동기화할 수 있는 기능은 Discourse에서 다양한 용도로 활용될 수 있으므로, 향후 구현될 수 있기를 바랍니다. 현재로서는 API를 통해 그룹 멤버십을 관리하는 것이 유일한 방법입니다.

---

<div class="post-metadata">

### Author: ![mattdm](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/mattdm/32/216484_2.png) [@mattdm](https://meta.discourse.org/u/mattdm)
#### Post date: [1월 11, 2021, 11:11오후 UTC](https://meta.discourse.org/t/does-sso-overrides-groups-work-with-oauth2/175606/6 "2021-01-11T23:11:49Z")

</div>

OAuth2에서 `groups`를 구현하기 위한 초기 패치가 몇 가지 있습니다:

> <https://github.com/puiterwijk/discourse/commit/1bd570e7ef9982dfb91becf371a056066f3cfc08>
>
> Signed-off-by: Patrick Uiterwijk \<patrick@puiterwijk.org\>

> <https://github.com/puiterwijk/discourse-oauth2-basic/commit/a9a6bcb15d17c48404d356e6b55d77628213538e>
>
> Signed-off-by: Patrick Uiterwijk \<patrick@puiterwijk.org\>

⚠_ **하지만** _ 호스팅 플랜을 사용 중이라 테스트를 위한 빠른 스테이징 환경이 없으므로, 이 패치들은 완전히 이론적인 상태입니다. 조만간 해당 환경을 구축해 보려 하지만, 이는 아무도 본업으로 하지 않는 일이기 때문에 다른 분들이 리뷰와 테스트를 도와주시면 _정말 훌륭할 것입니다_.

---

<div class="post-metadata">

### Author: ![Falco](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/falco/32/179432_2.png) [@Falco](https://meta.discourse.org/u/Falco)
#### Post date: [1월 11, 2021, 11:15오후 UTC](https://meta.discourse.org/t/does-sso-overrides-groups-work-with-oauth2/175606/7 "2021-01-11T23:15:38Z")

</div>

해당 내용을 저장소에 PR로 제출해 주시면 검토하겠습니다. 병합이 반드시 이루어진다는 보장은 없지만, 최소한 검토는 진행됩니다.

---

<div class="post-metadata">

### Author: ![mattdm](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/mattdm/32/216484_2.png) [@mattdm](https://meta.discourse.org/u/mattdm)
#### Post date: [1월 11, 2021, 11:26오후 UTC](https://meta.discourse.org/t/does-sso-overrides-groups-work-with-oauth2/175606/8 "2021-01-11T23:26:59Z")

</div>

좋아요, 감사합니다. 로컬 테스트나 다른 자원봉사자를 통해 실제로 작동하는지 먼저 확인한 후 ⚠를 제거하겠습니다.

---

<div class="post-metadata">

### Author: ![mattdm](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/mattdm/32/216484_2.png) [@mattdm](https://meta.discourse.org/u/mattdm)
#### Post date: [3월 19, 2021, 8:32오후 UTC](https://meta.discourse.org/t/does-sso-overrides-groups-work-with-oauth2/175606/9 "2021-03-19T20:32:32Z")

</div>

이 작업을 할 시간이 없었습니다(할 수 있는 사람도 찾지 못했구요…). 이 글을 읽고 계신 분들 중 도움이 되고 싶으신 분이 있다면 정말 좋겠습니다.

---

<div class="post-metadata">

### Author: ![david](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/david/32/157490_2.png) [@david](https://meta.discourse.org/u/david)
#### Post date: [3월 19, 2021, 8:37오후 UTC](https://meta.discourse.org/t/does-sso-overrides-groups-work-with-oauth2/175606/10 "2021-03-19T20:37:16Z")

</div>

[Managing group membership via authentication - #14 by mattdm](https://meta.discourse.org/t/managing-group-membership-via-authentication/175950/14?u=david) 가 완료되면, OAuth2 플러그인과 함께 작동하도록 할 것입니다 🙂

---

<div class="post-metadata">

### Author: ![jontrossbach](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/jontrossbach/32/215843_2.png) [@jontrossbach](https://meta.discourse.org/u/jontrossbach)
#### Post date: [8월 13, 2021, 12:06오전 UTC](https://meta.discourse.org/t/does-sso-overrides-groups-work-with-oauth2/175606/11 "2021-08-13T00:06:34Z")

</div>

위에서 링크한 변경 사항을 배포했는데, discourse가 깨지지 않은 것 같습니다. 변경 사항이 아무것도 깨뜨리지 않았는지 확인하기 위해 테스트를 실행하는 방법에 대한 문서가 있나요?

---

<div class="post-metadata">

### Author: ![mattdm](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/mattdm/32/216484_2.png) [@mattdm](https://meta.discourse.org/u/mattdm)
#### Post date: [8월 13, 2021, 12:41오후 UTC](https://meta.discourse.org/t/does-sso-overrides-groups-work-with-oauth2/175606/12 "2021-08-13T12:41:28Z")

</div>

좋아요! 고장 나는 건 차치하고, 실제로 \_동작\_하나요?

---

<div class="post-metadata">

### Author: ![jontrossbach](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/jontrossbach/32/215843_2.png) [@jontrossbach](https://meta.discourse.org/u/jontrossbach)
#### Post date: [9월 1, 2021, 10:10오후 UTC](https://meta.discourse.org/t/does-sso-overrides-groups-work-with-oauth2/175606/13 "2021-09-01T22:10:01Z")

</div>

요약하면, Fedora Accounts System(FAS)이나 다른 OIDC 시스템에서 모의 시스템을 사용해 테스트해 보지 않는 한 정확한 답을 알 수 없습니다. 또한 헤드리스 크롬 브라우저에서 실행되는 것으로 보이는 Discourse의 스모크 테스트 사용법에 대해서도 알고 싶지만, 관련 자료를 찾기가 쉽지 않습니다.

Discourse 쪽에서 스모크 테스트를 실행하는 방법을 어디서 찾을 수 있는지 알려 주실 수 있나요?

Fedora 쪽에서 테스트를 위해 모의 FAS 시스템을 제공해 주실 수 있을까요?

---

<div class="post-metadata">

### Author: ![mattdm](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/mattdm/32/216484_2.png) [@mattdm](https://meta.discourse.org/u/mattdm)
#### Post date: [9월 2, 2021, 1:03오전 UTC](https://meta.discourse.org/t/does-sso-overrides-groups-work-with-oauth2/175606/14 "2021-09-02T01:03:11Z")

</div>

음. Fedora 계정 시스템은 … 꽤 방대하네요. (다만 (올해 주요 업그레이드 이후로) 내부적으로는 [FreeIPA](https://www.freeipa.org/page/Main_Page)를 사용하고 있으므로, 이론적으로는 누구나 이와 유사한 것을 만들 수 있습니다.)

아마도 테스트용 Discourse를 실제 Fedora 계정 시스템에 연결해 볼 수 있을까요?

---

<div class="post-metadata">

### Author: ![abompard](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/abompard/32/240531_2.png) [@abompard](https://meta.discourse.org/u/abompard)
#### Post date: [11월 19, 2021, 11:42오전 UTC](https://meta.discourse.org/t/does-sso-overrides-groups-work-with-oauth2/175606/15 "2021-11-19T11:42:31Z")

</div>

여러분 안녕하세요! 스테이징 Oauth2 인스턴스에 여러분을 추가해 드릴 수 있는데, 도움이 될까요?
