# 제어 대상 사용자: \<iframe\> 사용/접근 권한 설정 방법?

**URL:** https://meta.discourse.org/t/control-user-s-ability-to-use-access-to-iframe-how/277327
**Category:** Support
**Created:** [8월 31, 2023, 10:35오전 UTC](https://meta.discourse.org/t/control-user-s-ability-to-use-access-to-iframe-how/277327 "2023-08-31T10:35:07Z")
**Posts on this page:** 13
**Page:** 1

<div class="post-metadata">

### Author: ![lejeczek](https://avatars.discourse-cdn.com/v4/letter/l/edb3f5/32.png) [@lejeczek](https://meta.discourse.org/u/lejeczek)
#### Post date: [8월 31, 2023, 10:35오전 UTC](https://meta.discourse.org/t/control-user-s-ability-to-use-access-to-iframe-how/277327/1 "2023-08-31T10:35:07Z")

</div>

안녕하세요 여러분.

특정 사용자의 **iframe** (주로 임베드된 비디오) 사용 권한을 허용하거나 거부하도록 제어할 수 있을까요?

이 내용은 나중에 다시 읽다가 추가했습니다. 만약 기술적으로 그런 크기의 부담이 거의 불가능할 정도로 크다면, _스태프_와 그 외 사용자, 또는 _신뢰 수준_별로 구분해서 처리하면 될 것 같습니다.

그리고 저는 완전한 초보자인데, 같은 혹은 비슷한 질문이 Discourse 내의 사용자 "권한"의 다른 측면에도 적용될 것입니다. 이 부분을 다루는 man page(매뉴얼 페이지)가 있을까요?

---

<div class="post-metadata">

### Author: ![pfaffman](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/pfaffman/32/120154_2.png) [@pfaffman](https://meta.discourse.org/u/pfaffman)
#### Post date: [8월 31, 2023, 3:50오후 UTC](https://meta.discourse.org/t/control-user-s-ability-to-use-access-to-iframe-how/277327/2 "2023-08-31T15:50:36Z")

</div>

Strava와 Garmin의 one-box를 찾아 iframe으로 대체하는 테마 컴포넌트를 만들었습니다. 지원하려는 동영상 사이트의 수가 고정되어 있다면, 유사한 솔루션이 효과적일 수 있습니다:

> **[GitHub - literatecomputing/runners-onebox-theme: Custom oneboxes for Garmin and Strava](https://github.com/literatecomputing/runners-onebox-theme)**
>
> Custom oneboxes for Garmin and Strava

---

<div class="post-metadata">

### Author: ![lejeczek](https://avatars.discourse-cdn.com/v4/letter/l/edb3f5/32.png) [@lejeczek](https://meta.discourse.org/u/lejeczek)
#### Post date: [9월 1, 2023, 7:13오전 UTC](https://meta.discourse.org/t/control-user-s-ability-to-use-access-to-iframe-how/277327/3 "2023-09-01T07:13:40Z")

</div>

@pfaffman 당신의 답변이 제 질문과 관련이 있는지 확신하십니까?

저는 단순히 Discourse의 “일반적인” 관리 수단을 통해 **iframe** (또는 onebox, 혹은 해당 기술에 가장 적절한 용어가 무엇인지)의 사용(또는 처리, 렌더링 등)을 허용하거나 차단할 수 있는지를 묻고 있을 뿐입니다.

만약 답변에서 그렇게 활용할 수 있는 코드가 있다는 의미였다면, 그것은 저나 저와 같은 사람들에게는 맞지 않습니다. 저는 웹 개발자가 아니니까요.

하지만 @devel 님이 여기서 보신다면 - Discourse를 사용하기 시작한 지 얼마 되지 않았지만, 다양한 시스템의 관리자로 긴 경력을 가진 저로서는 궁금합니다:

- 사용자 "자유"라는 “철학적” 측면, 즉 임의의 콘텐츠(여기서는 순수하게 비디오에 한정하여)를 포함할 수 있는 권한에 대해 어떻게, 혹은 어떻게 결정하셨는지요?

제 생각에는 임베디드 비디오 콘텐츠와 같이 호스트/제공자조차 100% 제어할 수 없는 콘텐츠의 내용이라는 점에서 매우 중요한 요소는(제가 아는 모든 다른 컴퓨터 시스템이 이러한 유사한 중요한 기능을 처리하는 방식처럼) 사용자/그룹별로 세밀하게 제어되어야(해야 합니다) 합니다.

따라서, Discourse가 아직 이에 대해 고안하지 않았다면, 그리고 현재 Discourse에 이러한 제어 기능이 존재하지 않는다면, 가까운 미래에 이러한 “경화(hardening)” 메커니즘/기법을 포함해 주시기를 제안으로 드리고 싶습니다. Discourse가 이미 그렇듯이, 많은 사람들이 이러한 훌륭한 소프트웨어 솔루션이 더 좋아지는 것에 대해 감사할 것이라고 믿습니다.

---

<div class="post-metadata">

### Author: ![simon](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/simon/32/339122_2.png) [@simon](https://meta.discourse.org/u/simon)
#### Post date: [9월 1, 2023, 4:00오후 UTC](https://meta.discourse.org/t/control-user-s-ability-to-use-access-to-iframe-how/277327/4 "2023-09-01T16:00:01Z")

</div>

> [@lejeczek](#):
>
> **iframe** 를 사용자가 사용할 수 있도록 허용/거부하는 기능을 제어할 수 있나요?

기본적으로 Discourse는 사용자가 게시물에 대부분의 iframe 요소를 삽입하는 것을 허용하지 않습니다. 이는 `allowed iframes` 사이트 설정으로 제어됩니다. 이 설정은 게시물에 추가할 수 있는 iframe의 `src` 도메인 목록을 허용합니다.

그러나 사용자의 권한에 따라 어떤 iframe을 추가할 수 있는지를 제어하는 방법은 없습니다. `staff allowed iframes`와 같은 설정이 존재하지 않기 때문입니다.

대부분의 경우 Discourse는 "oneboxes"를 사용하여 외부 콘텐츠를 임베드합니다. 이를 통해 사용자가 게시물에 링크를 삽입할 수 있습니다. 일부 경우 Discourse는 이러한 링크를 iframe으로 변환합니다. 예를 들어, 게시물 편집기에서 YouTube 비디오 링크가 단독 줄에 추가되면, iframe에 표시되는 비디오 요소로 변환됩니다. Discourse가 이 방식으로 처리하는 도메인은 제한적입니다. 예를 들어 Vimeo, YouTube 등이 있습니다.

`allowed onebox iframes` 사이트 설정을 사용하여 iframe onebox가 생성되는 도메인을 제한할 수 있습니다. 이 설정의 기본값은 `*`입니다. 이를 제한하려면 해당 설정 아래에 표시되는 드롭다운 입력 필드를 클릭하세요. Discourse가 iframe으로 onebox하도록 구성된 도메인 목록에서 특정 도메인을 선택할 수 있습니다.

---

<div class="post-metadata">

### Author: ![Falco](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/falco/32/179432_2.png) [@Falco](https://meta.discourse.org/u/Falco)
#### Post date: [9월 1, 2023, 4:23오후 UTC](https://meta.discourse.org/t/control-user-s-ability-to-use-access-to-iframe-how/277327/5 "2023-09-01T16:23:21Z")

</div>

> [@lejeczek](#):
>
> 제 생각에는 임베드된 비디오 콘텐츠와 같이 중요한 요소는 — 호스트/제공자조차 100% 제어할 수 없는 콘텐츠의 특성상 — 사용자/그룹별로 세밀하게 제어되어야 합니다(제가 아는 모든 컴퓨터 시스템이 이러한 중요한 기능을 그렇게 처리하듯이 말입니다).
> 
> 따라서, Discourse가 아직 이를 고안하지 않았거나 현재 그러한 제어 기능이 없다면, 가까운 장래에 이러한 “강화(hardening)” 메커니즘/기법을 포함해 주실 것을 제안드립니다. Discourse는 이미 훌륭한 소프트웨어 솔루션이지만, 이를 통해 더 나아질 것이라고 믿으며 많은 분들이 감사해하실 것입니다.

@simon님의 답변을 보완하고 이 특정 지점에 대해 말씀드리자면, `max oneboxes per post`를 0으로 설정하면 oneboxing 기능을 전체적으로 비활성화할 수 있으며, 이를 통해 YouTube와 Vimeo의 비디오 콘텐츠도 비활성화됩니다.

---

<div class="post-metadata">

### Author: ![lejeczek](https://avatars.discourse-cdn.com/v4/letter/l/edb3f5/32.png) [@lejeczek](https://meta.discourse.org/u/lejeczek)
#### Post date: [9월 1, 2023, 5:27오후 UTC](https://meta.discourse.org/t/control-user-s-ability-to-use-access-to-iframe-how/277327/6 "2023-09-01T17:27:22Z")

</div>

만약 해당 파라미터/값이 '사용자별 값’으로 보완 및 오버라이드될 수 있다면 — 다시 한번 말하지만, 아마도 향후 개발/릴리스에서 — 많은 분들이 크게 만족할 것이라 확신합니다. 감사합니다.

---

<div class="post-metadata">

### Author: ![lejeczek](https://avatars.discourse-cdn.com/v4/letter/l/edb3f5/32.png) [@lejeczek](https://meta.discourse.org/u/lejeczek)
#### Post date: [9월 17, 2023, 1:36오후 UTC](https://meta.discourse.org/t/control-user-s-ability-to-use-access-to-iframe-how/277327/7 "2023-09-17T13:36:49Z")

</div>

> [@Falco](#):
>
> `set max oneboxes per post`를 0으로 설정했습니다

제 환경에서는 작동하지 않는 것 같습니다. 0으로 설정했는데도 불구하고 사용자가 **iframe** 을 포함한 게시물을 작성하면, 프레임/플레이어가 예상대로 표시되고 정상적으로 재생됩니다.  
이 설정을 무시하는 다른 파라미터나 옵션이 있을까요?  
또한, 이 맥락에서 _허용된 iframe_을 어떻게 이해해야 하나요?

---

<div class="post-metadata">

### Author: ![simon](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/simon/32/339122_2.png) [@simon](https://meta.discourse.org/u/simon)
#### Post date: [9월 18, 2023, 10:18오후 UTC](https://meta.discourse.org/t/control-user-s-ability-to-use-access-to-iframe-how/277327/8 "2023-09-18T22:18:41Z")

</div>

> [@lejeczek](#):
>
> 0으로 설정했는데, 사용자가 **iframe** 을 사용한 게시물을 만들면 여전히 예상대로 표시됩니다

`게시물당 최대 원박스 수` 설정은 게시물에 추가할 수 있는 원박스의 수를 제어합니다. 여기서 용어가 혼동될 수 있지만, "원박스(onebox)"란 Discourse가 다양한 출처의 링크를 처리하는 방식입니다. 예를 들어, 브라우저의 주소창에서 YouTube나 Vimeo 비디오 링크를 게시물의 별도 줄에 추가하면, Discourse는 해당 링크에 대해 원박스 비디오 플레이어를 생성합니다.

`게시물당 최대 원박스 수`를 `0`으로 설정하면, 사용자는 이러한 유형의 원박스를 생성할 수 없게 됩니다.

현재 확인하고 계신 현상은 이 설정이 사용자가 게시물에 `iframe` 요소를 추가하는 것을 막지 못하기 때문인 것 같습니다. 사용자가 게시물에 iframe을 추가하는 것을 방지하려면, 사이트의 `허용된 iframe` 사이트 설정에 나열된 iframe 소스에서 하나 이상을 제거해야 합니다. 해당 설정의 기본값은 다음과 같습니다:

 ![image](https://global.discourse-cdn.com/meta/original/4X/a/8/3/a8310d2db272276610464ee72b3941921b0fc0f4.png)

---

<div class="post-metadata">

### Author: ![lejeczek](https://avatars.discourse-cdn.com/v4/letter/l/edb3f5/32.png) [@lejeczek](https://meta.discourse.org/u/lejeczek)
#### Post date: [9월 19, 2023, 10:14오전 UTC](https://meta.discourse.org/t/control-user-s-ability-to-use-access-to-iframe-how/277327/9 "2023-09-19T10:14:32Z")

</div>

@simon - 알겠습니다, 감사합니다. 말씀하신 대로인 것 같습니다. 이제 그곳에서 어떤 일이 일어나는지를 더 잘 이해한 것 같습니다. **URI** 에 **iframe** 이 존재하는 경우, `max oneboxes per post = 0`은 _iframe_에 대해 아무 의미도 갖지 않는다는 뜻이죠.

다시 한 번 말씀드리자면, onebox &| iframe을 관리자/모더레이터에게만 허용하는 것은 불가능한 것이 맞습니까?

---

<div class="post-metadata">

### Author: ![Lilly](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/lilly/32/575047_2.png) [@Lilly](https://meta.discourse.org/u/Lilly)
#### Post date: [9월 19, 2023, 10:20오전 UTC](https://meta.discourse.org/t/control-user-s-ability-to-use-access-to-iframe-how/277327/10 "2023-09-19T10:20:59Z")

</div>

> [@lejeczek](#):
>
> 다시 강조하자면 - onebox &| iframe를 관리자/모더레이터만 사용하도록 설정하는 것은 불가능하다는 뜻이 맞나요?

시몬이 이미 이 질문에 답한 것 같습니다.

> [@simon](#):
>
> ‘스태프 허용 iframe’ 설정은 존재하지 않습니다.

---

<div class="post-metadata">

### Author: ![lejeczek](https://avatars.discourse-cdn.com/v4/letter/l/edb3f5/32.png) [@lejeczek](https://meta.discourse.org/u/lejeczek)
#### Post date: [9월 19, 2023, 10:24오전 UTC](https://meta.discourse.org/t/control-user-s-ability-to-use-access-to-iframe-how/277327/11 "2023-09-19T10:24:47Z")

</div>

@Lilly devel 팀이 이걸 _기능 요청_으로 등록해서 향후 릴리스에 반영해 주실 수 있을까요? 감사합니다. 이렇게 강화된 Discourse를 많은 분들이 좋아하실 거라고 확신합니다.

---

<div class="post-metadata">

### Author: ![Lilly](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/lilly/32/575047_2.png) [@Lilly](https://meta.discourse.org/u/Lilly)
#### Post date: [9월 19, 2023, 10:26오전 UTC](https://meta.discourse.org/t/control-user-s-ability-to-use-access-to-iframe-how/277327/12 "2023-09-19T10:26:05Z")

</div>

실제로 이 기능을 요청한 사용자가 몇 명이나 있나요? 원하시면 직접 #Contribute > Feature 요청을 하셔도 됩니다.

---

<div class="post-metadata">

### Author: ![lejeczek](https://avatars.discourse-cdn.com/v4/letter/l/edb3f5/32.png) [@lejeczek](https://meta.discourse.org/u/lejeczek)
#### Post date: [9월 19, 2023, 10:29오전 UTC](https://meta.discourse.org/t/control-user-s-ability-to-use-access-to-iframe-how/277327/13 "2023-09-19T10:29:20Z")

</div>

이것은 사용자들의 문제가 아니라, 관리자로서 제 문제입니다. 몇 개의 게시물 전에 제 근거를 최대한 잘 설명해 두었습니다.
