Udostępnij przez


Instrukcje: Relaks elementu iFrame

W tym artykule opisano sposób włączania dodatkowych atrybutów elementu iFrame dla edytora.

Warunek wstępny

Po włączeniu rozluźnienia piaskownicy w manifeście są wykonywane następujące czynności:

  1. Zakresy zgody usługi AAD: Obciążenie żąda dwóch zakresów:

    • Podstawowy zakres Fabric — standardowy zakres wymagany do działania dowolnego obciążenia
    • Zakres relaksu tkaniny — inny zakres przeznaczony specjalnie dla funkcji relaksu piaskownicy
  2. Przepływ zgody użytkownika: Gdy użytkownik po raz pierwszy uzyskuje dostęp do zadania z włączonym trybem zaufania sandbox, zostanie poproszony o wyrażenie zgody na oba zakresy. Jeśli odmówią, iFrame nie zostanie załadowany.

  3. Dodatkowe możliwości elementu iFrame: Po udzieleniu zgody twoje elementy iFrame otrzymają następujące inne atrybuty piaskownicy:

    • allow-downloads - Umożliwia pobieranie plików z zasobu
    • allow-forms - Umożliwia przesyłanie formularzy do usług zewnętrznych
    • allow-popups - Włącza otwieranie nowych okien lub kart

    Domyślna piaskownica (bez relaksu): allow-same-origin allow-scripts Zrelaksowana piaskownica (ze zgodą): allow-same-origin allow-scripts allow-downloads allow-forms allow-popups

Najlepsze rozwiązania

Zażądaj złagodzenia sandboxa tylko wtedy, gdy jest to konieczne, ponieważ każde złagodzone uprawnienie wprowadza potencjalne zagrożenia bezpieczeństwa.

Włącz w manifeście

Dodaj ustawienie enableSandboxRelaxation do manifestu obciążenia.

    <RemoteServiceConfiguration>
      <CloudServiceConfiguration>
        <Cloud>Public</Cloud>
        <AADFEApp>
          <AppId>0000000-0000-0000-0000-000000000000</AppId>
        </AADFEApp>
        <EnableSandboxRelaxation>true</EnableSandboxRelaxation>  

Ważne

Aby włączyć tę funkcję, należy dołączyć wiersz <EnableSandboxRelaxation>true</EnableSandboxRelaxation> .

Tryb programowania

W przypadku programowania lokalnego można użyć złagodzenia ograniczeń piaskownicy i pominięcia zgody przy użyciu nadpisania deweloperskiego. Dodawanie do parametrów devParameters

const devParameters = {
  name: process.env.WORKLOAD_NAME,
  url: "http://127.0.0.1:60006",
  devAADFEAppConfig: {
    appId: process.env.DEV_AAD_CONFIG_FE_APPID,
  },
  devSandboxRelaxation: true
};

Uwaga / Notatka

Wiersz devSandboxRelaxation: true umożliwia rozluźnienie ograniczeń piaskownicy w trybie deweloperskim bez konieczności wyrażania zgody użytkownika.