WebSlate 성능 및 보안
성능
WebSlate는 로드된 웹 페이지이므로 성능에 미치는 영향을 고려해야 합니다.
장면은 일반적으로 최대 10개의 활성 WebSlates를 사용하여 60fps에서 수행됩니다. 프레임 속도 및 일반 성능 저하는 콘텐츠에 관계없이 장면에 배치된 WebSlates 수에 비례하여 관찰될 수 있습니다.
콘텐츠는 장면의 업데이트 및 렌더링 스레드와는 별도로 스레드의 WebSlate에서 로드되고 실행되므로 프레임 속도에 직접적인 영향을 미치지 않습니다. 그러나 런타임 복잡성과 메모리 사용량 측면에서 웹 페이지에서 실행되는 JavaScript의 비용을 고려하는 것이 여전히 중요합니다.
성능을 절약하기 위해 30대 이상 화면의 WebSlates가 자동으로 일시 중단됩니다. 화면으로 돌아오면 빠르게 다시 시작되지만 호스트된 페이지에서 적극적으로 실행되는 서비스에 영향을 줄 수 있습니다. 이 문제가 있는 경우 개발자는 프리팹의 "일시 중단 방지" 확인란을 사용하여 일시 중단을 사용하지 않도록 설정할 수 있습니다. 이렇게 하면 이러한 WebSlates가 항상 활성 상태로 유지되므로 장면에서 더 많은 리소스를 사용할 수 있습니다.
WebSlates에는 기본적으로 외부 탐색 UI가 없으므로 사이트 탐색이 순환적이고 페이지 내에서 수행할 수 있는 사용자 지정 URL만 로드하는 것이 가장 좋습니다. 예를 들어 탐색 사이드바 또는 허브 페이지에 대한 링크를 사용하여 이 작업을 수행할 수 있습니다.
CPA(콘텐츠 성능 분석기) 도구에는 Unity의 렌더링 파이프라인이 프레임에 WebSlates를 렌더링하는 데 걸리는 평균 시간을 측정하는 WebSlate 분석기가 포함되어 있습니다.
측정값은 Unity의 프로파일러 레코더를 기반으로 하며 재생 모드가 필요합니다. 분석기는 충분한 프로파일러 샘플을 수집하기 위해 각 WebSlate 위로 카메라를 이동하고 평균 렌더링 시간을 계산합니다.
이를 통해 Unity의 렌더링 파이프라인 컨텍스트에서 WebSlate 렌더링 시간을 1단계로 개략적으로 분석할 수 있습니다. WebSlate 콘텐츠 자체의 프레임 속도는 제공하지 않습니다.
Unity의 렌더링 파이프라인이 WebSlates(현재 10ms)를 렌더링하는 임계값을 초과하면 CPA 도구에서 경고를 제공합니다.
성능 프로파일러에서도 동일한 측정값을 사용할 수 있습니다. 성능 프로파일러의 그룹은 일반적으로 범주에 대한 예산 허용량을 초과할 때 색을 녹색에서 빨간색으로 변경합니다. 현재 WebSlate 그룹은 WebSlates에 대해 합리적인 렌더링 시간 예산이 합리화될 때까지만 녹색으로 표시됩니다.
보안 제한 사항
WebSlates는 탐색하는 URL에 잠겨 악의적인 리디렉션을 방지합니다. 허용된 도메인으로 명시적으로 나열되지 않는 한 외부 도메인에 대한 모든 의도하지 않은 하이퍼링크 탐색이 차단됩니다(아래 참조).
WebSlates는 초기 도메인 내의 탐색 또는 지정된 URL 및 서버의 리디렉션으로 제한됩니다.
WebSlate 내의 탐색은 HTTPS로만 제한됩니다.
웹캠, 마이크 및 지리적 위치로의 디바이스 액세스가 차단됩니다.
WebSlate 도메인 허용 목록
피싱과 같은 의도하지 않은 URL 기반 공격 벡터에 대한 보안을 보장하기 위해 WebSlates는 기본적으로 WebSlate에 로드된 첫 번째 페이지의 도메인 아래에 포함된 URL로의 탐색을 제한합니다. 예를 들어 시작된 https://www.microsoft.com/ WebSlate는 URL이 "www.microsoft.com"로 시작하는 페이지로만 이동합니다. 이렇게 하면 사용자가 의도한 탐색 흐름에서 실수로 전환되지 않지만, 사용자 인증과 같은 일부 사용 사례에 대해 지나치게 제한적인 기본값이 될 수 있으며, 그 동안 하위 도메인 또는 타사 인증 공급자로 리디렉션될 수 있습니다.
이러한 사용 사례를 수용하는 방법은 WebSlate의 허용 목록에 도메인을 추가하는 것입니다.
도메인 자동 추가(권장)
Unity 편집기에서 WebSlates를 사용하는 경우 "허용된 도메인 수집"을 사용하도록 설정하는 옵션이 있습니다. 이렇게 하면 시나리오를 테스트하기 위해 재생 모드에서 실행할 때 자유롭게 탐색할 수 있도록 도메인 탐색 제한이 제거됩니다. 재생 모드로 이동하는 동안 WebSlate는 백그라운드에서 방문한 도메인을 기록합니다.
이 경우 learn.microsoft.com 포함하도록 microsoft.com 탐색을 확장합니다.
재생 모드를 종료하면 최상위 자산 폴더에 "WebViewAllowedDomains.asset"이라는 자산이 있습니다.
이 자산을 클릭하면 초기 URL의 도메인을 넘어 방문한 추가 도메인 목록이 표시됩니다. WebSlate 구성 요소의 "허용된 도메인" 필드에 값을 마우스 오른쪽 단추로 클릭하고 복사한 다음 붙여넣을 수 있습니다.
참고: 업로드된 장면에서는 이 옵션을 사용할 수 없습니다. "허용된 도메인 수집"을 사용하도록 설정하면 최종 장면에서 제한이 제거되지 않습니다. 그러나 허용된 도메인 목록은 유지되며 도메인이 WebSlate에 추가되는 한 탐색을 허용합니다.
수동으로 도메인 추가
필요한 도메인을 이미 알고 있는 경우 "허용된 도메인" 드롭다운을 확장하고 Unity GUI의 목록에 추가 도메인을 추가하여 WebSlate에 수동으로 추가할 수 있습니다.