Sto sviluppando un'applicazione ASP.NET MVC 5 con .NET Framework 4.5.1 e C#.Imposta il nome dei ruoli AD su web.config
Sto usando Windows authentication
per consentire ad alcuni utenti di accedere ai miei controller. Questo è il mio web.config
di file:
<system.web>
<compilation debug="true" targetFramework="4.5.1" />
<httpRuntime targetFramework="4.5.1" />
<authentication mode="Windows" />
<authorization>
<deny users="?" />
</authorization>
<roleManager enabled="true" defaultProvider="WindowsProvider">
<providers>
<clear />
<add name="WindowsProvider" type="System.Web.Security.WindowsTokenRoleProvider" />
</providers>
</roleManager>
</system.web>
E questo è il mio attributo Authorize
:
[Authorize(Roles = @"MyDomain\MyUploadRole")]
public class UploadController : Controller
{
// ...
}
voglio aggiungere la stringa @"MyDomain\MyUploadRole"
al web.config
, ma non so come farlo.
Ho provato questo SO answer, ma non funziona per me. Ho aggiunto questa parte web.config
di file:
<roles>
<add key="Role1" value="MyDomain\MyUploadRole" />
<add key="Role2" value="MyDomain\Another role" />
</roles>
E poi, cambiare questo sul controller:
[Authorize(Roles = @"Role1")]
public class UploadController : Controller
{
// ...
}
e Internet Explorer chiedere le mie credenziali, ma ottengo la risposta non autorizzata.
Come è possibile impostare il nome del ruolo su web.config
?
cosa con qualcosa del genere: –
DasDas
@DasDas Alcuni controller hanno bisogno di un ruolo e altri no. – VansFannel
Perché quell'altra risposta non ha funzionato per te? – mattytommo