0

L'environnement est en mode connexion unique avec identityserver3. J'ai une application angulaire client qui utilise openid connect avec identityserver 3. J'ai aussi une application de visualisation de fichiers asp.net mvc qui est utilisée pour rendre les fichiers pdfs et autres et n'a pas de sécurité. L'application angulaire affiche le fichier viewer dans un iframe pour afficher le contenu des fichiers. J'ai essayé d'ajouter le visualiseur de fichiers en tant que client à l'identité avec openid connect de sorte que lorsqu'un utilisateur est connecté à l'application angulaire, l'utilisateur est également connecté à l'application de visualisation de fichiers, mais cela ne fonctionne pas dans iframe lorsque la visionneuse de fichiers redirige vers le point de terminaison d'autorisation de l'identité en raison de l'en-tête sameorigin de x-frame-options. Si j'ouvre le fichier viewer url est un onglet séparé, puis lancez l'aperçu du fichier dans l'application angulaire, puis les appels dans l'application angulaire commencent à travailler comme les cookies de visionneuse de fichiers sont maintenant dans le navigateur.IdentityServer3: protéger l'application asp.net mvc contre les accès non autorisés

Idéalement, je voudrais que la visionneuse de fichiers fonctionne comme une API Web qui ne valide que les jetons entrants mais ne sait pas comment y parvenir avec le serveur d'identité.

Comment puis-je sécuriser l'application de visualisation de fichiers avec identityserver? Dois-je décoder manuellement le jeton jwt en utilisant des gestionnaires de messages dans le pipeline?

Merci.

enter image description here

Répondre

0

Si vous rendant le fichier que vous pouvez utiliser localement porteur auth, comme WebAPI fait. Cependant, parce que vous utilisez MVC dans un iframe, c'est un peu plus compliqué. Vous aurez besoin de déclencher l'authentification pour le visualiseur de fichiers dans une nouvelle fenêtre - la connexion SSO ne devrait jamais se produire dans un iframe. Cela devrait alors vous donner des informations d'identification d'authentification, généralement un cookie, lorsque vous appelez l'application mvc de visionneuse de fichiers dans votre iframe.