# Access Control Settings

Access Control Settings 페이지에서 OvenMediaEngine이 제공하는 Ingress 및 Egress Stream에 대한 접근 제한 활성화 여부 및 설정 내용을 확인할 수 있습니다.

또, [OvneMediaEngine Enterprise 16.6.2 버전](https://ovenmediaengine-enterprise.gitbook.io/guide/ko-kr/about/release-notes/0.16.6#v0.16.6.2-july-17-2024) *(2024년 7월 17일 업데이트)*&#xC5D0; `SignedPolicy`와 `AdmissionWebhooks`에서 Proxy를 지원하는 기능 *(*[*Proxy Integration*](https://ovenmediaengine-enterprise.gitbook.io/guide/ko-kr/workflow-integration-and-external-system-connectivity/proxy-protocol)*)*&#xC774; 추가되어 The PROXY protocol version 1 by HAProxy을 통해 전달되는 Client Address를 `real_ip`와 비교 및 검증하여 보안을 더욱 강화했습니다.

## Signed Policy 설정하기 | 0.12.0.0+

`SignedPolicy`는 시청자의 시청 시간 및 시청 권한을 제한하는 모듈입니다.

예를 들어 특정 RTMP URL에 60초 동안 액세스 할 수 있게 만든다면 제공된 URL은 60초 후에 자동으로 파기됩니다. 또, 1시간만 전송이 가능한 RTMP URL을 만들었다면 1시간 후에 RTMP 전송이 자동으로 중단됩니다.

아래와 같이 `SignedPolicy URL`은 `Policy` 및 `Signature`가 Stream URL에 쿼리 문자열로 포함되어 `SignedPolicy URL`을 제공받은 시청자는 제공된 URL 이외의 다른 리소스에 액세스할 수 없습니다.

```url
scheme://domain.com:port/app/stream?policy=<>&signature=<>
```

<figure><img src="https://content.gitbook.com/content/Z6NWzeQyKbSWkDFSGwGx/blobs/iorQXWheKqqDsi4b66mj/image.png" alt=""><figcaption><p>Access Control Settings 내 Signed Policy</p></figcaption></figure>

Access Control Settings 내 Signed Policy 항목에서 각 `VirtualHost` 별로 Singed Policy 활성화 여부와 설정 내용을 확인할 수 있습니다.

* `Policy Query Key`: `SignedPolicy URL`에 포함되는 `Policy` 쿼리 문자열을 지정하는 옵션입니다.
* `Signature Query Key`: `SignedPolicy URL`에 포함되는 `Signature` 쿼리 문자열을 지정하는 옵션입니다.
* `Secret Key`: HMAC-SHA1로 암호화할 때 사용하는 Secret Key입니다.
* `Enables`: 각 Protocol Provider *(Ingress)*&#xC640; Protocol Publisher *(Egress)*&#xC5D0;서 `SignedPolicy`를 사용할 수 있도록 허용하는 옵션입니다.

{% hint style="warning" %}
현재 `SignedPolicy`는 Provider 간에 `RTMP`를 지원하고, Publisher 간에 `WebRTC`, `LLHLS`, `Thumbnail`을 지원합니다.
{% endhint %}

{% hint style="info" %}
세부 가이드: <https://docs.ovenmediaengine.com/access-control/signedpolicy>
{% endhint %}

## Admission Webhooks 설정하기 | 0.12.2.0+

`AdmissionWebhooks`는 Publishing 및 Playback 허용 요청을 제어하기 위해 Control Server에 쿼리하는 HTTP 콜백입니다. 사용자는 고객 인증, 게시된 스트림 추적, 앱/스트림 이름 숨기기, 로깅 등 다양한 목적으로 `AdmissionWebhooks`를 활용할 수 있습니다.

<figure><img src="https://content.gitbook.com/content/Z6NWzeQyKbSWkDFSGwGx/blobs/tg3BvP1wk0aAkXzvxmxV/image.png" alt=""><figcaption><p>Access Control Settings 내 Admission Webhooks</p></figcaption></figure>

Access Control Settings 내 Admission Webhooks 항목에서 각 `VirtualHost` 별로 Admission Webhooks 활성화 여부 및 설정 내용을 확인할 수 있습니다.

* `Control Server Url`: 쿼리를 수신하는 HTTP 또는 HTTPS 서버를 설정합니다.&#x20;
* `Secret Key`: HMAC-SHA1로 암호화할 때 사용하는 Secret Key입니다.
* `Timeout`: 요청 후 응답을 기다리는 시간이며, 밀리 초 (`ms`)를 사용합니다.
* `Enables`: 각 Protocol Provider *(Ingress)*&#xC640; Protocol Publisher *(Egress)*&#xC5D0;서 `AdmissionWebhooks`를 사용할 수 있도록 허용하는 옵션입니다.

{% hint style="info" %}
세부 가이드: <https://docs.ovenmediaengine.com/access-control/admission-webhooks>
{% endhint %}
