관련 항목
고인 커뮤니티 멤버를 위한 모범 사례
보안상의 이유로 해당 고인 사용자를 정지시켰는데, 그러다 보니 검색창에서 그의 사용자 이름이 자동완성되지 않는 것 같습니다.
이 사용자는 우리 커뮤니티에서 가장 활발하게 게시물을 올린 사람이었기 때문에, 이는 결코 이상적이지 않습니다.
사용자를 정지해 두면서도 검색창 및 기타 영역에서 사용자 이름이 자동완성되도록 할 수 있는 방법이 있을까요?
또한, 사용자 정지 사유로 ‘고인(Deceased)’ 옵션을 추가해 주셨으면 합니다.
감사합니다.
실제로 사용자의 검색 결과 노출을 막고 있는 것은 정지(suspension)가 아니라 *비활성화(deactivated)*된 계정인 것 같습니다. 사용자를 정지하되, 계정은 활성화된 상태로 두어 보시기 바랍니다.
정지 대화상자에는 사유를 직접 입력할 수 있는 옵션이 있습니다:
누군가 계정을 다시 활성화하려 할 경우를 대비해, 사용자의 이메일 주소를 suspended123@no-email.invalid 같은 임의의 주소로 변경할 수도 있습니다.
현재 계정은 활성화된 상태로 표시되고 있습니다.
네, 저도 그렇게 사용했지만, '고인(Deceased)'이 유효한 기본 옵션 중 하나여야 하며, 그렇게 해야 계정을 더 적절하게 자동으로 처리할 수 있을 것입니다.
불행히도, 이메일이 인증되지 않은 한 이 변경이 불가능한 것으로 보입니다. 제가 변경을 시도했을 때, 사용자가 이메일에 응답해야 한다고 즉시 알려주었거든요. 이는 적어도 변경을 완료할 때까지 유효한 이메일이어야 함을 의미하는 것 같습니다.
최신 버전을 사용 중이신가요? 아마도 새로운 검색 기능 이 이 동작을 변경했을 수 있지만, 최신 버전으로 업데이트하지 않은 제 Discourse에서는 정지되었다가 활성화된 사용자가 정상적으로 표시됩니다:
내일 최신 버전으로 업데이트한 후, 이 동작이 변경되는지 확인해 알려드리겠습니다.
omarfilip:
최신 버전을 사용하고 계신가요?
저는 최신 릴리스 버전을 사용하고 있습니다. 2.7.8 ( 18b6f4ecf6 ).
관리자 계정이신가요? 관리자(또는 다른 권한)인지 일반 사용자인지에 따라 동작이 달라지는 것 같습니다. (제 포럼에서는) 관리자 사용자는 정지된 사용자 이름을 자동 완성할 수 있지만, 일반 사용자는 그럴 수 없습니다.
네, 저는 관리자입니다. 하지만 일반 사용자 계정으로 로그인해도 정지+활성화된 사용자가 검색 시 자동 입력되도록 할 수 있습니다.
이 문제는 2.8.0.beta6 (d3be77a0d1)에서 발생하고 있으므로, 몇 개의 릴리스가 뒤처져 있습니다.
최신 버전인 2.8.0.beta6 (073e5ccd83)로 업데이트했는데, 원래 설명하신 것과 동일한 동작을 확인했습니다. 관리자(admin)의 경우, 정지(suspended) 상태와 활성(active) 상태 모두에서 검색 시 사용자가 자동 입력되는 반면, 일반 사용자의 경우 자동 입력되지 않습니다.
그렇다면 여전히 남아 있는 질문은, 해당 사용자를 자동 입력에 포함시키면서도 정지 상태를 유지하는 방법이 있는지입니다.
사용자는 당연히 정지된 상태를 유지해야 하지만, 이 사용자는 수천 개의 게시글을 작성했으며, 앞서 언급했듯이 포럼에서 가장 활발하게 글을 올린 사람이었기 때문에 사람들이 그의 글을 쉽게 검색할 수 있도록 해야 합니다.
왜 /dev/random에서 가져온 1메가바이트 크기의 값을 비밀번호로 설정하지 않나요?
해당 사용자가 정지되지 않고 활성화된 상태로 유지되려면, rails 콘솔에서 이메일을 변경할 수 있습니다:
rails c
u = User.find_by_email('user@domain.com')
u.email = 'user@no-email.invalid'
u.save!
비밀번호와 이메일 주소를 악용하여 계정 접근을 방해하는 방식보다는, 그런 방법을 사용하지 않는 해결책을 훨씬 선호합니다. 계정은 정지/비활성화되어야 하지만, 자동완성 기능에서는 여전히 사용 가능해야 합니다.
사실, 게시물이 삭제되지 않고 검색이 가능하기 때문에 정지된 계정 역시 자동완성 목록에 포함되어야 한다고 생각합니다. 정지된 상태이면서 동시에 게시물이 하나도 없는 경우가 아니라면, 왜 제외되는지 이해할 수 없습니다.