Skip to content
This repository was archived by the owner on Sep 18, 2024. It is now read-only.

Latest commit

 

History

History
45 lines (35 loc) · 2.69 KB

File metadata and controls

45 lines (35 loc) · 2.69 KB

HTTPS

Enforce HTTPS in ASP.NET Core

A. Forstå HTTPS i ASP.NET

  1. I Startup.cs udkommenteres app.UseHttpsRedirection();
  2. Start Fiddler, filter = localhost og ingen HTTPS decryption (Tools | Options | HTTPS og deselect Decrypt HTTPS traffic)
  3. Web uden at benytte SSL, http://localhost:63919 og vælg CREATE. Send en submit og se at alle data er synlige i POST request pakken.
  4. (virker ikke når først Decryption har været aktiveret): Web med SSL, https://localhost:44358/ og vælg CREATE. Send en submit og se at alle data er krypterede i POST request pakken.
  5. Slå Decrypt HTTPS traffic til i Fiddler, genstart Fiddler og web SSL adressen og CREATE. Parametre kan stadig ses - men kun fordi Fiddler er "Man in the middle" og dekrypterer.  

B. Sikre at HTTPS benyttes

  1. I Startup.cs tilføjes app.UseHttpsRedirection();
  2. Web uden at benytte SSL, http://localhost:63919 og se omstillingen med HTTP 307 i Fiddler. Læs om HTTP 307
  3. Bemærk at kun hvis UseHttpsRedirection() kommer før UseStaticFiles() vil css og html være krypteret

 

C. HSTS (HTTPS Strict Transport Security)

Se denne video fra Pluralsight: https://app.pluralsight.com/course-player?clipId=4a5a88b6-d619-45c7-ace6-5e5f15334210

  1. Inkommentér UseHSTS();
  2. Konfigurér service med:
services.AddHsts(opts =>
{
    opts.IncludeSubDomains = true;
    opts.MaxAge = TimeSpan.FromMinutes(5);
});

Følgende kræver at siten er deployet til andet end localhost (localhost er excluded i browserens HSTS)

  1. I Properties | Debug fjernes flueben ved Launch browser så den ikke laver en indledende Redirect inden vi er klar til at se på kommunikationen.
  2. Start og web: http://localhost:63919 med DevTools åben
  3. Bemærk HTTP 307 og omdirigering til HTTPS. Se også i Response Headers at strict-transport-security er sat til 300 sekunder (5 minutter)

How to Clear HSTS Settings on Chrome, Firefox and IE Browsers

  1. Registrering for preloading

D. Mixed Content

  1. Bemærk linket til et billede, hvis src peger på et http-link. Det får hele siden til at være usikker, men Chrome forsøger en automatisk omdirigering til en HTTPS ressource. Og en sådan findes i demo-eksemplet. Demo af Details for Cinnamon Club, hvor et billede fra Apache loades via http!
  2. Vigtigt at benytte relative links til alle lokale ressourcer, så scheme automatisk tilpasses.
  3. Kig i DevTools under Console og læs warning om "Mixed Content".