기본 관리자 계정에 '스태프' 또는 '관리자' 그룹 권한이 초기에 부여되지 않습니다

수정: 기본 관리자가 프로필에 admin: yes로 표시되어 있음에도 불구하고 초기에 ‘staff’ 또는 ‘admin’ 그룹에 추가되지 않는 것이 문제입니다.


새로운 테스트 인스턴스를 테스트하던 중, 채팅을 활성화한 후 기본 관리자가 말풍선(chat bubble)을 볼 수 없고 채팅/브라우저/열기(chat/browse/open)를 시도하면 /latest로 되돌려지는 것을 확인했습니다.

chat_allowed_groups은 다음과 같이 설정되어 있었습니다:

Screenshot 2022-10-04 at 12.19.22 PM

따라서 해당 사용자는 반드시 채팅을 볼 수 있어야 합니다.

TL4에 해당 사용자를 추가하면 채팅 말풍선이 나타납니다. 관리자에게서 TL4를 제거하면 다시 접근 권한을 잃습니다.

2.9.0 beta 10 (cf646b2061), 채팅 v0.4.

3개의 좋아요

이전에 비슷한 내용을 본 것 같습니다. staff와 admins를 모두 추가한 것이 문제인가요? 그중 하나를 제거하면 관리자가 신뢰 수준이 올라가지 않고도 채팅할 수 있을까요?

1개의 좋아요

두 가지 조합을 모두 시도해 보았지만, 어느 것도 문제를 해결하지 않습니다:


2개의 좋아요

음… 아직 제가 직접 재현하지 못했습니다.

해당 사용자에게 “developer” 역할이 있나요?

어떤 커밋의 chat인가요? (컨테이너에 들어가서 확인하는 것 외에 더 나은 방법이 있는지 확실하지 않습니다)

관리자 페이지의 사용자 페이지에서 “Groups” 항목에 뭐라고 표시되나요?

그리고 Admin? 그리고 Moderator? 항목에는 뭐라고 표시되나요?

1개의 좋아요

이번 아침에 DO에서 수동으로 구축한 새로운 인스턴스입니다. 저는 사실상 현재 기본 제공(아웃 오브 박스) 경험을 테스트하고 있습니다. 자동 TL 그룹 멤버십은 있지만, 사용자 정의 그룹은 없습니다. 관리자 권한은 있고, 모더레이터 권한은 없습니다. 새로운 인스턴스의 기본 관리자이므로 기본 설정을 따르고 있습니다.

채팅 커밋 c77dc37a

2개의 좋아요

그렇다면 자동 “staff”(스태프)와 “admins”(관리자) 그룹 멤버십도 표시되나요?

1개의 좋아요

DO에서 채팅 플러그인을 설치한 새 자체 호스팅 사이트를 구축했고, 저에게도 동일한 문제가 발생했음을 확인했습니다:

  • 표준 설치 가이드를 따라 설치 (Chat 플러그인을 app.yml에 편집하여 추가)
  • 관리자 등록
  • 설정 마법사 완료 (첫 3단계)
  • 플러그인 페이지에서 Chat 활성화
  • staff admins trust_level_3 trust_level_4 추가
  • 페이지 새로고침

  • 화면에 채팅 버블이 표시되지 않음
  • /chat/browse가 Latest로 리디렉션됨

기타 참고 사항:

  • 허용된 채팅 그룹에 staff만 있어도 이 관리자 사용자에게 채팅이 표시되지 않음

  • 해당 사용자를 модератор(모더레이터)로 설정하면 채팅이 활성화됨
  • 모더레이터 권한을 부여했다가 제거한 후에도 이 관리자 사용자에게 채팅은 여전히 활성화된 상태입니다
2개의 좋아요

자동 그룹이 적용되지 않는 것 같습니다. 방금 다른 인스턴스를 하나 더 띄웠는데, 기본 관리자 계정에는 신뢰 수준만 있고 'staff’나 ‘admin’ 그룹이 없습니다. 관리자를 모더레이터로 만들거나 다른 관리자를 생성하면 해당 멤버십이 트리거됩니다. 이 문제를 해결하기 위해 사이드킥(Sidekiq) 작업이 실행될지 확인하려고 인스턴스를 밤새 두는 것도 유혹이었지만, 새 인스턴스의 유일한 관리자 계정이 이런 상태로 얼마나 오래 있어도 안 되는 문제이므로 그러지는 않았습니다.

결국 문제는 채팅보다는 새 인스턴스에서 기본 관리자의 멤버십 설정에 있는 것 같습니다… 이 토픽 이름을 변경하고 chat 태그를 제거하겠습니다.

2개의 좋아요

이것이 새로운 문제인가요? 새로운 관리자는 관리자이자 모더레이터여야 한다는 것을 제안하고 계신 건가요? 이것이 오래전부터 내려진 설계 결정인지, 아니면 최근에 변경된 사항인지 궁금합니다.

채팅과 관련하여, 관리자 사용자는 사이트의 다른 모든 콘텐츠에 접근할 수 있듯이, chat allowed groups에 나열되어 있지 않더라도 모든 채팅에 접근할 수 있어야 한다고 생각합니다.

우연히 이번 주에 새로운 사용자 경험(New User Experience)을 살펴보고 있었는데, 새 사이트에서 그룹 페이지가 처음 방문하는 비스태프(non-staff) 사용자에게 혼란을 줄 수 있다는 점을 발견했습니다. 이 페이지는 내용이 빈약하고, 목록에는 모더레이터 그룹만 표시되며, 모더레이터 그룹에는 아무 멤버도 없습니다.

기본 관리자(admin)는 admins 그룹과 staff 그룹의 멤버여야 합니다. 오늘 제가 생성한 인스턴스에서는 그렇지 않았습니다. 초기에는 TL0과 TL1 그룹에만 소속되어 있었고, TL4를 추가하면 채팅에서 관찰했던 증상이 해결되었지만 근본 원인은 해결되지 않았습니다.

수동으로 해당 사용자를 moderator로 추가하면 staff 그룹 멤버십이 부여되었습니다. 다른 관리자를 추가하면 멤버십이 올바르게 수정되었습니다.

2개의 좋아요

조금 늦었지만, 두 번째 인스턴스를 띄운 후 이제 스크린샷을 추가합니다 :slight_smile: 이는 새로 설치한 환경의 관리자 사용자 페이지입니다:

기존 테스트 사이트의 페이지와 비교해 보세요:


거기에 가 있는 동안 /sidekiq로 이동하여 Jobs::EnsureDbConsistency를 실행해 보니, 올바른 자동 그룹이 채워졌습니다. 다만 @Stephen이 이전에 말했듯이, 처음 시작할 때부터 준비되어 있어야 합니다.

4개의 좋아요

이 문제를 위한 핵심 수정 사항을 방금 병합했습니다. 이전에는 이 자동 그룹에 의존하는 설정이 적어서 이 문제를 알아차리지 못했을 가능성이 높지만, 이제 일반적으로 group_list 사이트 설정을 사용하는 방향으로 나아가고 있으므로 이번 수정이 도움이 될 것입니다:

7개의 좋아요

다른 문제를 위해 새로 하나를 만들어 봤는데, 이제 관리자가 즉시 자동 스태프 및 관리자 그룹에 추가되는 것을 확인했습니다. :+1:

6개의 좋아요

이 주제는 22시간 후 자동으로 닫혔습니다. 더 이상 새 답변을 작성할 수 없습니다.