Iframe-allow-Attribut funktioniert nicht

Ich habe einen Codesandbox-iframe mit verschiedenen Attributen hinzugefügt, aber Discourse extrahiert nur das src. Soll ich etwas in den Discourse-Einstellungen ändern? Ich habe diesen iframe bereits zugelassen, und er wird angezeigt, jedoch nicht korrekt.

Hier ist der iframe, den ich einzufügen versuche:

<iframe 
  src="https://codesandbox.io/embed/codesandbox-frontity-rnclp?fontsize=14" 
  title="Frontity - Post with recompose" 
  allow="geolocation; microphone; camera; midi; vr; accelerometer; gyroscope; payment; ambient-light-sensor; encrypted-media; usb" 
  style="width:100%; height:500px; border:0; border-radius: 4px; overflow:hidden;" 
  sandbox="allow-modals allow-forms allow-popups allow-scripts allow-same-origin"
></iframe>

Es wird jedoch nur Folgendes gerendert:

Need_to_integrate_react-stripe-elements_-%F0%9F%A4%97_Dev_Talk___Questions-_Frontity_Community_Forum

Der iframe wird also nicht korrekt angezeigt:

3 „Gefällt mir“

It works for me

Just to be sure, did you add the iframe url (https://codesandbox.io/embed/codesandbox-frontity-rnclp) in whitelist? If not, search the site setting allowed iframes.

1 „Gefällt mir“

I have this domain: https://codesandbox.io/. Shouldn’t be enough? I have found this code at Discourse where it whitelists just some iframe attributes:

If I include the attributes height and weight the iframe works fine, but I would like to allow the other attributes too.

Is there a way of allowing all codesandbox iframes? I thought including just the domain it would work.

Thank you!

EDIT:

I have tried adding this url in whitelist but it is not working neither.

3 „Gefällt mir“

Ich habe ebenfalls dieses Problem. Ich möchte einer IFRAME, den ich in meinem Datenschutzbeitrag einbinde, eine Klasse hinzufügen. Dieser IFRAME integriert die Datenschutzeinstellungen zur Nachverfolgung aus unserer selbstgehosteten Matomo-Installation. Das würde mir ermöglichen, einen besseren Rahmen und einige Farben hinzuzufügen, um ihn vom Rest der Datenschutzerklärung abzuheben.

Trotz eines class="foo"-Attributs in meinem IFRAME-Element wird dieses offenbar vom oben genannten Whitelist-Code entfernt. Besteht die Möglichkeit, dass dieser um einige weitere erlaubte Attribute erweitert wird?

Aus Sicherheitsgründen sind wir sehr streng bezüglich der HTML-Attribute, die auf unserer Seite gerendert werden dürfen, wenn sie von Benutzereingaben stammen.

So können Sie dies erreichen:

<div data-my-special-attr="42">
  <iframe src="http://example.com">
</div>

Und dann mit Ihrem CSS-/JS-Selektor dieses Element ansprechen:

div[data-my-special-attr="42"] > iframe {
  border-color: pink;
}
3 „Gefällt mir“

Danke! Das hat sowohl auf der Themenseite als auch auf der gerenderten speziellen Datenschutzseite funktioniert.

Als Hinweis für alle, die das versuchen: Du kannst kein class-Attribut hinzufügen. Du musst stattdessen ein Attribut im Stil von data-foo-attr hinzufügen.

1 „Gefällt mir“

Rafael, danke für die Stellungnahme, sie klärt mein beobachtetes Verhalten auf.
Ich würde gerne wissen, ob Sie planen, die Sperre für Audio-/Video-Attribute eines Iframes aufzuheben. Moderne Browser verwalten die Barrierefreiheit für diese Funktionen recht gut, und es gibt zunehmend interessante Dienstleistungsangebote, die von Nutzern gerne integriert würden, denen jedoch genau diese Art von Barrierefreiheit fehlt.
Vielen Dank.

1 „Gefällt mir“

Wir stehen immer für Feedback zur Verfügung!

Es wird einfacher, wenn wir über konkrete Details sprechen, wie z. B. welche spezifischen Attribute Sie explizit zulassen möchten und für welche Dienste diese erforderlich sind.

2 „Gefällt mir“

Ok. Ich denke besonders an https://gitlab.com/jam-systems/jam, das zum ordnungsgemäßen Funktionieren einen Parameter allow=“microphone *;” benötigen würde.

Ich habe das gleiche Problem beim Versuch, einen H5P-Audioaufnehmer einzubetten; die Option allow="microphone *;" wird aus dem iframe entfernt.

Was wäre nötig, um vielleicht eine iframe-Einstellung hinzuzufügen, die dies erlaubt?

Können wir Administratoren erlauben, anzugeben, welche iframe-Attribute sie zulassen möchten?

1 „Gefällt mir“

Das wäre nützlich, aber wir wären auch mit dem allow-Attribut zufrieden, das für alle auf die Whitelist gesetzt wird. Wir haben derzeit Probleme mit der Audiowiedergabe bei eingebetteten Apple- und Spotify-Podcast-Playern. Wie andere bereits erwähnt haben, besteht das Problem darin, dass das allow-Attribut entfernt wird, das eine wichtige encrypted-media-Direktive enthält.

1 „Gefällt mir“

Da wir bereits streng sind, welche Domains in iframes verwendet werden dürfen, ist eine weitere Einstellung, bei der wir den allow-String für jeden iframe festlegen und das seltsame allow-Inhaltsformat parsen, für mich etwas zu viel.

Ich habe einen PR erstellt, der einfach alles im allow-Attribut für bereits erlaubte iframes zulässt:

Was denkst du, @sam?

3 „Gefällt mir“

Hmm, ich bin damit einverstanden, ich sehe deine Logik hier, @david, gibt es Einwände?

1 „Gefällt mir“

Diese Änderung wurde zusammengeführt @santosguillamot @selfscrum @cogdog @gilby

3 „Gefällt mir“