# external\_id를 기준으로 사용자를 업데이트하는 방법은 무엇인가요?

**URL:** https://meta.discourse.org/t/how-can-one-update-a-user-based-on-external-id/176754
**Category:** Support
**Created:** [1월 20, 2021, 11:45오후 UTC](https://meta.discourse.org/t/how-can-one-update-a-user-based-on-external-id/176754 "2021-01-20T23:45:33Z")
**Posts on this page:** 3
**Page:** 1

<div class="post-metadata">

### Author: ![jezra](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/jezra/32/105986_2.png) [@jezra](https://meta.discourse.org/u/jezra)
#### Post date: [1월 20, 2021, 11:45오후 UTC](https://meta.discourse.org/t/how-can-one-update-a-user-based-on-external-id/176754/1 "2021-01-20T23:45:33Z")

</div>

모든 계정은 SSO를 통해 생성되므로 모든 사용자에게 external\_id가 있습니다. 다른 스레드에서 이것이 가능하다고 언급되어 있습니다: [How can I update users via API using the user id (not username)? - #2 by blake](https://meta.discourse.org/t/how-can-i-update-users-via-api-using-the-user-id-not-username/170203/2)

---

<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: [1월 21, 2021, 12:25오전 UTC](https://meta.discourse.org/t/how-can-one-update-a-user-based-on-external-id/176754/2 "2021-01-21T00:25:38Z")

</div>

먼저 사용자의 Discourse user\_id를 조회한 다음, 해당 ID를 사용하여 업데이트 요청을 보내야 합니다. 첫 번째 단계에 도움이 될 링크입니다:

> [@ID 제공자의 '외부 ID'로 사용자 찾기](https://meta.discourse.org/t/find-a-user-by-their-identity-provider-external-id/169723):
>
> bookmark 이 가이드는 API 호출을 사용하여 ID 제공자의 external\_id를 기반으로 Discourse 사용자를 찾는 방법을 설명합니다. person_raising_hand 필요한 사용자 권한: 관리자 외부 인증 시스템을 사용할 때, Discourse는 두 가지 사용자 ID를 추적합니다: Discourse의 user\_id와 ID 제공자의 external\_id입니다. external\_id를 기반으로 Discourse 사용자를 조회해야 하는 경우, 이 #howto(사용법) 글이 적합합니다! 아래에서 이 작업을 수행하는 방법을 배울 수 있습니다. API 설정 먼저, 관리자 API 키가 올바르게 구성되었는지 확인하십시오. Discourse API 설정 및 사용에 대한 자세한 내용은 [Discourse API 문서](https://meta.discourse.org/t/discourse-api-documentation/22706)를 참고하십시오. [DiscourseConnect](https://meta.discourse.org/t/13045?silent=true)[DiscourseConnect](https://meta.discourse.org/t/13045?silent=true)(구 [Discourse SSO](https://meta.discourse.org/t/13045?silent=true))를 사용 중인 경우, 다음 API 호출로 사용자…

---

<div class="post-metadata">

### Author: ![jezra](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/jezra/32/105986_2.png) [@jezra](https://meta.discourse.org/u/jezra)
#### Post date: [1월 21, 2021, 12:49오전 UTC](https://meta.discourse.org/t/how-can-one-update-a-user-based-on-external-id/176754/3 "2021-01-21T00:49:35Z")

</div>

감사합니다. 사용자를 업데이트할 때 API 요청을 두 번 보내는 것을 피하고 싶었는데, 레이트 리밋에 도달하는 문제로 어려움을 겪고 있었기 때문입니다. 다행히도 해결책을 찾은 것 같습니다. user\_event 웹훅을 구성하면, 사용자가 SSO를 통해 Discourse에 로그인할 때 해당 사용자의 Discourse ID와 Discourse 사용자 이름을 로컬에 저장할 수 있습니다. 그러면 Discourse에 업데이트를 요청할 때 저장된 Discourse 사용자 이름을 사용할 수 있습니다.
