# 개발자가 아닌 관리자가 익명화된 계정의 IP 필드를 초기화할 수 없는 이유는 무엇인가요?

**URL:** https://meta.discourse.org/t/why-cant-non-developers-admins-reset-the-ip-field-of-anonymized-accounts/276050
**Category:** Support
**Tags:** anonymization
**Created:** [7월 23, 2020, 2:28오후 UTC](https://meta.discourse.org/t/why-cant-non-developers-admins-reset-the-ip-field-of-anonymized-accounts/276050 "2020-07-23T14:28:01Z")
**Posts on this page:** 5
**Page:** 1

<div class="post-metadata">

### Author: ![Newuser](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/newuser/32/184725_2.png) [@Newuser](https://meta.discourse.org/u/Newuser)
#### Post date: [7월 23, 2020, 2:28오후 UTC](https://meta.discourse.org/t/why-cant-non-developers-admins-reset-the-ip-field-of-anonymized-accounts/276050/1 "2020-07-23T14:28:01Z")

</div>

> [@eviltrout](#):
>
> Discourse는 익명 사용자와 연결된 로그에 사용자의 IP 주소를 보관합니다. 그러나 개발자를 위해 이러한 정보를 지우는 새로운 메커니즘도 제공됩니다.

이것이 개발자에게만 제공되는 이유는 무엇인가요? 옵션이 존재한다면 왜 버튼을 만들지 않는 걸까요?

저는 이렇게 시도해 보았습니다:

```plaintext
cd /var/discourse
./launcher enter app
rails c
```

그리고 나서

```plaintext
user = User.find_by_username("username_of_the_user_here")
UserAnonymizer.make_anonymous(user, nil, anonymize_ip => '0.0.0.0')
user.save!
```

하지만 아무런 효과가 없습니다. 누군가 도와줄 수 있을까요? 저는 GDPR을 준수하고 제게 요청한 사용자의 IP 주소를 익명화하려는 관리자일 뿐입니다.  
하지만 이를 수행하는 방법에 대한 문서를 찾을 수 없습니다.

---

<div class="post-metadata">

### Author: ![eviltrout](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/eviltrout/32/5275_2.png) [@eviltrout](https://meta.discourse.org/u/eviltrout)
#### Post date: [7월 23, 2020, 3:09오후 UTC](https://meta.discourse.org/t/why-cant-non-developers-admins-reset-the-ip-field-of-anonymized-accounts/276050/2 "2020-07-23T15:09:47Z")

</div>

> [@Newuser](#):
>
> 이 기능은 개발자에게만 제공되는 건가요? 옵션이 있는 것이라면, 버튼도 만들어 제공하면 안 되나요?

이것은 극적인(위험한) 작업이므로, 사람들이 기존 시스템에 신중하고 숙고하여 통합할 수 있도록 하고 싶습니다. 사용자는 GDPR 준수 기준이 자신의 조직 표준과 일치하는지 확인해야 합니다.

코드에 대해서는 `user.save`를 호출할 필요가 없습니다. 익명화 클래스가 대신 처리해 주므로요. 그래도 코드는 작동할 것입니다. 어떻게 확인해서 작동하지 않는다고 판단하신 건가요?

---

<div class="post-metadata">

### Author: ![Newuser](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/newuser/32/184725_2.png) [@Newuser](https://meta.discourse.org/u/Newuser)
#### Post date: [7월 23, 2020, 3:38오후 UTC](https://meta.discourse.org/t/why-cant-non-developers-admins-reset-the-ip-field-of-anonymized-accounts/276050/3 "2020-07-23T15:38:12Z")

</div>

답변 감사합니다!

> [@eviltrout](#):
>
> 그렇지 않음을 어떻게 확인하셨나요?

죄송합니다, 첫 번째 문장 입력 후 엔터를 충분히 누르지 않았습니다. (첫 번째 문장이 실행되는 동안 두 번째 문장을 이미 입력해 버린 것이죠). 하지만 엔터를 충분히 누르면 다음 에러가 발생합니다:

> [@](#):
>
> [3] pry(main)\> UserAnonymizer.make\_anonymous(user, nil, anonymize\_ip =\> “0.0.0.0”) NameError: undefined local variable or method `anonymize\_ip’ for main:Object

그래서 이렇게 변경했습니다:

```plaintext
UserAnonymizer.make_anonymous(user, nil, {anonymize_ip: "0.0.0.0"}) 
```

이제 잘 작동합니다!

---

<div class="post-metadata">

### Author: ![riking](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/riking/32/170938_2.png) [@riking](https://meta.discourse.org/u/riking)
#### Post date: [7월 23, 2020, 4:18오후 UTC](https://meta.discourse.org/t/why-cant-non-developers-admins-reset-the-ip-field-of-anonymized-accounts/276050/4 "2020-07-23T16:18:57Z")

</div>

다른 사람들을 위해 완전히 준비된 양식입니다:

```plaintext
UserAnonymizer.make_anonymous(User.find_by_username_or_email("=USERNAME="), nil, anonymize_ip: "0.0.0.0") 

```

---

<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: [8월 21, 2023, 3:15오후 UTC](https://meta.discourse.org/t/why-cant-non-developers-admins-reset-the-ip-field-of-anonymized-accounts/276050/5 "2023-08-21T15:15:45Z")

</div>

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