# \[유료\] 사용자 이메일 자동 변경

**URL:** https://meta.discourse.org/t/paid-automatically-change-user-email/133146
**Category:** Marketplace
**Created:** [11월 11, 2019, 8:51오후 UTC](https://meta.discourse.org/t/paid-automatically-change-user-email/133146 "2019-11-11T20:51:32Z")
**Posts on this page:** 19
**Page:** 1

<div class="post-metadata">

### Author: ![hosna](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/hosna/32/99969_2.png) [@hosna](https://meta.discourse.org/u/hosna)
#### Post date: [11월 11, 2019, 8:51오후 UTC](https://meta.discourse.org/t/paid-automatically-change-user-email/133146/1 "2019-11-11T20:51:32Z")

</div>

관리자 API 호출을 통해 확인 이메일을 보내지 않고도 사용자 이메일을 자동으로 변경할 수 있기를 원합니다. 이 플러그인을 오픈소스로 공개하거나, 메인 개발자가 이러한 기능을 추가하기를 원한다면 코어 Discourse에 풀 리퀘스트로 병합되는 것도 괜찮습니다.

제 사용 사례는 제가 자체 코드로 사용자 이메일을 검증하기 때문에, Discourse를 통해 추가적인 검증을 받을 필요가 없다는 것입니다.

---

<div class="post-metadata">

### Author: ![pfaffman](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/pfaffman/32/120154_2.png) [@pfaffman](https://meta.discourse.org/u/pfaffman)
#### Post date: [11월 11, 2019, 10:08오후 UTC](https://meta.discourse.org/t/paid-automatically-change-user-email/133146/2 "2019-11-11T22:08:11Z")

</div>

> [@hosna](#):
>
> 이 플러그인이 오픈소스로 공개되는 데는 문제가 없습니다.

플러그인이 필요한 것이 아니라, API가 원하는 대로 동작하도록 코드를 수정해야 합니다.

어떤 언어로 코드를 작성하고 있나요?

예산이 있나요?

---

<div class="post-metadata">

### Author: ![Stephen](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/stephen/32/95011_2.png) [@Stephen](https://meta.discourse.org/u/Stephen)
#### Post date: [11월 11, 2019, 10:13오후 UTC](https://meta.discourse.org/t/paid-automatically-change-user-email/133146/3 "2019-11-11T22:13:48Z")

</div>

> [@hosna](#):
>
> 저는 직접 작성한 코드로 사용자 이메일을 검증하고 있습니다. 따라서 Discourse에 의한 추가적인 검증을 요청할 필요가 없습니다.

외부에서 이메일을 검증하는 것은 SSO를 의미합니까? 그렇다면 콜백에서 이메일이 이미 검증되었음을 포함해야 합니다.

---

<div class="post-metadata">

### Author: ![hosna](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/hosna/32/99969_2.png) [@hosna](https://meta.discourse.org/u/hosna)
#### Post date: [11월 11, 2019, 10:14오후 UTC](https://meta.discourse.org/t/paid-automatically-change-user-email/133146/4 "2019-11-11T22:14:31Z")

</div>

> [@pfaffman](#):
>
> 플러그인이 필요한 것이 아니라, API가 원하는 대로 동작하도록 코드를 수정해야 합니다.

제가 아는 한, Discourse에는 확인 없이 사용자 이메일을 수정하는 API 호출이 없습니다. 이를 수행하기 위한 [셸 명령어](https://meta.discourse.org/t/change-users-email-without-verification/66602/7?u=hosna)는 있지만, 제 상황에는 적합하지 않습니다.

> [@pfaffman](#):
>
> 코드는 어떤 언어로 작성되어 있나요?

PHP로 직접 API를 작성했습니다.

> [@pfaffman](#):
>
> 예산이 있나요?

정확히 얼마나 걸리는지 잘 모르겠습니다. 해당 코드는 이미 셸 명령어로 코어에 구현되어 있습니다. 이를 API로 제공하려면 얼마나 소요되는지 확신할 수 없습니다.

---

<div class="post-metadata">

### Author: ![Stephen](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/stephen/32/95011_2.png) [@Stephen](https://meta.discourse.org/u/Stephen)
#### Post date: [11월 11, 2019, 10:15오후 UTC](https://meta.discourse.org/t/paid-automatically-change-user-email/133146/5 "2019-11-11T22:15:30Z")

</div>

SSO는 이미 외부 이메일 인증을 지원합니다. 예를 들어, WordPress 플러그인은 WordPress가 신원 확인을 담당하는 경우 이를 이미 처리합니다.

---

<div class="post-metadata">

### Author: ![hosna](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/hosna/32/99969_2.png) [@hosna](https://meta.discourse.org/u/hosna)
#### Post date: [11월 11, 2019, 10:15오후 UTC](https://meta.discourse.org/t/paid-automatically-change-user-email/133146/6 "2019-11-11T22:15:40Z")

</div>

> [@Stephen](#):
>
> 외부에서 이메일을 인증하는 경우 SSO를 의미하나요?

아니요, SSO를 구현하지 않았습니다. 다른 방식으로 사용자 이메일을 인증할 뿐이며, 추가 확인 없이 API 호출을 통해 이메일을 변경해야 합니다.

---

<div class="post-metadata">

### Author: ![pfaffman](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/pfaffman/32/120154_2.png) [@pfaffman](https://meta.discourse.org/u/pfaffman)
#### Post date: [11월 11, 2019, 10:28오후 UTC](https://meta.discourse.org/t/paid-automatically-change-user-email/133146/7 "2019-11-11T22:28:23Z")

</div>

> [@hosna](#):
>
> 정확히 얼마나 걸리는지 잘 모르겠습니다. 해당 코드는 이미 코어에 셸 명령어로 구현되어 있습니다. API로 제공하려면 얼마나 걸릴지 확실하지 않아요.

5달러, 50달러, 500달러, 아니면 5000달러가 적정한가요?

코드는 어떤 언어로 작성되었나요?

두 단계 뒤로 물러서서, 무엇을 이루고자 하는지 설명해 주시겠어요?

---

<div class="post-metadata">

### Author: ![Stephen](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/stephen/32/95011_2.png) [@Stephen](https://meta.discourse.org/u/Stephen)
#### Post date: [11월 11, 2019, 10:34오후 UTC](https://meta.discourse.org/t/paid-automatically-change-user-email/133146/8 "2019-11-11T22:34:38Z")

</div>

네, 그런데 왜 IdP/SSO를 구현하지 않는 건가요?

그러면 이 모든 문제가 사라질 텐데요.

---

<div class="post-metadata">

### Author: ![hosna](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/hosna/32/99969_2.png) [@hosna](https://meta.discourse.org/u/hosna)
#### Post date: [11월 11, 2019, 10:43오후 UTC](https://meta.discourse.org/t/paid-automatically-change-user-email/133146/9 "2019-11-11T22:43:04Z")

</div>

> [@pfaffman](#):
>
> 5달러, 50달러, 500달러, 5,000달러 중 어느 정도 가치가 있을까요?

50달러에서 500달러 사이의 것을 찾고 있습니다 😃

> [@pfaffman](#):
>
> 코드는 어떤 언어로 작성되었나요?

말씀드린 대로, 제 API는 PHP로 작성되었습니다.

> [@pfaffman](#):
>
> 두 단계 뒤로 물러서서, 어떤 것을 이루고 싶은지 설명해 주시겠어요?

애플리케이션이 있고, 제 포럼은 해당 애플리케이션의 사용자 프로필과 연결되어 있습니다. 사용자는 제 애플리케이션 내에서 이메일 주소를 변경할 수 있으며, 저는 Discourse 사용자 이메일 주소도 자동으로 변경되도록 하고 싶습니다.

> [@Stephen](#):
>
> 좋아요, 그런데 왜 IdP/SSO를 구현하지 않나요?

죄송하지만 IdP가 무엇인지 잘 모르겠습니다. SSO의 경우, 이미 대규모 사용자 기반을 가지고 있기 때문에 제 Discourse에 SSO를 구현하면 현재 사용자 계정이 깨지고 다시 본인 확인을 해야 할 것입니다. 저는 그걸 원하지 않습니다. 그리고 제 문제는 API 호출을 통해 확인 절차 없이 이메일 주소를 변경할 수만 있다면 쉽게 해결될 것입니다.

---

<div class="post-metadata">

### Author: ![Stephen](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/stephen/32/95011_2.png) [@Stephen](https://meta.discourse.org/u/Stephen)
#### Post date: [11월 11, 2019, 10:44오후 UTC](https://meta.discourse.org/t/paid-automatically-change-user-email/133146/10 "2019-11-11T22:44:09Z")

</div>

> [@hosna](#):
>
> 디스코스에 SSO를 구현하면 기존 사용자의 계정이 깨져서 다시 본인 확인을 해야 합니다.

무엇인지도 모르면서 어떻게 그렇게 단정적으로 말할 수 있나요? 궁금합니다.

---

<div class="post-metadata">

### Author: ![hosna](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/hosna/32/99969_2.png) [@hosna](https://meta.discourse.org/u/hosna)
#### Post date: [11월 11, 2019, 10:50오후 UTC](https://meta.discourse.org/t/paid-automatically-change-user-email/133146/11 "2019-11-11T22:50:44Z")

</div>

> [@Stephen](#):
>
> 무엇인지도 모르면서 위 내용을 단정적으로 말할 수 있습니까? 궁금합니다.

죄송합니다. 이 주제에 대한 지식이 제한적이므로 그렇게 단정적으로 말해서는 안 되었습니다. 그러나 제가 이해하기로는, 아래 진술에 따르면 사용자가 SSO 제공자에서 본인 확인을 해야 합니다.

> [@sam](#):
>
> 사용자는 더 이상 Discourse 인증(사용자 이름/비밀번호, 구글 등)을 사용할 수 없습니다.

즉, 사용자가 Discourse에는 등록되어 있지만 SSO 제공자에는 등록되지 않은 경우, SSO를 활성화하면 SSO 제공자에서 등록해야 한다는 뜻인가요? 맞습니까?

---

<div class="post-metadata">

### Author: ![Stephen](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/stephen/32/95011_2.png) [@Stephen](https://meta.discourse.org/u/Stephen)
#### Post date: [11월 12, 2019, 12:29오전 UTC](https://meta.discourse.org/t/paid-automatically-change-user-email/133146/12 "2019-11-12T00:29:13Z")

</div>

배포할 SSO로 사용자 목록을 내보내는 걸 막고 있는 건 뭔가요?

현재 이메일 주소를 어떻게 검증하고 있는지, 그리고 왜 위에서 언급한 방식이 정말로 필요한지에 대해 자세히 설명하지 않으셨습니다. Jay의 질문에 몇 가지 답변해 주신다면, 이 모든 것을 더 간단한 방법으로 달성할 수 있을지도 모릅니다.

외부에서 이메일을 직접 검증한 뒤 Discourse 데이터베이스를 조작하는 코드를 의존하는 대신, 검증 과정을 Discourse에 맡기는 건 어떨까요?

---

<div class="post-metadata">

### Author: ![hosna](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/hosna/32/99969_2.png) [@hosna](https://meta.discourse.org/u/hosna)
#### Post date: [11월 12, 2019, 5:38오전 UTC](https://meta.discourse.org/t/paid-automatically-change-user-email/133146/13 "2019-11-12T05:38:08Z")

</div>

> [@Stephen](#):
>
> 배포하려는 SSO로 사용자 목록을 내보내는 것을 막고 있는 것은 무엇인가요?

비밀번호와 함께 내보낼 수 있나요? 가능하면 해당 문서가 있는지 알려주세요.

> [@Stephen](#):
>
> 현재 이메일 주소를 어떻게 검증하는지 구체적으로 설명하지 않았습니다

Discourse처럼 이메일 확인을 위해 이메일 링크를 보내고 있습니다.

> [@Stephen](#):
>
> 왜 이메일을 직접 검증하는 대신 Discourse에 검증을 맡기지 않나요?

그렇게 하고 싶었습니다. 문제는 이메일 확인 여부를 즉시 파악해야 한다는 점입니다. 그러나 Discourse에는 [이메일/사용자명](https://meta.discourse.org/t/webhook-doesnt-send-anything-when-email-username-updated/132623/3)이 변경될 때 작동하는 사용자 웹훅이 없었습니다.

---

<div class="post-metadata">

### Author: ![Stephen](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/stephen/32/95011_2.png) [@Stephen](https://meta.discourse.org/u/Stephen)
#### Post date: [11월 12, 2019, 6:26오전 UTC](https://meta.discourse.org/t/paid-automatically-change-user-email/133146/14 "2019-11-12T06:26:55Z")

</div>

> [@hosna](#):
>
> 디스코어처럼, 이메일 인증을 위해 이메일 링크를 보냅니다.

그렇다면 왜 디스코어가 SSO를 처리하도록 하고, 디스코어에서 신원만 가져오지 않나요? 그러면 이메일 인증을 다시 걱정할 필요가 전혀 없습니다.

여기서 전체적인 상황을 제공하지 않고, 단순히 인식된 해결책만을 요구하고 있습니다. 이메일 인증을 우회하는 수단을 원치 않는 데에는 많은 합당한 이유가 있습니다. 서로 다른 시스템을 따로 운영하면 앞으로 불필요한 작업이 많이 생길 것입니다.

---

<div class="post-metadata">

### Author: ![hosna](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/hosna/32/99969_2.png) [@hosna](https://meta.discourse.org/u/hosna)
#### Post date: [11월 12, 2019, 6:48오전 UTC](https://meta.discourse.org/t/paid-automatically-change-user-email/133146/15 "2019-11-12T06:48:34Z")

</div>

> [@Stephen](#):
>
> 그렇다면 왜 Discourse가 SSO를 처리하도록 하지 않나요?

Discourse가 전화 인증을 지원하지 않기 때문입니다. 이메일과 전화 인증/검증을 동시에 처리할 수 있는 도구가 필요합니다.

---

<div class="post-metadata">

### Author: ![michaeld](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/michaeld/32/1594_2.png) [@michaeld](https://meta.discourse.org/u/michaeld)
#### Post date: [11월 13, 2019, 7:05오후 UTC](https://meta.discourse.org/t/paid-automatically-change-user-email/133146/16 "2019-11-13T19:05:07Z")

</div>

좋습니다. 결론부터 말하자면 - OP가 필요한 것을 잘 알고 있으므로, 이메일을 보내거나 다른 형태의 활성화 과정 없이 사용자의 이메일 주소를 변경할 수 있는 API 호출을 제공하는 플러그인을 200달러에 납품할 수 있습니다.

---

<div class="post-metadata">

### Author: ![hosna](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/hosna/32/99969_2.png) [@hosna](https://meta.discourse.org/u/hosna)
#### Post date: [11월 13, 2019, 7:10오후 UTC](https://meta.discourse.org/t/paid-automatically-change-user-email/133146/17 "2019-11-13T19:10:49Z")

</div>

네, 저한테는 괜찮습니다.

---

<div class="post-metadata">

### Author: ![michaeld](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/michaeld/32/1594_2.png) [@michaeld](https://meta.discourse.org/u/michaeld)
#### Post date: [11월 24, 2019, 8:21오전 UTC](https://meta.discourse.org/t/paid-automatically-change-user-email/133146/19 "2019-11-24T08:21:05Z")

</div>

OP은 여러분 모두와 플러그인을 공유하는 데 문제없다고 했으니, 여기 있습니다:

> **[GitHub - communiteq/discourse-change-email](https://github.com/communiteq/discourse-change-email)**
>
> Contribute to communiteq/discourse-change-email development by creating an account on GitHub.

---

<div class="post-metadata">

### Author: ![system](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/system/32/443519_2.png) [@system](https://meta.discourse.org/u/system)
#### Post date: [12월 24, 2019, 8:23오전 UTC](https://meta.discourse.org/t/paid-automatically-change-user-email/133146/20 "2019-12-24T08:23:59Z")

</div>

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.
