5

Sto seguendo il Pluralsight ASP.NET MVC 3 tutorial, modulo 7 - Sicurezza (che, a proposito, è un ottimo tutorial). Nella sezione Autorizzazione, al segno 6:24, viene mostrato come impostare la proprietà del progetto di SSL Enabled a true. Il mio problema è che quando arrivo nelle proprietà del progetto, non ho questa opzione. Vedo solo Always Start When Debugging, Project File e Project Folder. Qualcuno sa perché non ho l'opzione per SSL Enabled, come posso farlo apparire, o un modo diverso per ottenere lo stesso risultato? Sto usando Visual Studio 2010 SP1Rel.asp.net mvc 3 - non ha l'opzione nelle proprietà del progetto per "SSL abilitato"

In altre letture, ho visto qualcosa circa l'impostazione requireSSL="true" nel file Web.config, sotto il tag authentication. Questo fa la stessa cosa dell'impostazione di SSL Enabled = true nelle proprietà del progetto? Se no, qualcuno potrebbe dare una breve spiegazione della differenza o indicarmi un buon articolo? Grazie.

risposta

7

ho appena capito che questa opzione è disponibile se si utilizza IIS Express nel ambiente di sviluppo, ma non se si utilizza VS Development Server, che il mio progetto stava usando. Ho risolto il problema facendo clic con il pulsante destro del mouse sul progetto nella finestra Gestione progetti, quindi selezionando "Configura progetto per IIS" o qualcosa del genere. Ora l'opzione per SSL Enabled viene visualizzata nelle proprietà.

A proposito, this è la pagina Web che mi ha aiutato a capire il mio problema.

Inoltre, anche se ho capito la mia domanda principale, sarei comunque interessato a qualsiasi commento riguardante la mia domanda secondaria.

[MODIFICA] Il collegamento per impostarlo è fare clic con il pulsante destro del mouse sul nome del progetto in "Solution Explorer" e fare clic su Proprietà ... Nella finestra Proprietà, fare clic sulla scheda "Web", quindi in "Server" cambia la casella a discesa su "IIS Express".

+0

stai usando VS Ultimate – HatSoft

+0

Non credo. Sto usando VS 2010 Express SP1Rel. Non sono sicuro di cosa sia VS Ultimate, quindi presumo di non usarlo. – neizan

+1

Il mio era disabilitato, anche se stavo usando IIS Express. Ma passare a IIS normale, quindi tornare a Express ha risolto immediatamente il problema. – willem

1

La proprietà RequireSSL impostata nel file di configurazione per un'applicazione ASP.NET utilizzando l'attributo requireSSL dell'elemento di configurazione moduli.

Dato che si sta utilizzando asp.net MVC è possibile contrassegnare un ricorso sia sicuro

come questo:

[RequireHttps] 
public ActionResult Login() 
{ 
    return View(); 
} 
+0

Grazie per la risposta . Il tutorial tratta anche l'utilizzo dell'attributo RequireHttps, quindi penso che ci sia una differenza tra questo attr e l'impostazione di SSL Enabled = true. Avrò bisogno di andare oltre nel tutorial per vedere cosa stanno facendo ciascuno. Tuttavia, penso di aver trovato una risposta alla mia domanda, che pubblicherò ora. – neizan

1

Vedi il mio blog http://blogs.msdn.com/b/rickandy/archive/2011/04/22/better-faster-easier-ssl-testing-for-asp-net-mvc-amp-webforms.aspx
mi consiglia il test con IIS 7.5 (LocalServer) - vedi Test your ASP.NET MVC or WebForms Application on IIS 7 in 30 seconds Il modo giusto per richiedere SSL è via

filters.Add(new System.Web.Mvc.RequireHttpsAttribute()); 

Vedere il mio post sul blog Securing your ASP.NET MVC 4 App and the new AllowAnonymous Attribute

+1

Grazie per le informazioni. Sto leggendo gli articoli e a prima vista sembrano davvero utili. La mia app è MVC 3, quindi avrò bisogno di implementare classi personalizzate per ottenere l'effetto di AllowAnonymous MVC 4.Mi piace molto l'idea di AuthorizeAttribute globale, quindi di decorare con AllowAnonymous per azioni specifiche. – neizan

+0

AllowAnon banale da implementare in MVC 3. Probabilmente hai visto il mio blog su quel http://blogs.msdn.com/b/rickandy/archive/2011/05/02/securing-your-asp-net-mvc-3- application.aspx – RickAndMSFT

+0

Sure fatto e già implementato. Grazie! – neizan

Problemi correlati