ASP.NET 2.0 Security Andrea Saltarello Software Architect – Software Architect – Managed Designs S.r.l.Managed Designs S.r.l.

Slides:



Advertisements
Presentazioni simili
easyBI (Business Interconnect server)
Advertisements

Crea con Drupal un Blog georeferenziato multiutente in
UNIVERSITÀ DEGLI STUDI DI MODENA E REGGIO EMILIA
Elaborazione di Franco Grivet Chin
Accesso ai dati su Relational Database Management Systems LSA - Laboratorio di Sistemi Informativi Economico-Aziendali Salvatore Ruggieri Dipartimento.
Digital FX!32 Conte Davide Crivello Emanuele Ferrando Elisa.
Database MySql.
Unità D2 Database nel web. Obiettivi Comprendere il concetto di interfaccia utente Comprendere la struttura e i livelli che compongono unapplicazione.
ASP .NET & Web Service: Introduzione
Visual Studio Tools For Office 2005 Fabio Santini. NET Senior Developer Evangelist Microsoft Italy.
Miglioramento della protezione dei dati mediante SQL Server 2005 Utilizzo della crittografia di SQL Server 2005 per agevolare la protezione dei dati Pubblicato:
Crea il tuo sito con Web Matrix e il Web Hosting su ASP.NET
Consumare Web Service Andrea Saltarello
Design Patterns Applied Andrea Saltarello Software Architect – Software Architect – Managed Designs S.r.l.Managed Designs S.r.l.
Fabio Mignani Senior Technology Specialist
Microsoft Midrange Modernisation Conference (Milano, 11 Maggio 2006) 1 RPG to.NET Case Study Esempio di migrazione di una applicazione italiana AS/400.
ASP.NET – Data Binding Davide Vernole .NET MVP.
L’offerta di prodotti di Sicurezza e la roadmap evolutiva
Sistema di gestione flussi documentali
Connessione con MySQL.
Università degli Studi di Modena e Reggio Emilia
OUTLINE Riprogettazione del database del portale Web della Facoltà di Ingegneria Sviluppo di una applicazione WEB DB : HOMEPAGE DOCENTI Architettura multilivello.
Integrazione delle Informazioni Necessità di accedere ai dati di campo da qualunque parte dellimpianto Visione omogenea.
Organizzazione di una rete Windows 2003
Organizzazione di una rete Windows Server Client Il ruolo dei computer I computer in una rete possono svolgere le funzioni di client e server dei.
1 IT FOR BUSINESS AND FINANCE ACCESS INTRODUCTION.
Perché.Net e non più COM/DCOM ? Superamento dei problemi di COM: Richiede una infrastruttura "non semplice" da ogni applicazione (ad esempio Class Factory.
Uso di openafs Come usare il tool openafs per accedere e gestire i propri files sotto AFS.
Software di base Il sistema operativo è un insieme di programmi che opera sul livello macchina e offre funzionalità di alto livello Es.organizzazione dei.
WOA 2003 Una piattaforma per lo sviluppo di applicazioni multi-agente Boccalatte - Gozzi - Grosso 10/09/2003.
1 Titolo Presentazione / Data / Confidenziale / Elaborazione di... ASP. Net Web Part e controlli di login Elaborazione di Franco Grivet Chin.
Architettura Java/J2EE
1 Titolo Presentazione / Data / Confidenziale / Elaborazione di... ASP. Net View State e controlli Elaborazione di Franco Grivet Chin.
Applicazioni mobile Better Software 2009 Massimiliano Zani Sms Italia.
Ing. Enrico Lecchini BetaTre S.r.l.
Fare clic per modificare lo stile del titolo Fare clic per modificare stili del testo dello schema – Secondo livello Terzo livello – Quarto livello » Quinto.
Modulo 1 - Hardware u.d. 3 (syllabus – 1.3.5)
Riservato Cisco 1 © 2010 Cisco e/o i relativi affiliati. Tutti i diritti sono riservati.
Cosa sono i sistemi distribuiti Prof. Andrea Omicini Corso di Sistemi Distribuiti A.A. 2001/2002 Parte I.
Analisi (Analista) Progettazione (Progettista) Sviluppo o Traduzione (Sviluppatore) Documentazione.
Firenze – Festival della Creatività 2009 Comm.it s.r.l. – Ing. Davide Rogai, Ph.D. – Software >> fast on demand software.
Configurazione in ambiente Windows Ing. A. Stile – Ing. L. Marchesano – 1/23.
Progetti sotto controllo con.NET Gadgeteer e Team Foundation Service (e un pizzico di Azure) Marco Minerva Blog: Twitter:
Sistemi Informativi sul Web
1 Titolo Presentazione / Data / Confidenziale / Elaborazione di... Data Access Layer.
Sviluppo Web Agile con Castle MonoRail Diego Guidi DotNetMarche.Start() 12 ottobre 2006.
14/06/2008 – Matteo Baglini Mail: Blog:
IMPLEMENTAZIONE TECNOLOGIE:HIBERNATE & JAVA RMI.
Design Goals Definiamo le fondamenta dello sviluppo del sistema.
Presentazione Finale Team 2. Mapping La trasformazione da noi adottata in fase di mapping è stata di tipo Forward engineering. Si è partiti da un modello.
PORTALE CISCO PROJECT WORK: PORTALE CISCO A cura di: Bellifemine Davide DAlonzo Salvatore Trombino Angelo Zappacosta Luca.
Amministrazione della rete: web server Apache
1 DTS: Importazione Apertura di un DTS da file di archiviazione strutturata: Per aprire un pacchetto DTS salvato come file di archiviazione strutturata.
EDIFACT Framework Architecture Acceleratore di soluzioni basate su EDIFACT
N4N Platform Architecture PA Inside outlook.
Francesco M. Taurino – INFM Napoli 1 Netdisco Gestione e controllo degli apparati di rete Workshop sulle problematiche di Calcolo.
Da Oracle a MySQL Migrazione di database SQLWays – Software per migrazione Presentazione Copyright (c) Ispirer Systems Ltd. Tutti.
Interazione col DB Per interagire con una base dati da una pagina PHP occorre procedere come segue: Eseguire la connessione al DBMS MySQL in ascolto;
ASP.NET – Autenticazione e Sicurezza basata sui ruoli
Real World data access layers DataSet vs. Custom entities Pierre Greborio Software Architect – PEWay SrL Microsoft MVP – Solutions Architect.
ADO.NET Primer Andrea Saltarello Software Architect – Software Architect – Managed Designs S.r.l.Managed Designs S.r.l.
Sviluppo per Pocket PC con SQL Server CE 2.0 Fabio Santini Silvano Coriani.NET Developer Evangelist Microsoft Corporation.
Sistemi operativi di rete Ing. A. Stile – Ing. L. Marchesano – 1/18.
#sqlsatTorino #sqlsat400 May 23, 2015 Entity Framework 7 Back To The Future Nuove piattaforme, nuovi data store Michael about.me/micdenny.
4/18/ :18 AM.
Eprogram informatica V anno.
Registrare un nome a dominio spazio web - supporto PHP - MySql Registrazione di un sito web  Service Provider Tophost Aruba.....
Presenta – #wpc15it1 BI005 - Real Power BI Franco Perduca Factory Software srl
Architetture software
La gestione della rete e dei server. Lista delle attività  Organizzare la rete  Configurare i servizi di base  Creare gli utenti e i gruppi  Condividere.
Transcript della presentazione:

ASP.NET 2.0 Security Andrea Saltarello Software Architect – Software Architect – Managed Designs S.r.l.Managed Designs S.r.l. Andrea Saltarello Software Architect – Software Architect – Managed Designs S.r.l.Managed Designs S.r.l.

SponsorSponsor

Parliamo di… AmarcordAmarcord Membership APIMembership API Login Controls bucketLogin Controls bucket Implementazione di ProviderImplementazione di Provider AmarcordAmarcord Membership APIMembership API Login Controls bucketLogin Controls bucket Implementazione di ProviderImplementazione di Provider

Nella v1.x, limplementazione della Forms Authentication è tutta a nostro carico: –Invocare opportunamente RedirectFromLoginPage() o SetAuthCookie() –Costruire il SecurityPrincipal nellevento AuthenticateRequest ASP.NET v2 espone una API completa per la security applicativa: la Membership API Nella v1.x, limplementazione della Forms Authentication è tutta a nostro carico: –Invocare opportunamente RedirectFromLoginPage() o SetAuthCookie() –Costruire il SecurityPrincipal nellevento AuthenticateRequest ASP.NET v2 espone una API completa per la security applicativa: la Membership API

Membership API Astrae la struttura del DB utenti dalla applicazione –I nomi Mapper e Gateway vi ricordano qualcosa? –I nomi Mapper e Gateway vi ricordano qualcosa? Lastrazione si presenta sotto forma di Provider (à la ADO.NET) I Provider implementano interfacce (conosciute al runtime) che espongono le operazioni security- oriented più comuni, ad es: –GetAllUsers –GetUser –GetRoles –IsInRole –… Astrae la struttura del DB utenti dalla applicazione –I nomi Mapper e Gateway vi ricordano qualcosa? –I nomi Mapper e Gateway vi ricordano qualcosa? Lastrazione si presenta sotto forma di Provider (à la ADO.NET) I Provider implementano interfacce (conosciute al runtime) che espongono le operazioni security- oriented più comuni, ad es: –GetAllUsers –GetUser –GetRoles –IsInRole –…

Membership Providers ASP.NET 2 offre alcuni provider: Access (sarà rimosso in beta2, ma dicono che sarà rilasciato il sorgente attuale)Access (sarà rimosso in beta2, ma dicono che sarà rilasciato il sorgente attuale)dicono SQL ServerSQL Server Active DirectoryActive Directory E possibile implementare provider custom (ne parliamo dopo ) ASP.NET 2 offre alcuni provider: Access (sarà rimosso in beta2, ma dicono che sarà rilasciato il sorgente attuale)Access (sarà rimosso in beta2, ma dicono che sarà rilasciato il sorgente attuale)dicono SQL ServerSQL Server Active DirectoryActive Directory E possibile implementare provider custom (ne parliamo dopo )

Controlli Login Web Controls che si basano sulla membership API: Non richiedono scrittura di codiceNon richiedono scrittura di codice Si interfacciano alle feature di security di ASP.NET 2.0Si interfacciano alle feature di security di ASP.NET 2.0

DemoDemo

ASP.NET Admin Tool I provider espongono anche le funzionalità di create/update/delete degli utenti, quindi è possibile creare un tool generico di amministrazione basato sulla membership API Lidea è troppo intelligente per essere mia, infatti ASP.NET 2 lo ha già Lidea è troppo intelligente per essere mia, infatti ASP.NET 2 lo ha già I provider espongono anche le funzionalità di create/update/delete degli utenti, quindi è possibile creare un tool generico di amministrazione basato sulla membership API Lidea è troppo intelligente per essere mia, infatti ASP.NET 2 lo ha già Lidea è troppo intelligente per essere mia, infatti ASP.NET 2 lo ha già

DemoDemo

Membership API vs. Custom DB Per utilizzare il proprio DB utenti, è sufficiente creare un nuovo provider Occorre implementare: –Membership Provider: implementa il mapping tra la API e il database utenti –Role Provider: implementa il mapping tra gli utenti ed il database dei ruoli applicativi Per utilizzare il proprio DB utenti, è sufficiente creare un nuovo provider Occorre implementare: –Membership Provider: implementa il mapping tra la API e il database utenti –Role Provider: implementa il mapping tra gli utenti ed il database dei ruoli applicativi

Membership Providers E una classe derivata di System.Web.Security.MembershipProvider Deve essere registrata E una classe derivata di System.Web.Security.MembershipProvider Deve essere registrata <add name="CustomMembershipProvider type=MioNamespace.CustomMembershipProvider" /> <add name="CustomMembershipProvider type=MioNamespace.CustomMembershipProvider" />

Role Providers E una classe derivata di System.Web.Security.RoleProvider Deve essere registrata E una classe derivata di System.Web.Security.RoleProvider Deve essere registrata

Porting di codebase ASP.NET 1.1 In fase di migrazione di applicazioni ASP.NET esistenti, è possibile sfruttare la membership API utilizzando il pattern Adapter per esporre sotto forma di provider le funzionalità implementate ai… tempi della pietra (cioè con la v1.1 )

Adapter pattern 101 Convert the interface of a class into another interface clients expect. Adapter lets classes work together that couldn't otherwise because of incompatible interfaces.

demodemo

Role-based Navigation Lelemento siteMapNode nel file web.sitemap dispone di un attributo roles Lattributo roles specifica i ruoli applicativi cui sarà accessibile la voce del menu. Richiede labilitazione del SecurityTrimming Lelemento siteMapNode nel file web.sitemap dispone di un attributo roles Lattributo roles specifica i ruoli applicativi cui sarà accessibile la voce del menu. Richiede labilitazione del SecurityTrimming

SecurityTrimmingSecurityTrimming Non può essere (dis)abilitato programmaticamente Deve essere impostato nel file di configurazione: Non può essere (dis)abilitato programmaticamente Deve essere impostato nel file di configurazione: <add name="AspNetXmlSiteMapProvider" type="System.Web.XmlSiteMapProvider, System.Web, Version= , Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" siteMapFile="web.sitemap" SecurityTrimmingEnabled="true" /> <add name="AspNetXmlSiteMapProvider" type="System.Web.XmlSiteMapProvider, System.Web, Version= , Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" siteMapFile="web.sitemap" SecurityTrimmingEnabled="true" />

demodemo

LinksLinks