Protezione delle distribuzioni PaaSSecuring PaaS deployments

In questo articolo vengono fornite informazioni che consentono di:This article provides information that helps you:

  • Comprendere i vantaggi di sicurezza dell'hosting delle applicazioni nel cloudUnderstand the security advantages of hosting applications in the cloud
  • Valutare i vantaggi di sicurezza del modello di piattaforma distribuita come servizio (PaaS, Platform as a Service) rispetto ad altri modelli di servizio cloudEvaluate the security advantages of platform as a service (PaaS) versus other cloud service models
  • Modificare l'attenzione verso la sicurezza, da un approccio di sicurezza del perimetro incentrato sulla rete a uno incentrato sulle identitàChange your security focus from a network-centric to an identity-centric perimeter security approach
  • Implementare le procedure consigliate per la sicurezza del modello PaaSImplement general PaaS security best practices recommendations

Lo sviluppo di applicazioni sicure in Azure è una guida generale alle domande e ai controlli di sicurezza da considerare in ogni fase del ciclo di vita di sviluppo del software durante lo sviluppo di applicazioni per il cloud.Developing secure applications on Azure is a general guide to the security questions and controls you should consider at each phase of the software development lifecycle when developing applications for the cloud.

Vantaggi della sicurezza cloudCloud security advantages

È importante comprendere la divisione delle responsabilità tra l'utente e Microsoft.It’s important to understand the division of responsibility between you and Microsoft. In locale, si è proprietari dell'intero stack ma, con lo spostamento nel cloud, alcune responsabilità vengono trasferite a Microsoft.On-premises, you own the whole stack but as you move to the cloud some responsibilities transfer to Microsoft.

Il cloud offre vantaggi per la sicurezza.There are security advantages to being in the cloud. In un ambiente locale, le organizzazioni si ritrovano probabilmente con responsabilità non ancora gestite e con risorse limitate disponibili da investire nella sicurezza. Tutto questo porta a un ambiente in cui i malintenzionati sono in grado di sfruttare vulnerabilità a più livelli.In an on-premises environment, organizations likely have unmet responsibilities and limited resources available to invest in security, which creates an environment where attackers are able to exploit vulnerabilities at all layers.

Le organizzazioni possono migliorare la i tempi di rilevazione delle minacce e i tempi di risposta usando le funzionalità di sicurezza basate sul cloud e l'intelligence cloud di un provider.Organizations are able to improve their threat detection and response times by using a provider’s cloud-based security capabilities and cloud intelligence. Passando le responsabilità al provider di servizi cloud, le organizzazioni possono godere di una sicurezza più ampia e possono così riallocare le relative risorse e i relativi budget ad altre priorità aziendali.By shifting responsibilities to the cloud provider, organizations can get more security coverage, which enables them to reallocate security resources and budget to other business priorities.

Vantaggi di sicurezza di un modello di servizio cloud PaaSSecurity advantages of a PaaS cloud service model

Esaminiamo i vantaggi di sicurezza di una distribuzione di Azure PaaS rispetto a quella locale.Let’s look at the security advantages of an Azure PaaS deployment versus on-premises.

Vantaggi di sicurezza del modello PaaS

Microsoft consente di ridurre i rischi e le responsabilità comuni già a partire dal fondo dello stack, ovvero l'infrastruttura fisica.Starting at the bottom of the stack, the physical infrastructure, Microsoft mitigates common risks and responsibilities. Poiché viene costantemente monitorato da Microsoft stessa, il cloud di Microsoft è estremamente resistente agli attacchi.Because the Microsoft cloud is continually monitored by Microsoft, it is hard to attack. Pertanto non ha senso che venga considerato un bersaglio.It doesn’t make sense for an attacker to pursue the Microsoft cloud as a target. A meno che non disponga di parecchio denaro e parecchie risorse, un malintenzionato sceglierà più probabilmente altri obiettivi.Unless the attacker has lots of money and resources, the attacker is likely to move on to another target.

Al centro dello stack non c'è differenza tra una distribuzione PaaS e una locale.In the middle of the stack, there is no difference between a PaaS deployment and on-premises. I rischi sono simili a livello di applicazione e a livello di gestione dell'account e degli accessi.At the application layer and the account and access management layer, you have similar risks. Nella sezione dell'articolo dedicata ai passaggi successivi verranno illustrate le procedure consigliate per eliminare o ridurre al minimo tali rischi.In the next steps section of this article, we will guide you to best practices for eliminating or minimizing these risks.

Nella parte superiore dello stack, governance dei dati e Rights Management, è possibile ridurre un rischio grazie alla gestione delle chiavi,At the top of the stack, data governance and rights management, you take on one risk that can be mitigated by key management. La gestione delle chiavi è illustrata nelle procedure consigliate. Anche se la gestione delle chiavi è una responsabilità aggiuntiva, le aree di una distribuzione di PaaS non devono più essere gestite, quindi è possibile spostare le risorse nella gestione delle chiavi.(Key management is covered in best practices.) While key management is an additional responsibility, you have areas in a PaaS deployment that you no longer have to manage so you can shift resources to key management.

La piattaforma di Azure offre inoltre una protezione avanzata dagli attacchi DDoS grazie a varie tecnologie basate su rete.The Azure platform also provides you strong DDoS protection by using various network-based technologies. Tuttavia, tutti i tipi di protezione da attacchi DDoS basati su rete hanno vari limiti per quanto riguarda collegamenti e data center.However, all types of network-based DDoS protection methods have their limits on a per-link and per-datacenter basis. Per evitare le problematiche legate agli attacchi DDoS di portata elevata, è possibile sfruttare la funzionalità cloud centrale di Azure per usare rapidamente e automaticamente la scalabilità come difesa da questi attacchi.To help avoid the impact of large DDoS attacks, you can take advantage of Azure’s core cloud capability of enabling you to quickly and automatically scale out to defend against DDoS attacks. Negli articoli sulle procedure consigliate verranno illustrati in dettaglio i vari passaggi.We'll go into more detail on how you can do this in the recommended practices articles.

Modernizzazione dell'approccio di difesaModernizing the defender’s mindset

Le distribuzioni PaaS impongono un cambiamento dell'approccio generale verso la sicurezza.With PaaS deployments come a shift in your overall approach to security. Si passa da un controllo autonomo sostanzialmente totale alla condivisione di alcune responsabilità con Microsoft.You shift from needing to control everything yourself to sharing responsibility with Microsoft.

Un'altra differenza significativa tra le distribuzioni PaaS e quelle locali tradizionali consiste in una nuova visione di ciò che compone il perimetro di sicurezza primario.Another significant difference between PaaS and traditional on-premises deployments, is a new view of what defines the primary security perimeter. In passato, il perimetro di sicurezza locale primario era rappresentato dalla rete, con la maggior parte delle progettazioni di sicurezza locali che la usava come risorsa di sicurezza primaria.Historically, the primary on-premises security perimeter was your network and most on-premises security designs use the network as its primary security pivot. Per le distribuzioni PaaS, è consigliabile passare all'identità come perimetro di sicurezza primario.For PaaS deployments, you are better served by considering identity to be the primary security perimeter.

Adottare dei criteri di identità come perimetro di sicurezza primarioAdopt a policy of identity as the primary security perimeter

Una delle cinque caratteristiche essenziali del cloud computing consiste nell'ampio accesso alla rete, cosa che rende meno efficace un approccio incentrato su di essa.One of the five essential characteristics of cloud computing is broad network access, which makes network-centric thinking less relevant. L'obiettivo della maggior parte del cloud computing è consentire l'accesso agli utenti a prescindere dalla loro posizione.The goal of much of cloud computing is to allow users to access resources regardless of location. La maggior parte di loro si troverà da qualche parte in Internet.For most users, their location is going to be somewhere on the Internet.

Nella figura seguente viene illustrata l'evoluzione del perimetro di sicurezza, da perimetro di rete a perimetro di identità.The following figure shows how the security perimeter has evolved from a network perimeter to an identity perimeter. La sicurezza consiste sempre meno nel difendere la rete e sempre più nel difendere i dati e nel gestire la sicurezza di app e utenti.Security becomes less about defending your network and more about defending your data, as well as managing the security of your apps and users. La differenza principale sta nel voler avvicinare il più possibile la sicurezza alle priorità dell'azienda.The key difference is that you want to push security closer to what’s important to your company.

L'identità come nuovo perimetro di sicurezza

Inizialmente, i servizi PaaS di Azure come i ruoli Web e SQL di Azure non offrivano difese con perimetri di rete tradizionali.Initially, Azure PaaS services (for example, web roles and Azure SQL) provided little or no traditional network perimeter defenses. Questo perché si presupponeva che l'esposizione a Internet fosse proprio lo scopo del ruolo Web e che l'autenticazione fosse essa stessa il nuovo perimetro, ad esempio BLOB o SQL di Azure.It was understood that the element’s purpose was to be exposed to the Internet (web role) and that authentication provides the new perimeter (for example, BLOB or Azure SQL).

Le procedure di sicurezza moderne presuppongono che un malintenzionato abbia violato il perimetro di rete.Modern security practices assume that the adversary has breached the network perimeter. Pertanto, le procedure di difesa moderne si sono focalizzate sull'identità.Therefore, modern defense practices have moved to identity. Le organizzazioni devono stabilire un perimetro di sicurezza basato sull'identità con procedure consigliate di autenticazione e autorizzazione estremamente robuste.Organizations must establish an identity-based security perimeter with strong authentication and authorization hygiene (best practices).

I principi e i modelli per i perimetri di rete sono disponibili da molto tempo,Principles and patterns for the network perimeter have been available for decades. tuttavia nel settore c'è meno esperienza riguardo l'uso dell'identità come perimetro di sicurezza primario.In contrast, the industry has relatively less experience with using identity as the primary security perimeter. Ciò premesso, l'esperienza accumulata è comunque sufficiente per dare alcuni consigli generali la cui efficacia è comprovata sul campo, applicabili a quasi tutti i servizi PaaS.With that said, we have accumulated enough experience to provide some general recommendations that are proven in the field and apply to almost all PaaS services.

Di seguito sono illustrate le procedure consigliate per la gestione del perimetro di identità.The following are best practices for managing the identity perimeter.

Procedura consigliata: proteggere le chiavi e le credenziali per proteggere la distribuzione PaaS.Best practice: Secure your keys and credentials to secure your PaaS deployment.
Dettagli: la perdita delle chiavi e delle credenziali è un problema comune.Detail: Losing keys and credentials is a common problem. È possibile usare una soluzione centralizzata in cui le chiavi e i segreti possono essere archiviati in moduli di protezione hardware (HSM).You can use a centralized solution where keys and secrets can be stored in hardware security modules (HSMs). Azure Key Vault protegge le chiavi e i segreti crittografando le chiavi di autenticazione, le chiavi dell'account di archiviazione, le chiavi di crittografia dei dati, i file PFX e le password usando chiavi protette da HSM.Azure Key Vault safeguards your keys and secrets by encrypting authentication keys, storage account keys, data encryption keys, .pfx files, and passwords using keys that are protected by HSMs.

Procedura consigliata: non inserire le credenziali e altri segreti nel codice sorgente o GitHub.Best practice: Don’t put credentials and other secrets in source code or GitHub.
Dettagli: un rischio ben peggiore della perdita di chiavi e credenziali consiste negli accessi non autorizzati.Detail: The only thing worse than losing your keys and credentials is having an unauthorized party gain access to them. Gli utenti malintenzionati possono sfruttare le tecnologie bot per trovare chiavi e segreti archiviati in repository di codice come GitHub.Attackers can take advantage of bot technologies to find keys and secrets stored in code repositories such as GitHub. Si consiglia pertanto di non inserire chiavi e segreti in questi archivi di codice pubblici.Do not put key and secrets in these public code repositories.

Procedura consigliata: proteggere le interfacce di gestione della macchina virtuale nei servizi ibridi PaaS e IaaS usando un'interfaccia di gestione che consenta all'utente di gestire direttamente in remoto le macchine virtuali.Best practice: Protect your VM management interfaces on hybrid PaaS and IaaS services by using a management interface that enables you to remote manage these VMs directly.
Dettagli: possono essere usati i protocolli di gestione remota come SSH, RDP e Comunicazione remota di PowerShell.Detail: Remote management protocols such as SSH, RDP, and PowerShell remoting can be used. In generale, è consigliabile non abilitare l'accesso remoto diretto alle macchine virtuali da Internet.In general, we recommend that you do not enable direct remote access to VMs from the internet.

Se possibile, usare approcci alternativi come l'uso di reti private virtuali in una rete virtuale di Azure.If possible, use alternate approaches like using virtual private networks in an Azure virtual network. Se non sono disponibili approcci alternativi, assicurarsi di usare passphrase complesse e l'autenticazione a due fattori, ad esempio Azure AD multi-factor authentication.If alternative approaches are not available, ensure that you use complex passphrases and two-factor authentication (such as Azure AD Multi-Factor Authentication).

Procedura consigliata: usare piattaforme di autenticazione e autorizzazione robuste.Best practice: Use strong authentication and authorization platforms.
Dettagli: usare le identità federate in Azure AD invece degli archivi utente personalizzati.Detail: Use federated identities in Azure AD instead of custom user stores. Quando si usano identità federate, è possibile sfruttare un approccio basato sulla piattaforma e delegare ai partner la gestione delle identità autorizzate.When you use federated identities, you take advantage of a platform-based approach and you delegate the management of authorized identities to your partners. Un approccio con identità federate è particolarmente importante quando i dipendenti vengono rimossi e le modifiche devono essere applicate in più sistemi di identità e autorizzazioni.A federated identity approach is especially important when employees are terminated and that information needs to be reflected through multiple identity and authorization systems.

Usare i meccanismi di autenticazione e autorizzazione forniti dalla piattaforma invece di un codice personalizzato.Use platform-supplied authentication and authorization mechanisms instead of custom code. poiché sviluppare un codice di autenticazione personalizzato può dare luogo a errori.The reason is that developing custom authentication code can be error prone. La maggior parte degli sviluppatori non sarà esperta in sicurezza e probabilmente non conoscerà tutte le sfaccettature e gli ultimi sviluppi legati ad autenticazione e autorizzazione.Most of your developers are not security experts and are unlikely to be aware of the subtleties and the latest developments in authentication and authorization. Il codice commerciale, ad esempio quello di Microsoft, è spesso soggetto a rigorose analisi di sicurezza.Commercial code (for example, from Microsoft) is often extensively security reviewed.

Usare l'autenticazione a due fattori.Use two-factor authentication. L'autenticazione a due fattori è lo standard attuale per l'autenticazione e l'autorizzazione, in quanto permette di evitare le lacune di sicurezza intrinseche nei tipi di autenticazione basati su nome utente e password.Two-factor authentication is the current standard for authentication and authorization because it avoids the security weaknesses inherent in username and password types of authentication. L'accesso alle interfacce di gestione di Azure (portale/PowerShell remota) e ai servizi per i clienti deve essere progettato e configurato per l'uso di Azure AD multi-factor authentication.Access to both the Azure management (portal/remote PowerShell) interfaces and customer-facing services should be designed and configured to use Azure AD Multi-Factor Authentication.

Usare protocolli di autenticazione standard come OAuth2 e Kerberos.Use standard authentication protocols, such as OAuth2 and Kerberos. Questi protocolli sono stati ampiamente analizzati e sono probabilmente implementati come parte delle librerie della piattaforma per autenticazione e autorizzazione.These protocols have been extensively peer reviewed and are likely implemented as part of your platform libraries for authentication and authorization.

Usare la modellazione delle minacce durante la progettazione delle applicazioniUse threat modeling during application design

Security Development Lifecycle di Microsoft specifica che i team devono sviluppare un processo denominato modellazione delle minacce durante la fase di progettazione.The Microsoft Security Development Lifecycle specifies that teams should engage in a process called threat modeling during the design phase. Per semplificare questo processo, Microsoft ha creato SDL Threat Modeling Tool.To help facilitate this process, Microsoft has created the SDL Threat Modeling Tool. Modellando la progettazione dell'applicazione ed enumerando le minacce STRIDE in tutti i limiti di trust, sarà possibile rilevare errori di progettazione sin dall'inizio.Modeling the application design and enumerating STRIDE threats across all trust boundaries can catch design errors early on.

Nella tabella seguente sono elencate le minacce STRIDE e alcuni esempi di mitigazioni dei rischi che usano le funzionalità di Azure.The following table lists the STRIDE threats and gives some example mitigations that use Azure features. Queste mitigazioni dei rischi non funzioneranno in tutte le situazioni.These mitigations won’t work in every situation.

MinacciaThreat Proprietà di sicurezzaSecurity property Potenziali mitigazioni della piattaforma di AzurePotential Azure platform mitigations
SpoofingSpoofing AutenticazioneAuthentication Richiede connessioni HTTPS.Require HTTPS connections.
ManomissioneTampering IntegritàIntegrity Convalidare i certificati TLS/SSL.Validate TLS/SSL certificates.
RipudioRepudiation Non ripudioNon-repudiation Abilitazione del monitoraggio e diagnostica di Azure.Enable Azure monitoring and diagnostics.
Diffusione di informazioniInformation disclosure RiservatezzaConfidentiality Crittografare i dati sensibili inattivi tramite certificati di servizio.Encrypt sensitive data at rest by using service certificates.
Denial of ServiceDenial of service DisponibilitàAvailability Monitorare le metriche delle prestazioni per le potenziali condizioni di Denial of service.Monitor performance metrics for potential denial-of-service conditions. Implementare i filtri di connessione.Implement connection filters.
Elevazione dei privilegiElevation of privilege AutorizzazioneAuthorization Usare Privileged Identity Management.Use Privileged Identity Management.

Sviluppare nel Servizio app di AzureDevelop on Azure App Service

Servizio app di Azure è una soluzione PaaS che consente di creare applicazioni Web e per dispositivi mobili per qualsiasi piattaforma o dispositivo e di connettersi ai dati ovunque, nel cloud o in locale.Azure App Service is a PaaS offering that lets you create web and mobile apps for any platform or device and connect to data anywhere, in the cloud or on-premises. Il servizio app include le funzionalità Web e per dispositivi mobili prima fornite separatamente come Siti Web di Azure e Servizi mobili di Azure.App Service includes the web and mobile capabilities that were previously delivered separately as Azure Websites and Azure Mobile Services. Include anche nuove funzionalità per l'automazione dei processi aziendali e l'hosting di API cloud.It also includes new capabilities for automating business processes and hosting cloud APIs. Il servizio app è un singolo servizio integrato che offre un set completo di funzionalità per scenari Web, per dispositivi mobili e di integrazione.As a single integrated service, App Service brings a rich set of capabilities to web, mobile, and integration scenarios.

Di seguito sono illustrate le procedure consigliate per l'uso della cache locale del servizio app.Following are best practices for using App Service.

Procedura consigliata: eseguire l'autenticazione tramite Azure Active Directory.Best practice: Authenticate through Azure Active Directory.
Dettagli: il servizio app fornisce un servizio OAuth 2.0 per il provider di identità.Detail: App Service provides an OAuth 2.0 service for your identity provider. OAuth 2.0 è incentrato sulla semplicità di sviluppo client fornendo i flussi di autorizzazione specifici per le applicazioni Web, applicazioni desktop e telefoni cellulari.OAuth 2.0 focuses on client developer simplicity while providing specific authorization flows for web applications, desktop applications, and mobile phones. Azure AD usa OAuth 2.0 per consentire all'utente di autorizzare l'accesso alle applicazioni per dispositivi mobili e alle applicazioni Web.Azure AD uses OAuth 2.0 to enable you to authorize access to mobile and web applications.

Procedura consigliata: limitare l'accesso in base al principio di necessità e al principio dei privilegi minimi in materia di sicurezza.Best practice: Restrict access based on the need to know and least privilege security principles.
Dettagli: la limitazione degli accessi è fondamentale per le organizzazioni che intendono applicare criteri di sicurezza per l'accesso ai dati.Detail: Restricting access is imperative for organizations that want to enforce security policies for data access. È possibile usare il controllo degli accessi in base al ruolo di Azure per assegnare autorizzazioni a utenti, gruppi e applicazioni in un determinato ambito.You can use Azure RBAC to assign permissions to users, groups, and applications at a certain scope. Per altre informazioni sulla concessione agli utenti dell'accesso alle applicazioni, vedere la sezione relativa all'introduzione alla gestione degli accessi.To learn more about granting users access to applications, see Get started with access management.

Procedura consigliata: proteggere le chiavi.Best practice: Protect your keys.
Dettagli: Azure Key Vault consente di proteggere i segreti e le chiavi di crittografia usati da servizi e applicazioni cloud.Detail: Azure Key Vault helps safeguard cryptographic keys and secrets that cloud applications and services use. Con Key Vault è possibile crittografare chiavi e segreti (ad esempio, chiavi di autenticazione, chiavi dell'account di archiviazione, chiavi di crittografia dati, file PFX e password) usando chiavi protette da moduli di protezione hardware (HSM).With Key Vault, you can encrypt keys and secrets (such as authentication keys, storage account keys, data encryption keys, .PFX files, and passwords) by using keys that are protected by hardware security modules (HSMs). Per una maggiore sicurezza, è possibile importare o generare le chiavi in moduli di protezione hardware.For added assurance, you can import or generate keys in HSMs. Per ulteriori informazioni, vedere Azure Key Vault.See Azure Key Vault to learn more. È anche possibile utilizzare Azure Key Vault per gestire i certificati TLS con il rinnovo automatico.You can also use Key Vault to manage your TLS certificates with auto-renewal.

Procedura consigliata: limitare gli indirizzi IP di origine in ingresso.Best practice: Restrict incoming source IP addresses.
Dettagli: L'ambiente del servizio app ha una funzionalità di integrazione di rete virtuale che consente di limitare gli indirizzi IP di origine in ingresso tramite gruppi di sicurezza di rete (NSG).Detail: App Service Environment has a virtual network integration feature that helps you restrict incoming source IP addresses through network security groups. Le reti virtuali consentono di posizionare le risorse di Azure in una rete instradabile non Internet di cui si controlla l'accesso.Virtual networks enable you to place Azure resources in a non-internet, routable network that you control access to. Per altre informazioni, vedere Integrare un'app in una rete virtuale di Azure.To learn more, see Integrate your app with an Azure virtual network.

Procedura consigliata: monitorare lo stato di sicurezza degli ambienti del Servizio app di Azure.Best practice: Monitor the security state of your App Service environments.
Dettagli: usare il Centro sicurezza per monitorare gli ambienti del servizio app.Detail: Use Azure Security Center to monitor your App Service environments. Quando il Centro sicurezza identifica potenziali vulnerabilità della sicurezza, crea degli elementi consigliati utili per definire il processo di configurazione dei controlli necessari.When Security Center identifies potential security vulnerabilities, it creates recommendations that guide you through the process of configuring the needed controls.

Nota

Il monitoraggio del servizio app è in anteprima ed è disponibile solo nel livello standard del Centro sicurezza.Monitoring App Service is in preview and available only on the Standard tier of Security Center.

Installare un web application firewallInstall a web application firewall

Le applicazioni Web sono sempre più vittime di attacchi che sfruttano le più comuni vulnerabilità note.Web applications are increasingly targets of malicious attacks that exploit common known vulnerabilities. Per citarne alcuni, tra i più comuni troviamo gli attacchi SQL injection e gli attacchi di scripting intersito.Common among these exploits are SQL injection attacks, cross site scripting attacks to name a few. Impedire questo tipo di attacchi nel codice dell'applicazione può essere un'operazione complessa e potrebbe richiedere una manutenzione rigorosa, l'applicazione di patch e il monitoraggio a più livelli della topologia dell'applicazione.Preventing such attacks in application code can be challenging and may require rigorous maintenance, patching and monitoring at many layers of the application topology. Un Web application firewall centralizzato semplifica notevolmente la gestione della sicurezza e offre agli amministratori delle applicazioni migliori garanzie contro le minacce o le intrusioni.A centralized web application firewall helps make security management much simpler and gives better assurance to application administrators against threats or intrusions. Una soluzione WAF è anche in grado di reagire più velocemente a una minaccia alla sicurezza tramite l'applicazione di patch su una vulnerabilità nota in una posizione centrale, anziché proteggere ogni singola applicazione Web.A WAF solution can also react to a security threat faster by patching a known vulnerability at a central location versus securing each of individual web applications. È possibile convertire facilmente i gateway applicazione esistenti in un gateway applicazione con Web application firewall.Existing application gateways can be converted to a web application firewall enabled application gateway easily.

Web Application Firewall (WAF) è una funzionalità del gateway applicazione che offre una protezione centralizzata delle applicazioni Web da exploit e vulnerabilità comuni.Web application firewall (WAF) is a feature of Application Gateway that provides centralized protection of your web applications from common exploits and vulnerabilities. WAF si basa su regole di set di regole principali Open Web Application Security Project (OWASP) 3.0 o 2.2.9.WAF is based on rules from the Open Web Application Security Project (OWASP) core rule sets 3.0 or 2.2.9.

Monitorare le prestazioni delle applicazioniMonitor the performance of your applications

Il monitoraggio comporta la raccolta e l'analisi dei dati per determinare le prestazioni, l'integrità e la disponibilità dell'applicazione.Monitoring is the act of collecting and analyzing data to determine the performance, health, and availability of your application. Una strategia di monitoraggio efficace aiuta a comprendere il funzionamento dettagliato dei componenti dell'applicazione.An effective monitoring strategy helps you understand the detailed operation of the components of your application. Contribuisce ad aumentare il tempo di attività tramite notifiche degli aspetti critici, in modo da poterli risolvere prima che diventino effettivi problemi.It helps you increase your uptime by notifying you of critical issues so that you can resolve them before they become problems. Consente inoltre di rilevare le anomalie che potrebbero essere correlate alla sicurezza.It also helps you detect anomalies that might be security related.

Usare Azure Application Insights per monitorare disponibilità, prestazioni e utilizzo dell'applicazione, indipendentemente dal fatto che sia ospitata nel cloud o in locale.Use Azure Application Insights to monitor availability, performance, and usage of your application, whether it's hosted in the cloud or on-premises. Con Application Insights è anche possibile identificare e diagnosticare rapidamente gli errori nell'applicazione senza attendere che vengano segnalati da un utente.By using Application Insights, you can quickly identify and diagnose errors in your application without waiting for a user to report them. Con le informazioni raccolte, è possibile prendere decisioni informate sulla manutenzione dell'applicazione e sui miglioramenti da apportare.With the information that you collect, you can make informed choices on your application's maintenance and improvements.

Application Insights include strumenti estensivi per l'interazione con i dati raccolti dal servizio stesso.Application Insights has extensive tools for interacting with the data that it collects. Application Insights archivia questi dati in un repository comune.Application Insights stores its data in a common repository. Può sfruttare le funzionalità condivise, ad esempio gli avvisi, i dashboard e l'analisi approfondita con il linguaggio di query kusto.It can take advantage of shared functionality such as alerts, dashboards, and deep analysis with the Kusto query language.

Eseguire test di penetrazione della sicurezzaPerform security penetration testing

La convalida delle difese di sicurezza è importante quanto il test di qualsiasi altra funzionalità.Validating security defenses is as important as testing any other functionality. Eseguire test di penetrazione in una parte standard del processo di compilazione e distribuzione.Make penetration testing a standard part of your build and deployment process. Pianificare test di sicurezza e analisi delle vulnerabilità periodici sulle applicazioni distribuite, monitorando eventuali porte aperte, endpoint e attacchi.Schedule regular security tests and vulnerability scanning on deployed applications, and monitor for open ports, endpoints, and attacks.

Il test fuzzy è un metodo per individuare gli errori del programma (errori del codice) fornendo dati di input in formato non valido alle interfacce di programma (punti di ingresso) che analizzano e utilizzano questi dati.Fuzz testing is a method for finding program failures (code errors) by supplying malformed input data to program interfaces (entry points) that parse and consume this data. Il rilevamento dei rischi per la sicurezza di Microsoft è uno strumento basato sul cloud che è possibile usare per cercare bug e altre vulnerabilità di sicurezza nel software prima di distribuirlo in Azure.Microsoft Security Risk Detection is a cloud-based tool that you can use to look for bugs and other security vulnerabilities in your software before you deploy it to Azure. Lo strumento è progettato per rilevare le vulnerabilità prima di distribuire il software, in modo da non dover applicare patch a un bug, gestire arresti anomali o rispondere a un attacco dopo il rilascio del software.The tool is designed to catch vulnerabilities before you deploy software so you don’t have to patch a bug, deal with crashes, or respond to an attack after the software is released.

Passaggi successiviNext steps

In questo articolo sono stati illustrati i vantaggi di sicurezza di una distribuzione PaaS di Azure e le procedure consigliate per le applicazioni cloud.In this article, we focused on security advantages of an Azure PaaS deployment and security best practices for cloud applications. Il passaggio successivo è costituito dall'approfondimento delle procedure consigliate per proteggere le soluzioni PaaS Web e mobili usando servizi di Azure specifici.Next, learn recommended practices for securing your PaaS web and mobile solutions using specific Azure services. Si inizierà con il servizio app Azure, il database SQL di Azure e l'analisi delle sinapsi di Azure e archiviazione di Azure.We’ll start with Azure App Service, Azure SQL Database and Azure Synapse Analytics, and Azure Storage. Non appena saranno disponibili le procedure consigliate per altri servizi Azure, nell'elenco seguente verranno inseriti i relativi collegamenti:As articles on recommended practices for other Azure services become available, links will be provided in the following list:

Vedere sviluppo di applicazioni sicure in Azure per domande di sicurezza e controlli da considerare in ogni fase del ciclo di vita di sviluppo del software durante lo sviluppo di applicazioni per il cloud.See Developing secure applications on Azure for security questions and controls you should consider at each phase of the software development lifecycle when developing applications for the cloud.

Per altre procedure consigliate per la sicurezza da usare nella progettazione, la distribuzione e la gestione di soluzioni cloud tramite Azure, vedere Procedure consigliate e modelli per la sicurezza di Azure.See Azure security best practices and patterns for more security best practices to use when you’re designing, deploying, and managing your cloud solutions by using Azure.

Le risorse seguenti offrono altre informazioni più generali sulla sicurezza di Azure e sui servizi Microsoft correlati:The following resources are available to provide more general information about Azure security and related Microsoft services: