업로드된 아바타가 허용된 그룹에 모두 추가되지 않으면 프로필 사진을 업로드할 수 없음

커스텀 프로필 사진을 업로드하려고 하는 사용자가 있습니다. 하지만 업로드가 되지 않습니다. 다른 사용자들에게서 이런 문제를 본 적이 없습니다. 해당 사용자는 신뢰 수준 2입니다. 하지만 신뢰 수준 0에도 업로드된 프로필 사진 사용이 허용되어 있습니다.

제가 놓치고 있거나 알지 못하는 다른 설정이 있는지 아는 분이 있을까요? 도움을 주시면 감사하겠습니다. 아래에 스크린샷을 첨부합니다.

사용자로 로그인한 상태의 스크린샷:

관리자 설정 스크린샷:

image

사용자 상세 정보 스크린샷:

허용된 확장 프로그램은 어떻게 되나요? 이미지 업로드가 가능한가요?

우리에게는 수천 명의 사용자가 있으며, 다른 사람들은 이미지를 문제 없이 업로드할 수 있으므로, 이는 승인된 확장 파일 형식과 관련이 없다고 생각합니다. 이 사용자는 아예 업로드 옵션조차 보이지 않습니다.

여러 개의 파일을 시도해 보았나요? 제 첫 번째 추측은 파일 크기인데, 해상도나 파일 용량 자체일 수 있습니다.

해당 사용자가 생성될 때 특별한 사항이 있나요? DiscourseConnect를 사용하고 계신가요? discourse connect overrides avatar 옵션도 사용자가 아바타를 업로드하는 것을 방지합니다.

아니요 - 업로드 옵션이 아예 없습니다.

저희는 DiscourseConnect를 사용하고 있지만, 다른 사용자들은 아무 문제가 없습니다.

안전 모드가 어떤 차이를 만듭니까?

이 사용자의 DiscourseConnect에서 비정상적인 로그 활동은 확인되지 않습니다:

[2024-05-30 01:59:26] sso_provider.INFO: parse_request.success {"user_id":169965}

우리는 WordPress 아바타를 사용하지 않습니다. 이는 Discourse 내에서 완전히 제어되어야 합니다:

image

안전 모드에 효과가 없습니다.

다른 브라우저와/또는 시크릿 창을 사용해 보세요.

다른 브라우저에서는 동작하지 않습니다. 이는 분명 권한 문제입니다. 그리고 상황이 더 복잡해진 이유는 방금 다른 사용자 몇 명을 테스트해 본 결과, 관리자(제가 볼 때)를 제외한 모든 사용자에게 동일한 문제가 발생하고 있는 것 같기 때문입니다.

시스템에서 할당한 옵션만 표시됩니다.

관리자 권한으로는 다른 옵션들을 볼 수 있습니다:

좋아요, 해결 방법을 찾았어요. 프로필 사진을 업로드할 수 있는 허용 그룹 목록에 사용자가 속할 수 있는 모든 신뢰 수준과 모든 가능한 그룹을 추가했습니다:

그런데 이전에는 trust_level_0로만 설정되어 있어서, 신뢰 수준이 TL0보다 높은 사용자는 프로필 사진을 업로드할 수 없었어요. 다만 이상한 점은 사용자 프로필을 보면, 이후 더 높은 신뢰 수준으로 승격되었더라도 모든 사용자가 이 그룹에 포함되어 있다는 거예요. 최근 릴리스에서 뭔가 변경된 건가요? 업로드에 필요한 수준으로 TL0을 지정하면, 자동으로 더 높은 신뢰 수준에게도 동일한 권한이 부여되는 것처럼 보입니다.

trust_level_0은 uploaded_avatars_allowed_groups의 기본 값입니다.

예상하신 대로 모든 사용자는 tl0에 속해 있습니다.

커밋을 확인하지 않은 상태에서 추측하자면, 버그가 있거나, 더 가능성이 높지만 과거에 버그가 있었고 업데이트로 수정될 것입니다.

그것이 의도된 동작 방식입니다.

정확한 커밋을 공유해 주시고, 해당 커밋 바로 전((그리고 아마도 후)의 커밋 제목들을 살펴봐 주시면 좋겠습니다.

이것이 버그라면 더 많은 관심을 끌기 위해 제목을 수정했습니다.

좋습니다. 현재 버전은 3.2.1이며, 정확한 커밋은 여기 있습니다: Commits · discourse/discourse · GitHub

글쎄요, 잘 모르겠네요. 최신 버전으로 업그레이드해 보면 문제가 해결될지 모르겠어요.

명백한 원인으로 보이는 커밋은 찾지 못했어요.

제 사이트 중 하나에서는 문제를 재현할 수 없어요.

이건 아마 stable인 경우 그룹 가시성 관련 문제일 수 있습니다.

그룹 설정에서 TL0 그룹의 가시성을 '모두’로 변경해 보고, 원하는 효과가 있는지 확인해 볼 수 있을까요? (그리고 uploaded_avatars_allowed_groups를 TL0만 있도록 초기화해 주세요)

TL2가 있는 테스트 사용자로 내 Stable 인스턴스에서 테스트해 보았습니다. 재현할 수 없었습니다. 제 테스트 사용자는 아바타 업로드에 문제가 없습니다.

Discourse Stable 3.2.2

그룹 설정은 기본값인 것으로 생각됩니다.

TL0 그룹의 가시성을 직원만 또는 아무도 안 보게로 설정하면 버그가 발생합니까?

감사합니다, @Firepup650

TL0 그룹 가시성이 Group owners and moderators(그룹 소유자와 관리자)로 설정되어 있었습니다. 이를 Everyone(모두)으로 변경하면 문제가 해결됩니다. 따라서 불행히도 신뢰 레벨(TL) 구성원을 숨기면서 동시에 사용자가 자신의 아바타를 자유롭게 선택할 수 있게 하는 것은 불가능합니다. 그룹에 속해 있거나 안 있는 것일 뿐인데, 왜 한쪽이 다른 쪽에 영향을 주는지 이상하게 느껴집니다.

어쨌든, 필요하다면 이 상태로 유지하겠습니다. 적어도 원인을 알게 되었으니요. 커뮤니티에서 불필요한 논쟁이 벌어질 수 있으므로 신뢰 레벨 그룹은 숨긴 채, 다른 그룹만 추가하여 사용자가 아바타를 수정할 수 있도록 하겠습니다.