{"id":5773,"date":"2010-12-16T17:50:09","date_gmt":"2010-12-16T16:50:09","guid":{"rendered":"https:\/\/www.artera.net\/it\/blog\/?p=5773"},"modified":"2023-02-27T14:51:52","modified_gmt":"2023-02-27T14:51:52","slug":"controllo-degli-accessi-web-in-java","status":"publish","type":"post","link":"https:\/\/www.artera.net\/it\/sviluppo\/controllo-degli-accessi-web-in-java\/","title":{"rendered":"Controllo degli accessi web in Java"},"content":{"rendered":"<p><img decoding=\"async\" class=\"alignleft size-full wp-image-5806\" style=\"margin: 0 10px 0 0;\" title=\"Java\" src=\"https:\/\/www.artera.net\/wp-content\/uploads\/2010\/12\/java-logo_svg-a.jpg\" alt=\"Java\" width=\"113\" height=\"150\" \/>Spesso \u00e8 necessario <strong>proteggere in parte o tutta un&#8217;applicazione<\/strong> tramite la classica combinazione utente\/password. Per chi proviene da PHP, Perl o altri ambienti di scripting questa richiesta solitamente viene seguita dalla ricerca e utilizzo di qualche libreria esistente o, in alcuni casi, con la scrittura di codice ad hoc. In java non \u00e8 cos\u00ec, la cosiddetta <em>&#8220;container-managed authentication&#8221;<\/em> fa parte dello standard <em>JEE<\/em> (<em>Java Enterprise Edition<\/em>); queste regole si traducono in vere e proprie API di programmazione e da specifiche di configurazione delle applicazioni, in modo che sia possibile proteggere le applicazioni semplicemente modificando dei file di configurazione, senza dover implementare nulla.<\/p>\n<h3>Una sezione di amministrazione<\/h3>\n<p>Moltissime applicazioni hanno una sezione dedicata all&#8217;amministrazione: creazione e modifica degli utenti, configurazione, manutenzione, eccetera; questa sezione \u00e8 normalmente visibile solamente ad una ristretta cerchia di addetti, che vi accedono tramite password. Esempio di configurazione:<\/p>\n<ul>\n<li>tutte le risorse <em>pubbliche<\/em> del sito (pagine, servlet, immagini, css, ecc.) accessibili da chiunque;<\/li>\n<li>per accedere alle risorse che hanno un path che comincia per <em>\/admin\/*<\/em> bisogna prima effettuare una login.<\/li>\n<\/ul>\n<p>Chiariamo subito un aspetto importante: <strong>tutte le specifiche definite come  <em>&#8220;container-managed&#8221;<\/em><\/strong>, fra cui la sicurezza, <strong>indicano <em>cosa<\/em> si aspetta l&#8217;applicazione in termini di servizi dall&#8217;ambiente in cui gira<\/strong> (il container appunto), <strong>ma non <em>come<\/em> questi verranno implementati<\/strong>. Nell&#8217;esempio che vedremo sar\u00e0 utilizzata una funzionalit\u00e0 specifica di Tomcat, ma la stessa applicazione potr\u00e0 girare senza alcuna modifica sullo stesso Tomcat configurato in maniera diversa, su application server com JBoss o Weblogic, ecc.<\/p>\n<h3>Configurazione dell&#8217;applicazione<\/h3>\n<p>Per prima cosa bisogna modificare il file <em>WEB-INF\/web.xml<\/em>, aggiungendo queste righe:<\/p>\n<p>[xml]&lt;!&#8211; Security constraint per la sezione di amministrazione &#8211;&gt;<br \/>\n&lt;security-constraint&gt;<br \/>\n  &lt;web-resource-collection&gt;<br \/>\n    &lt;web-resource-name&gt;Amministrazione&lt;\/web-resource-name&gt;<br \/>\n    &lt;url-pattern&gt;\/admin\/*&lt;\/url-pattern&gt;<br \/>\n  &lt;\/web-resource-collection&gt;<br \/>\n  &lt;auth-constraint&gt;<br \/>\n    &lt;role-name&gt;administrator&lt;\/role-name&gt;<br \/>\n  &lt;\/auth-constraint&gt;<br \/>\n&lt;\/security-constraint&gt;<\/p>\n<p>&lt;!&#8211; Configurazione del metodo di login &#8211;&gt;<br \/>\n&lt;login-config&gt;<br \/>\n  &lt;auth-method&gt;BASIC&lt;\/auth-method&gt;<br \/>\n  &lt;realm-name&gt;Sezione di amministrazione&lt;\/realm-name&gt;<br \/>\n&lt;\/login-config&gt;[\/xml]<\/p>\n<p>In questo modo, ogni volta che si cercher\u00e0 di accedere ad una pagina, una servlet o altro sotto il path <em>\/admin\/<\/em>, il browser mostrer\u00e0 una finestra di dialogo per l&#8217;inserimento della password.<\/p>\n<h3>Configurazione di Tomcat<\/h3>\n<p>Vediamo ora <em>una<\/em> delle possibili implementazioni della sicurezza, ovvero tramite la configurazione di Tomcat. Aprire il file <em>tomcat-users.xml<\/em>, che si trova nella directory <em>conf<\/em> dove Tomcat \u00e8 installato, e aggiungere l&#8217;utente <em>admin<\/em> con questa riga di XML:<\/p>\n<p>[xml]&lt;user name=&quot;admin&quot; password=&quot;segreta&quot; roles=&quot;administrator&quot;\/&gt;[\/xml]<\/p>\n<p>Dopo aver riavviato, dovreste essere in grado di accedere alle pagine sotto <em>\/admin\/<\/em> usando <em>&#8220;admin&#8221;<\/em> come nome utente e <em>&#8220;segreta&#8221;<\/em> come password.<\/p>\n<p>Ovviamente questa soluzione \u00e8 applicabile solamente a Tomcat, inoltre \u00e8 decisamente poco scalabile e manutenibile!<\/p>\n<h3>Sviluppi<\/h3>\n<p>Ci sono molti modi per configurare l&#8217;autenticazione nelle web application Java, ad esempio con Tomcat \u00e8 possibile utilizzare un database d&#8217;appoggio tramite JDBC, accedere a LDAP, addirittura \u00e8 possibile creare un proprio <em>provider<\/em> per l&#8217;autenticazione per gestire casi decisamente specializzati, e lo stesso con tutti i JEE container, siano essi semplici servlet container che veri e propri stack JEE.<\/p>\n<h3>Linkografia<\/h3>\n<ul>\n<li><a title=\"Realm Configuration HOW-TO\" href=\"http:\/\/tomcat.apache.org\/tomcat-6.0-doc\/realm-howto.html\" target=\"_blank\" rel=\"noopener noreferrer\">Realm Configuration HOW-TO<\/a>: documentazione di Tomcat relativa ai servizi di autenticazione container-managed;<\/li>\n<li>The Java EE 6 Tutorial &#8211; Securing Web Applications.<\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p><img decoding=\"async\" class=\"alignleft size-full wp-image-5806\" style=\"margin: 0 10px 0 0;\" title=\"Java\" src=\"https:\/\/www.artera.net\/wp-content\/uploads\/2010\/12\/java-logo_svg-a.jpg\" alt=\"Java\" width=\"75\" height=\"100\" \/>Spesso \u00e8 necessario <strong>proteggere in parte o tutta un&#8217;applicazione<\/strong> tramite la classica combinazione utente\/password. Per chi proviene da PHP, Perl o altri ambienti di scripting questa richiesta solitamente viene seguita dalla ricerca e utilizzo di qualche libreria esistente o, in alcuni casi, con la scrittura di codice ad hoc. <strong>In java non \u00e8 cos\u00ec<\/strong>.<\/p>\n","protected":false},"author":4,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_eb_attr":"","footnotes":""},"categories":[108],"tags":[80,172,174,55,175],"class_list":["post-5773","post","type-post","status-publish","format-standard","hentry","category-sviluppo","tag-autenticazione","tag-java","tag-servlet","tag-sicurezza","tag-tomcat"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.3 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>\u2022 Controllo degli accessi web in Java - Artera<\/title>\n<meta name=\"description\" content=\"Leggi dal blog: Controllo degli accessi web in Java. Contattaci per una partnership! Artera Swiss Premium Hosting news, articoli e notizie interessanti dal mondo digitale.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.artera.net\/it\/sviluppo\/controllo-degli-accessi-web-in-java\/\" \/>\n<meta property=\"og:locale\" content=\"it_IT\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"\u2022 Controllo degli accessi web in Java - Artera\" \/>\n<meta property=\"og:description\" content=\"Leggi dal blog: Controllo degli accessi web in Java. Contattaci per una partnership! Artera Swiss Premium Hosting news, articoli e notizie interessanti dal mondo digitale.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.artera.net\/it\/sviluppo\/controllo-degli-accessi-web-in-java\/\" \/>\n<meta property=\"og:site_name\" content=\"Artera\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/artera.net\/\" \/>\n<meta property=\"article:published_time\" content=\"2010-12-16T16:50:09+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2023-02-27T14:51:52+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.artera.net\/wp-content\/uploads\/2010\/12\/java-logo_svg-a.jpg\" \/>\n<meta name=\"author\" content=\"Sergio Ravera\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Scritto da\" \/>\n\t<meta name=\"twitter:data1\" content=\"Sergio Ravera\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tempo di lettura stimato\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 minuti\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.artera.net\\\/it\\\/sviluppo\\\/controllo-degli-accessi-web-in-java\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.artera.net\\\/it\\\/sviluppo\\\/controllo-degli-accessi-web-in-java\\\/\"},\"author\":{\"name\":\"Sergio Ravera\",\"@id\":\"https:\\\/\\\/www.artera.net\\\/it\\\/#\\\/schema\\\/person\\\/48ffb6b3727677643fbfd3ecf0a10aa0\"},\"headline\":\"Controllo degli accessi web in Java\",\"datePublished\":\"2010-12-16T16:50:09+00:00\",\"dateModified\":\"2023-02-27T14:51:52+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.artera.net\\\/it\\\/sviluppo\\\/controllo-degli-accessi-web-in-java\\\/\"},\"wordCount\":559,\"commentCount\":1,\"publisher\":{\"@id\":\"https:\\\/\\\/www.artera.net\\\/it\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/www.artera.net\\\/it\\\/sviluppo\\\/controllo-degli-accessi-web-in-java\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.artera.net\\\/wp-content\\\/uploads\\\/2010\\\/12\\\/java-logo_svg-a.jpg\",\"keywords\":[\"autenticazione\",\"java\",\"servlet\",\"sicurezza\",\"tomcat\"],\"articleSection\":[\"Sviluppo\"],\"inLanguage\":\"it-IT\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.artera.net\\\/it\\\/sviluppo\\\/controllo-degli-accessi-web-in-java\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.artera.net\\\/it\\\/sviluppo\\\/controllo-degli-accessi-web-in-java\\\/\",\"url\":\"https:\\\/\\\/www.artera.net\\\/it\\\/sviluppo\\\/controllo-degli-accessi-web-in-java\\\/\",\"name\":\"\u2022 Controllo degli accessi web in Java - Artera\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.artera.net\\\/it\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.artera.net\\\/it\\\/sviluppo\\\/controllo-degli-accessi-web-in-java\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.artera.net\\\/it\\\/sviluppo\\\/controllo-degli-accessi-web-in-java\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.artera.net\\\/wp-content\\\/uploads\\\/2010\\\/12\\\/java-logo_svg-a.jpg\",\"datePublished\":\"2010-12-16T16:50:09+00:00\",\"dateModified\":\"2023-02-27T14:51:52+00:00\",\"description\":\"Leggi dal blog: Controllo degli accessi web in Java. Contattaci per una partnership! Artera Swiss Premium Hosting news, articoli e notizie interessanti dal mondo digitale.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.artera.net\\\/it\\\/sviluppo\\\/controllo-degli-accessi-web-in-java\\\/#breadcrumb\"},\"inLanguage\":\"it-IT\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.artera.net\\\/it\\\/sviluppo\\\/controllo-degli-accessi-web-in-java\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"it-IT\",\"@id\":\"https:\\\/\\\/www.artera.net\\\/it\\\/sviluppo\\\/controllo-degli-accessi-web-in-java\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.artera.net\\\/wp-content\\\/uploads\\\/2010\\\/12\\\/java-logo_svg-a.jpg\",\"contentUrl\":\"https:\\\/\\\/www.artera.net\\\/wp-content\\\/uploads\\\/2010\\\/12\\\/java-logo_svg-a.jpg\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.artera.net\\\/it\\\/sviluppo\\\/controllo-degli-accessi-web-in-java\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.artera.net\\\/it\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Controllo degli accessi web in Java\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.artera.net\\\/it\\\/#website\",\"url\":\"https:\\\/\\\/www.artera.net\\\/it\\\/\",\"name\":\"Artera\",\"description\":\"Swiss Premium Hosting\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.artera.net\\\/it\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.artera.net\\\/it\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"it-IT\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/www.artera.net\\\/it\\\/#organization\",\"name\":\"Artera\",\"url\":\"https:\\\/\\\/www.artera.net\\\/it\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"it-IT\",\"@id\":\"https:\\\/\\\/www.artera.net\\\/it\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/www.artera.net\\\/wp-content\\\/uploads\\\/2019\\\/09\\\/artera-logo.png\",\"contentUrl\":\"https:\\\/\\\/www.artera.net\\\/wp-content\\\/uploads\\\/2019\\\/09\\\/artera-logo.png\",\"width\":300,\"height\":77,\"caption\":\"Artera\"},\"image\":{\"@id\":\"https:\\\/\\\/www.artera.net\\\/it\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/www.facebook.com\\\/artera.net\\\/\",\"https:\\\/\\\/www.linkedin.com\\\/company\\\/artera\\\/\",\"https:\\\/\\\/www.instagram.com\\\/artera_swiss\\\/\"]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.artera.net\\\/it\\\/#\\\/schema\\\/person\\\/48ffb6b3727677643fbfd3ecf0a10aa0\",\"name\":\"Sergio Ravera\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"it-IT\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/618f2c20338bb422bd317eae8d6c9c097ba85d3f5a1da18e21ecf5da5ee3a448?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/618f2c20338bb422bd317eae8d6c9c097ba85d3f5a1da18e21ecf5da5ee3a448?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/618f2c20338bb422bd317eae8d6c9c097ba85d3f5a1da18e21ecf5da5ee3a448?s=96&d=mm&r=g\",\"caption\":\"Sergio Ravera\"},\"description\":\"Raised in a family tradition of merchants, my entrepreneurial spirit drove me to launch my first e-commerce venture in 1998. My vision and dedication led, in 2002, to the founding of Artera, now a leading brand in premium managed cloud hosting services. As Chief Executive Officer, I lead DHH Switzerland SA, part of the international DHH S.p.A. group, listed on the Milan Stock Exchange with the reference code (AIM \u2013 ISIN: IT0005203622). It is under this brand that the Artera brand continues to grow and thrive. In addition to my commitment to the business world, I am an active researcher in the field of new technologies, always fascinated by cutting-edge innovations in the industry.\",\"sameAs\":[\"https:\\\/\\\/www.linkedin.com\\\/in\\\/sergioravera\\\/\"],\"url\":\"https:\\\/\\\/www.artera.net\\\/it\\\/author\\\/sergio-ravera\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"\u2022 Controllo degli accessi web in Java - Artera","description":"Leggi dal blog: Controllo degli accessi web in Java. Contattaci per una partnership! Artera Swiss Premium Hosting news, articoli e notizie interessanti dal mondo digitale.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.artera.net\/it\/sviluppo\/controllo-degli-accessi-web-in-java\/","og_locale":"it_IT","og_type":"article","og_title":"\u2022 Controllo degli accessi web in Java - Artera","og_description":"Leggi dal blog: Controllo degli accessi web in Java. Contattaci per una partnership! Artera Swiss Premium Hosting news, articoli e notizie interessanti dal mondo digitale.","og_url":"https:\/\/www.artera.net\/it\/sviluppo\/controllo-degli-accessi-web-in-java\/","og_site_name":"Artera","article_publisher":"https:\/\/www.facebook.com\/artera.net\/","article_published_time":"2010-12-16T16:50:09+00:00","article_modified_time":"2023-02-27T14:51:52+00:00","og_image":[{"url":"https:\/\/www.artera.net\/wp-content\/uploads\/2010\/12\/java-logo_svg-a.jpg","type":"","width":"","height":""}],"author":"Sergio Ravera","twitter_card":"summary_large_image","twitter_misc":{"Scritto da":"Sergio Ravera","Tempo di lettura stimato":"3 minuti"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.artera.net\/it\/sviluppo\/controllo-degli-accessi-web-in-java\/#article","isPartOf":{"@id":"https:\/\/www.artera.net\/it\/sviluppo\/controllo-degli-accessi-web-in-java\/"},"author":{"name":"Sergio Ravera","@id":"https:\/\/www.artera.net\/it\/#\/schema\/person\/48ffb6b3727677643fbfd3ecf0a10aa0"},"headline":"Controllo degli accessi web in Java","datePublished":"2010-12-16T16:50:09+00:00","dateModified":"2023-02-27T14:51:52+00:00","mainEntityOfPage":{"@id":"https:\/\/www.artera.net\/it\/sviluppo\/controllo-degli-accessi-web-in-java\/"},"wordCount":559,"commentCount":1,"publisher":{"@id":"https:\/\/www.artera.net\/it\/#organization"},"image":{"@id":"https:\/\/www.artera.net\/it\/sviluppo\/controllo-degli-accessi-web-in-java\/#primaryimage"},"thumbnailUrl":"https:\/\/www.artera.net\/wp-content\/uploads\/2010\/12\/java-logo_svg-a.jpg","keywords":["autenticazione","java","servlet","sicurezza","tomcat"],"articleSection":["Sviluppo"],"inLanguage":"it-IT","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.artera.net\/it\/sviluppo\/controllo-degli-accessi-web-in-java\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.artera.net\/it\/sviluppo\/controllo-degli-accessi-web-in-java\/","url":"https:\/\/www.artera.net\/it\/sviluppo\/controllo-degli-accessi-web-in-java\/","name":"\u2022 Controllo degli accessi web in Java - Artera","isPartOf":{"@id":"https:\/\/www.artera.net\/it\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.artera.net\/it\/sviluppo\/controllo-degli-accessi-web-in-java\/#primaryimage"},"image":{"@id":"https:\/\/www.artera.net\/it\/sviluppo\/controllo-degli-accessi-web-in-java\/#primaryimage"},"thumbnailUrl":"https:\/\/www.artera.net\/wp-content\/uploads\/2010\/12\/java-logo_svg-a.jpg","datePublished":"2010-12-16T16:50:09+00:00","dateModified":"2023-02-27T14:51:52+00:00","description":"Leggi dal blog: Controllo degli accessi web in Java. Contattaci per una partnership! Artera Swiss Premium Hosting news, articoli e notizie interessanti dal mondo digitale.","breadcrumb":{"@id":"https:\/\/www.artera.net\/it\/sviluppo\/controllo-degli-accessi-web-in-java\/#breadcrumb"},"inLanguage":"it-IT","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.artera.net\/it\/sviluppo\/controllo-degli-accessi-web-in-java\/"]}]},{"@type":"ImageObject","inLanguage":"it-IT","@id":"https:\/\/www.artera.net\/it\/sviluppo\/controllo-degli-accessi-web-in-java\/#primaryimage","url":"https:\/\/www.artera.net\/wp-content\/uploads\/2010\/12\/java-logo_svg-a.jpg","contentUrl":"https:\/\/www.artera.net\/wp-content\/uploads\/2010\/12\/java-logo_svg-a.jpg"},{"@type":"BreadcrumbList","@id":"https:\/\/www.artera.net\/it\/sviluppo\/controllo-degli-accessi-web-in-java\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.artera.net\/it\/"},{"@type":"ListItem","position":2,"name":"Controllo degli accessi web in Java"}]},{"@type":"WebSite","@id":"https:\/\/www.artera.net\/it\/#website","url":"https:\/\/www.artera.net\/it\/","name":"Artera","description":"Swiss Premium Hosting","publisher":{"@id":"https:\/\/www.artera.net\/it\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.artera.net\/it\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"it-IT"},{"@type":"Organization","@id":"https:\/\/www.artera.net\/it\/#organization","name":"Artera","url":"https:\/\/www.artera.net\/it\/","logo":{"@type":"ImageObject","inLanguage":"it-IT","@id":"https:\/\/www.artera.net\/it\/#\/schema\/logo\/image\/","url":"https:\/\/www.artera.net\/wp-content\/uploads\/2019\/09\/artera-logo.png","contentUrl":"https:\/\/www.artera.net\/wp-content\/uploads\/2019\/09\/artera-logo.png","width":300,"height":77,"caption":"Artera"},"image":{"@id":"https:\/\/www.artera.net\/it\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/artera.net\/","https:\/\/www.linkedin.com\/company\/artera\/","https:\/\/www.instagram.com\/artera_swiss\/"]},{"@type":"Person","@id":"https:\/\/www.artera.net\/it\/#\/schema\/person\/48ffb6b3727677643fbfd3ecf0a10aa0","name":"Sergio Ravera","image":{"@type":"ImageObject","inLanguage":"it-IT","@id":"https:\/\/secure.gravatar.com\/avatar\/618f2c20338bb422bd317eae8d6c9c097ba85d3f5a1da18e21ecf5da5ee3a448?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/618f2c20338bb422bd317eae8d6c9c097ba85d3f5a1da18e21ecf5da5ee3a448?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/618f2c20338bb422bd317eae8d6c9c097ba85d3f5a1da18e21ecf5da5ee3a448?s=96&d=mm&r=g","caption":"Sergio Ravera"},"description":"Raised in a family tradition of merchants, my entrepreneurial spirit drove me to launch my first e-commerce venture in 1998. My vision and dedication led, in 2002, to the founding of Artera, now a leading brand in premium managed cloud hosting services. As Chief Executive Officer, I lead DHH Switzerland SA, part of the international DHH S.p.A. group, listed on the Milan Stock Exchange with the reference code (AIM \u2013 ISIN: IT0005203622). It is under this brand that the Artera brand continues to grow and thrive. In addition to my commitment to the business world, I am an active researcher in the field of new technologies, always fascinated by cutting-edge innovations in the industry.","sameAs":["https:\/\/www.linkedin.com\/in\/sergioravera\/"],"url":"https:\/\/www.artera.net\/it\/author\/sergio-ravera\/"}]}},"_links":{"self":[{"href":"https:\/\/www.artera.net\/it\/wp-json\/wp\/v2\/posts\/5773","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.artera.net\/it\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.artera.net\/it\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.artera.net\/it\/wp-json\/wp\/v2\/users\/4"}],"replies":[{"embeddable":true,"href":"https:\/\/www.artera.net\/it\/wp-json\/wp\/v2\/comments?post=5773"}],"version-history":[{"count":2,"href":"https:\/\/www.artera.net\/it\/wp-json\/wp\/v2\/posts\/5773\/revisions"}],"predecessor-version":[{"id":216520,"href":"https:\/\/www.artera.net\/it\/wp-json\/wp\/v2\/posts\/5773\/revisions\/216520"}],"wp:attachment":[{"href":"https:\/\/www.artera.net\/it\/wp-json\/wp\/v2\/media?parent=5773"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.artera.net\/it\/wp-json\/wp\/v2\/categories?post=5773"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.artera.net\/it\/wp-json\/wp\/v2\/tags?post=5773"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}