loopbackio / loopbackio/loopback.io

Explorer violates content-security-policy: default-src 'self'

Ouverte
#1,783 1 commentaire 0 réactions 0 personnes assignées Voir sur GitHub

Personne n'a encore pris cette issue.

Langage dominant
HTML
Étoiles
276
Forks
382
Merge moyen
6 h 17 min
PR mergées (30 j)
18

Description

## URL of the page

[https://localhost:3000/api/explorer/](https://localhost:3000/api/explorer/)

## Nature of the issue

If the API is served by an Ingress that implements this Response Header:
content-security-policy: default-src 'self'
the api explorer fails to load

## Expected behavior

No errors when running with restrictive content-security-policy.

## Actual behavior

The following errors appear in the console of Goole Chrome:

```
explorer/:11 Refused to apply inline style because it violates the following Content Security Policy directive: "default-src 'self'". Either the 'unsafe-inline' keyword, a hash ('sha256-R1cfim84YiZ+NisBAfyCbdN3fV7Y7Uys20qAO4OBGJ0='), or a nonce ('nonce-...') is required to enable inline execution. Note also that 'style-src' was not explicitly set, so 'default-src' is used as a fallback.

explorer/:36 Refused to execute inline script because it violates the following Content Security Policy directive: "default-src 'self'". Either the 'unsafe-inline' keyword, a hash ('sha256-DLbdWNBhwD1fyzUBjaE5Up3Y/4UCDB1OYv/c61qHL/I='), or a nonce ('nonce-...') is required to enable inline execution. Note also that 'script-src' was not explicitly set, so 'default-src' is used as a fallback.
```

These occur because the HTML contains a and a <script> tag respectively.

## Suggested resolution

Move the <style> and <script> contents to separate files.

Guide de contribution

Aucun guide de contribution indexé pour ce dépôt

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Piste de recherche

Commencez par la page API Explorer servie à /api/explorer/ et inspectez le HTML à la recherche de ses éléments inline style et script. Déplacez ces contenus dans des fichiers séparés et vérifiez que la page se charge sans erreurs dans la console avec default-src 'self'.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Évaluation

Stack technique
css, html, javascript
Domaine
frontend, security, web-dev
Type d'issue
Bug
Difficulté
2/5
Temps estimé
1-3 heures
Activité
À l'abandon
Clarté
Plutôt claire
Accessibilité débutants
45/100

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.