# New category permission - "cannot see"/"exclude"

**URL:** https://meta.discourse.org/t/new-category-permission-cannot-see-exclude/50044
**Category:** Feature
**Created:** [9월 12, 2016, 10:46오후 UTC](https://meta.discourse.org/t/new-category-permission-cannot-see-exclude/50044 "2016-09-12T22:46:14Z")
**Posts on this page:** 20
**Page:** 2

<div class="post-metadata">

### Author: ![MakaryGo](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/makarygo/32/187426_2.png) [@MakaryGo](https://meta.discourse.org/u/MakaryGo)
#### Post date: [10월 20, 2017, 2:55오전 UTC](https://meta.discourse.org/t/new-category-permission-cannot-see-exclude/50044/21 "2017-10-20T02:55:15Z")

</div>

I would like to support this. My use case - I have a group of “limited” users; I want them to be able to _read_ most categories, but write only in one, let’s call it “starting cat.”.  
I _can_ of course use existing solution (and trust levels of course), but if I want to have more fine-grained permission system, it gets hectic.  
Instead of setting up permissions like this:

```plaintext
display: everyone
post: everyone NOT greenhorns

```

I have to do something like this:

```yaml
display: everyone
post: Group 1
      Group 2
 (...and basically each and every other group...)
reply: Group a
       Group b
(...and once again...)

```

---

<div class="post-metadata">

### Author: ![robmc](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/robmc/32/125900_2.png) [@robmc](https://meta.discourse.org/u/robmc)
#### Post date: [10월 20, 2017, 11:33오전 UTC](https://meta.discourse.org/t/new-category-permission-cannot-see-exclude/50044/22 "2017-10-20T11:33:05Z")

</div>

@hawk this post was moved into #Community Building when someone misunderstood my request

I think this appears to have some support enough to justify it moving to either #Support or possibly #Contribute > Feature - do you agree?

---

<div class="post-metadata">

### Author: ![jomaxro](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/jomaxro/32/126216_2.png) [@jomaxro](https://meta.discourse.org/u/jomaxro)
#### Post date: [10월 20, 2017, 11:43오전 UTC](https://meta.discourse.org/t/new-category-permission-cannot-see-exclude/50044/23 "2017-10-20T11:43:25Z")

</div>

@robmc, looks like Jeff recategorized this already. Unless I’ve misread this, your request is the same as mine (linked above, long before I joined the Discourse team). Do you mind if the topics are combined, or do you feel yours is different?

---

<div class="post-metadata">

### Author: ![robmc](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/robmc/32/125900_2.png) [@robmc](https://meta.discourse.org/u/robmc)
#### Post date: [10월 20, 2017, 11:50오전 UTC](https://meta.discourse.org/t/new-category-permission-cannot-see-exclude/50044/24 "2017-10-20T11:50:07Z")

</div>

Well, our use cases are similar, but our current proposed solutions look a little different

I don’t mind combining them at all, but I think that your original proposal was to have a single category for putting members into that would stop them being in ‘everyone’ but I would prefer to have logic in the security that allowed us to use “IS NOT” (or can’t / exclude) in the same way we use “IS” (or Can) as I think this would give more flexibility

They are similar issues, but not _quite_ the same and it is possible that a single technical solution would address both, but I’m not sure. Happy to put them together to explore it though

I’m not precious … just wanting to help make this even better for everyone

---

<div class="post-metadata">

### Author: ![jomaxro](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/jomaxro/32/126216_2.png) [@jomaxro](https://meta.discourse.org/u/jomaxro)
#### Post date: [10월 20, 2017, 12:01오후 UTC](https://meta.discourse.org/t/new-category-permission-cannot-see-exclude/50044/25 "2017-10-20T12:01:08Z")

</div>

So my _usecase_ at the time was a single category that I needed to restrict access to, but the _solution_ is the same as you suggested: an “exclude” or “not” security permission for categories.

---

<div class="post-metadata">

### Author: ![robmc](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/robmc/32/125900_2.png) [@robmc](https://meta.discourse.org/u/robmc)
#### Post date: [10월 20, 2017, 12:10오후 UTC](https://meta.discourse.org/t/new-category-permission-cannot-see-exclude/50044/26 "2017-10-20T12:10:12Z")

</div>

SOLD!

🙂

Happy to join forces in that case

---

<div class="post-metadata">

### Author: ![jomaxro](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/jomaxro/32/126216_2.png) [@jomaxro](https://meta.discourse.org/u/jomaxro)
#### Post date: [10월 20, 2017, 12:33오후 UTC](https://meta.discourse.org/t/new-category-permission-cannot-see-exclude/50044/27 "2017-10-20T12:33:05Z")

</div>

I wiki-ed the OP. Feel free to add/edit anything you’d like.

---

<div class="post-metadata">

### Author: ![schungx](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/schungx/32/70989_2.png) [@schungx](https://meta.discourse.org/u/schungx)
#### Post date: [10월 20, 2017, 1:02오후 UTC](https://meta.discourse.org/t/new-category-permission-cannot-see-exclude/50044/28 "2017-10-20T13:02:13Z")

</div>

Having Add+Subtract moves the system into a whole range of potential conflicts requiring resolution. At the least, the _order_ of putting in permissions will now be significant, and so there will necessitate a _reorder_ function to move things up/down.

Otherwise, there is no way to resolve potential conflicts when a person:

- is in more than one group
- one group is permitted access
- another group is denied access

EDIT: Or you can say Add always trumps Subtract, or vice versa. Nevertheless, it makes things very hard to understand.

Although I can understand the pain you’re going through in order to request this… I have tons and tons of groups and each category’s permissions list is like 15 long, just to do what you’re looking to do – that is, to exclude a particular group from access while opening to most others.

---

<div class="post-metadata">

### Author: ![robmc](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/robmc/32/125900_2.png) [@robmc](https://meta.discourse.org/u/robmc)
#### Post date: [10월 20, 2017, 1:21오후 UTC](https://meta.discourse.org/t/new-category-permission-cannot-see-exclude/50044/29 "2017-10-20T13:21:55Z")

</div>

Indeed, the order will matter

Since all sites are currently like yours, it might be that the solution is to have two steps / sections … the first is the INCLUSION (which is the current context, so even if the change is made nothing is affected) where you build up a total population to view this, then a second step below would be the EXCLUSION which would remove a portion of those that matched certain criteria.

 ![exclude](https://global.discourse-cdn.com/meta/original/3X/7/c/7cbbfaa8b7af08c1b43934deb05f357769d89309.png)

---

<div class="post-metadata">

### Author: ![schungx](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/schungx/32/70989_2.png) [@schungx](https://meta.discourse.org/u/schungx)
#### Post date: [10월 20, 2017, 1:27오후 UTC](https://meta.discourse.org/t/new-category-permission-cannot-see-exclude/50044/30 "2017-10-20T13:27:30Z")

</div>

There is also a need for _intersection_, meaning that the permission is only for users with two or more groups set.

For example, `Sales & USA` ==\> any user having _both_ the group `Sales` and `USA`. Then this combo should have access to `USA Sales Leads` category. In other words, the group is the “intersection” of a number of groups. Currently, the permission system works on the “union” of listed groups.

This will solve neatly the common headaches of setting up permission with sub-categories (where in many cases, the users permitted into the sub-categories will only be among the ones permitted into the parent category). It is necessary because, in Discourse, sub-categories do NOT inherit permissions.

---

<div class="post-metadata">

### Author: ![jimkleiber](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/jimkleiber/32/121814_2.png) [@jimkleiber](https://meta.discourse.org/u/jimkleiber)
#### Post date: [5월 28, 2022, 5:52오후 UTC](https://meta.discourse.org/t/new-category-permission-cannot-see-exclude/50044/31 "2022-05-28T17:52:17Z")

</div>

저도 제외(exclude) 옵션이 있었으면 좋겠습니다. 그리고 꽤 간단하게 구현할 수 있을 것 같습니다: 카테고리 보안 설정에 그룹을 추가할 수 있게 하고, ‘보기(See)’ 체크박스를 해제할 수 있게 하면 됩니다.

현재로선 카테고리의 보안 설정에 그룹을 추가하면 '생성(Create)'과 ‘답글(Reply)’ 체크박스는 해제할 수 있지만, ‘보기(See)’ 체크박스는 해제할 수 없습니다. 만약 ‘보기’ 체크박스를 해제할 수 있다면, 로직은 "사용자가 ‘보기’ 권한이 없는 그룹에 속해 있다면, 해당 카테고리를 볼 수 없게 한다"는 방식으로 작동할 수 있을 것 같습니다.

그렇다면 현재 권한 충돌은 어떻게 처리되는지 궁금해집니다: 사용자가 A 그룹과 B 그룹에 동시에 속해 있고, A 그룹은 해당 카테고리에서 주제를 생성할 수 있지만 B 그룹은 생성할 수 없는 경우, 그 사용자는 해당 카테고리에서 주제를 생성할 수 있을까요? 즉, 어느 쪽이 우선시되는 건가요?

현재는 "사용자가 X 권한이 있는 어떤 그룹에라도 속해 있다면, 그 사용자에게 해당 권한을 부여한다"는 방식으로 작동한다고 추측하고 있지만, 확실하지는 않습니다… 방금 테스트해 보니 그렇게 작동하는 것 같습니다.

---

<div class="post-metadata">

### Author: ![Stephen](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/stephen/32/95011_2.png) [@Stephen](https://meta.discourse.org/u/Stephen)
#### Post date: [5월 28, 2022, 9:52오후 UTC](https://meta.discourse.org/t/new-category-permission-cannot-see-exclude/50044/32 "2022-05-28T21:52:21Z")

</div>

> [@jimkleiber](#):
>
> 현재 충돌하는 권한이 어떻게 작동하는지 궁금해집니다: 사용자가 그룹 A와 그룹 B에 모두 소속되어 있고, 그룹 A는 해당 카테고리에서 주제를 생성할 수 있지만 그룹 B는 생성할 수 없는 경우, 사용자는 해당 카테고리에서 주제를 생성할 수 있을까요? 다시 말해, 어느 쪽이 우선순위가 높은가요?

권한은 기본적으로 누적되며, 그런 의미에서의 충돌은 존재하지 않습니다. 항상 가장 높은 상속된 권한이 우선합니다. 예를 들어, 제가 한 그룹에 추가되어 카테고리를 볼 수 있고, 또 다른 그룹에 추가되어 기여할 수 있는 경우가 있습니다.

> [@jimkleiber](#):
>
> 상대적으로 간단하게 할 수 있을 것 같습니다: 카테고리의 보안 설정에 그룹을 추가할 수 있게 하고, ‘보기(See)’ 체크박스를 해제할 수 있게 하면 됩니다.

다른 멤버십을 통해 명시적으로 접근 권한을 부여한 것이 아니라면, 왜 특정 그룹을 제외해야 합니까?

---

<div class="post-metadata">

### Author: ![jimkleiber](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/jimkleiber/32/121814_2.png) [@jimkleiber](https://meta.discourse.org/u/jimkleiber)
#### Post date: [5월 29, 2022, 3:20오전 UTC](https://meta.discourse.org/t/new-category-permission-cannot-see-exclude/50044/33 "2022-05-29T03:20:12Z")

</div>

가장 간단한 예시는 모든 사용자에게 보기, 답글, 생성 권한을 부여한 다음 그룹 X를 추가하고 보기, 답글, 생성 권한을 해제하는 것입니다. 이렇게 하면 그룹 X의 멤버를 제외한 모든 사용자가 해당 카테고리에서 보기, 답글, 생성을 할 수 있습니다.

현재 제 상황에 적용하면: 저는 Discourse와 WordPress에서 Memberful을 SSO 제공자로 사용하고 있으며, 세 가지 패키지를 판매하고 싶습니다. 그 중 더 비싼 두 패키지는 포럼에 접근할 수 있고, 가장 저렴한 패키지는 접근 권한이 없습니다. 하지만 SSO를 통한 계정 동기화 때문에 여전히 접근 권한이 부여될 수 있을 것 같아, 접근 권한을 제한하여 어떤 카테고리도 볼 수 없도록 하고 싶으며, 가능하면 저에게만 개인 메시지를 보낼 수 있도록 하고 싶습니다. 모든 카테고리에서 Everyone 대신 그룹 Y와 그룹 Z를 추가하면 가능하다고 생각하는데, 제가 가진 그룹 수가 많지 않아서 이것이 작동합니다. 하지만 그룹 수가 많다면 보기 권한의 체크박스를 해제하는 방식이 더 쉬울 것 같습니다.

---

<div class="post-metadata">

### Author: ![Robin.Grant](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/robin.grant/32/308261_2.png) [@Robin.Grant](https://meta.discourse.org/u/Robin.Grant)
#### Post date: [3월 25, 2024, 3:34오후 UTC](https://meta.discourse.org/t/new-category-permission-cannot-see-exclude/50044/34 "2024-03-25T15:34:46Z")

</div>

저도 작은 그룹을 설정하고, 사이트의 일부 카테고리에서는 그들을 제외하되, 다른 카테고리에서는 일반 멤버처럼 볼 수 있게 하고 싶습니다.

위에서 언급한 Slack 비유를 들자면, 그 작은 그룹에 속한 사람들을 "멀티채널 게스트: 선택된 채널에만 접근할 수 있는 계정"으로 만드는 것입니다.

요약하자면, 개별 카테고리에서 특정 그룹을 제외할 수 있는 기능이 필요합니다.

---

<div class="post-metadata">

### Author: ![Robin.Grant](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/robin.grant/32/308261_2.png) [@Robin.Grant](https://meta.discourse.org/u/Robin.Grant)
#### Post date: [9월 4, 2024, 12:52오전 UTC](https://meta.discourse.org/t/new-category-permission-cannot-see-exclude/50044/35 "2024-09-04T00:52:39Z")

</div>

여러분 - 이거 한번 검토해 주실 수 있을까요?

기존 기능에 기반해서 이런 걸 구현할 수 있는 방법을 생각했을 것 같습니다.

예를 들어, “secret” 태그가 붙은 모든 주제를 특정 그룹에 대해 비공개로 유지하고 싶다고 가정해 보겠습니다.

그 그룹의 설정을 변경해서 “secret” 태그가 붙은 모든 주제를 그룹 멤버에게 음소거 처리하는 것만으로 충분하지 않나요?

마찬가지로, 특정 카테고리를 특정 그룹에 대해 비공개로 유지하고 싶다면, 그 카테고리 내의 모든 주제를 그룹 멤버에게 음소거 처리하도록 그룹 설정을 변경하는 것만으로 충분한가요? (그리고 [Hide Muted Categories](https://meta.discourse.org/t/hide-muted-categories/140611/3) 테마 컴포넌트도 설치해야 하는 거죠?)

또한 - Discourse의 음소거 기능이 어떻게 작동하는지 설명하는 문서를 찾을 수 없어요 - 도와주실 수 있는 분 계신가요?

---

<div class="post-metadata">

### Author: ![Moin](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/moin/32/554653_2.png) [@Moin](https://meta.discourse.org/u/Moin)
#### Post date: [9월 4, 2024, 6:09오전 UTC](https://meta.discourse.org/t/new-category-permission-cannot-see-exclude/50044/36 "2024-09-04T06:09:04Z")

</div>

> [@Robin.Grant](#):
>
> 특정 그룹에 대해 ‘secret’ 태그가 붙은 모든 주제를 비공개로 유지하고 싶다고 가정해 보겠습니다.

해당 주제들이 얼마나 기밀성이 높은가요? 기본적으로 무언가를 음소거(모든 사용자에게 또는 특정 그룹의 멤버에게)하면, 사용자는 설정을 편집하여 음소거를 해제할 수 있습니다. 또한, 음소거된 주제는 주제 목록에서는 숨겨지지만, 검색 결과에서는 숨겨지지 않습니다.

---

<div class="post-metadata">

### Author: ![Robin.Grant](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/robin.grant/32/308261_2.png) [@Robin.Grant](https://meta.discourse.org/u/Robin.Grant)
#### Post date: [9월 4, 2024, 11:16오전 UTC](https://meta.discourse.org/t/new-category-permission-cannot-see-exclude/50044/37 "2024-09-04T11:16:30Z")

</div>

아, 그러면 안 되겠네 ☹

---

<div class="post-metadata">

### Author: ![satonotdead](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/satonotdead/32/447830_2.png) [@satonotdead](https://meta.discourse.org/u/satonotdead)
#### Post date: [9월 8, 2026, 2:38오후 UTC](https://meta.discourse.org/t/new-category-permission-cannot-see-exclude/50044/38 "2026-09-08T14:38:50Z")

</div>

특정 그룹이 특정 카테고리에 게시물을 올리는 것을 제외하는 우회 방법이 있는지 궁금합니다. 제가 원하는 동작은, 해당 스코프된 그룹이 다른 그룹(TL1)에도 속해 있지만, 특정 배지가 있어 특정 카테고리에서의 게시를 방지해야 하는 경우입니다.

무언가를 놓치고 있는 것일 수 있지만, 현재 설정에서는 해당 그룹이 이미 다른 그룹에 속해 있는 경우 게시를 제외할 수 없으며, 권한은 항상 누적적으로 적용되기 때문입니다.

이 기능 요청은 저에게 유용해 보이며, 몇 가지 사용 사례가 있습니다.

---

<div class="post-metadata">

### Author: ![Moin](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/moin/32/554653_2.png) [@Moin](https://meta.discourse.org/u/Moin)
#### Post date: [9월 9, 2026, 9:30오후 UTC](https://meta.discourse.org/t/new-category-permission-cannot-see-exclude/50044/39 "2026-09-09T21:30:35Z")

</div>

[https://meta.discourse.org/t/discourse-dynamic-groups/365342를](https://meta.discourse.org/t/discourse-dynamic-groups/365342%EB%A5%BC) 사용하여 TL1 그룹에 속한 모든 사용자 중 해당 배지를 가진 사용자를 제외한 그룹을 만들고, 이 그룹을 게시를 위한 카테고리 설정에 사용할 수 있습니다.

---

<div class="post-metadata">

### Author: ![satonotdead](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/satonotdead/32/447830_2.png) [@satonotdead](https://meta.discourse.org/u/satonotdead)
#### Post date: [9월 9, 2026, 9:42오후 UTC](https://meta.discourse.org/t/new-category-permission-cannot-see-exclude/50044/40 "2026-09-09T21:42:20Z")

</div>

네, 맞아요. 알려주셔서 감사합니다. 직접 사용해보셨나요? 경험적으로 믿을 만한가요?

가급적 빨리 시도해볼게요.

[Previous page](https://meta.discourse.org/t/new-category-permission-cannot-see-exclude/50044.md?page=1)
