로그인하지 않은 상태에서 이 스크린샷을 찍었습니다. 따라서 저는 해당 그룹에 절대 속해 있지 않았지만, 여전히 이 게시글을 볼 수 있었습니다. 모든 답글도 마찬가지입니다. 그렇다면 게시글이 익명 사용자에게도 표시되는 상황에서, 게시글 날짜를 클릭하면 왜 이 안내 메시지가 표시되는 것일까요?
네, 재현해 봤는데 버그인 것 같습니다.
https://meta.discourse.org/c/61/visible_groups.json
을 호출하면
{"success":"OK","groups":["theme_authors"]}
이 반환됩니다.
로그인 상태이든 아니든 관계없이 항상 동일한 응답이 돌아옵니다.
@jamie.wilson 보안 패치의 일부로 제가 아무것도 변경하지 않았다고 생각하는데, 이게 의도된 것인지 아시나요?
저도 재현할 수 있습니다. 몇 주 전에 처음 발견했습니다(통합 공유 다이얼로그가 구현된 시기 정도였죠). 하지만 대수롭지 않게 여겨서 이 문제에 대해 별도 주제를 만들지 않았습니다.
이것은 비공개 카테고리(예: The Lounge)에서 링크를 공유하려고 할 때, 모든 사람이 링크를 클릭하여 콘텐츠를 볼 수 있는 것은 아니라는 점을 상기시키기 위해 표시되도록 의도된 것 같습니다. 하지만 의도된 경우보다 더 많은 상황에서 표시되고 있는 것 같습니다. 이 문제를 #contribute:bug로 넘기겠습니다. ![]()
visible_groups의 로직을 조금 더 다듬어야 할 것 같습니다.
이 경우 theme_authors는 Everyone에게 표시되므로 경고는 불필요합니다.
SECURITY: Category group permissions leaked to normal users. · discourse/discourse@0f7b987 · GitHub
해당 줄이 제거되면서 그 로직이 사라진 것 같습니다. 이제 클라이언트에 해당 정보를 더 이상 노출하지 않으므로 백엔드에서 유사한 로직이 필요합니다.
재현 단계를 알려주셔서 감사합니다! 이 PR에서 버그를 수정했습니다:


