{"id":848,"date":"2019-08-23T12:28:24","date_gmt":"2019-08-23T10:28:24","guid":{"rendered":"https:\/\/blog.besharp.it\/?p=848"},"modified":"2021-03-17T12:52:34","modified_gmt":"2021-03-17T11:52:34","slug":"amazon-cognito-autenticazione-gestita-mediante-single-sign-on","status":"publish","type":"post","link":"https:\/\/blog.besharp.it\/it\/amazon-cognito-autenticazione-gestita-mediante-single-sign-on\/","title":{"rendered":"Amazon Cognito: Autenticazione gestita mediante Single Sign-On"},"content":{"rendered":"

Una delle features pi\u00f9 ricorrenti nelle applicazioni web e mobile \u00e8 certamente l\u2019autenticazione degli utenti; poter fare off-load delle responsabilit\u00e0 connesse alla gestione dell\u2019autenticazione degli utenti aumenta notevolmente la robustezza delle soluzioni realizzate e la velocit\u00e0 di sviluppo.<\/span><\/p>\n

L’utilizzo dei managed services permette al team di sviluppo di automatizzare e rendere robuste alcune funzionalit\u00e0 critiche nella realizzazione di applicazioni web come ad esempio la user authentication. Il managed services dedicato alla risoluzione di questo aspetto \u00e8 <\/span>Amazon Cognito<\/b>.\u00a0<\/span><\/p>\n

Amazon Cognito<\/b> fornisce un building-block in grado di accelerare e rendere sicuro il processo di autenticazione ed autorizzazione degli utenti verso applicazioni mobile o web.<\/span><\/p>\n

Prima di entrare nel vivo della trattazione \u00e8 utile definire i termini specifici del servizio e i concetti propedeutici alla comprensione dei temi trattati.<\/span><\/p>\n

Cos\u2019\u00e8 Amazon Cognito?<\/span><\/h2>\n

Amazon Cognito<\/b> consente di aggiungere strumenti di registrazione e autenticazione ad applicazioni Web e mobile. Permette di autenticare gli utenti sia mediante una user pool completamente gestita sia tramite un provider di identit\u00e0 esterno (IdP). Inoltre pu\u00f2 fornire credenziali di sicurezza temporanee per accedere alle risorse AWS.<\/span><\/p>\n

Amazon Cognito<\/b> \u00e8 compatibile con provider di identit\u00e0 esterni che supportino lo standard SAML o <\/span>OpenID<\/b> Connect, con provider di identit\u00e0 social quali <\/span>Facebook<\/b>, <\/span>Twitter<\/b> e <\/span>Amazon<\/b> e consente anche di integrare il proprio provider di identit\u00e0.<\/span><\/p>\n

Amazon Cognito<\/b> \u00e8 un servizio distribuito e ad accesso pubblico; ci\u00f2 significa che chiunque pu\u00f2 chiamare le API di Cognito per autenticarsi presso un servizio. Si tratta di un comportamento standard e ben rodato; \u00e8 normale che un servizio di autenticazione sia pubblico ed accessibile per consentire ai client di effettuare le operazioni di login.<\/span><\/p>\n

La sicurezza della soluzione \u00e8 garantita da Amazon,<\/b> che gestisce completamente il servizio e le API accessibili dal pubblico.\u00a0<\/span><\/p>\n

I client possono quindi effettuare il login mediante uno degli IdP supportati, oppure inviare a Cognito username e password per ottenere in cambio un <\/span>token di identit\u00e0<\/b> e, opzionalmente, un set di credenziali IAM la cui policy \u00e8 controllata da Cognito mediante apposite configurazioni.<\/span><\/p>\n

I client in possesso del token di identit\u00e0 possono autenticarsi presso i servizi che usano Amazon Cognito come IdP e potranno usare le chiavi IAM (se fornite) sia per chiamare il back-end applicativo che supporta la IAM authentication, sia per accedere direttamente alle risorse sull\u2019account AWS consentite da apposite policy.<\/span><\/p>\n

Amazon Cognito <\/span>si integra con API Gateway in modo automatico,<\/b> permettendo quindi di proteggere i back-end in modo completamente gestito ed automatico.<\/span><\/p>\n

I back-end protetti da API Gateway e Cognito non riceveranno richieste che non superino i controlli di autenticazione, permettendo di ottenere una soluzione pi\u00f9 robusta e cost efficient.<\/span><\/p>\n

L\u2019integrazione tra Amazon Cognito e API Gateway permette di implementare solo l\u2019autenticazione oppure autenticazione ed autorizzazione.<\/span><\/p>\n

Nel caso in cui si intenda sviluppare la sola autenticazione sar\u00e0 possibile sfruttare <\/span>l\u2019integrazione mediante Cognito User Pool<\/b>, che garantir\u00e0 l\u2019accesso alle API a qualsiasi utente correttamente autenticato mediante credenziali o tramite IdP esterno.<\/span><\/p>\n

Se si seleziona <\/span>l\u2019integrazione con IAM<\/b> si potranno ottenere le funzionalit\u00e0 di autenticazione e autorizzazione. Verr\u00e0 impiegato il token di identit\u00e0 di una User Pool per ottenere una coppia di chiavi IAM da utilizzare per effettuare le chiamate al back-end.\u00a0<\/span><\/p>\n

Diventa quindi possibile limitare i set di API accessibili a diversi gruppi di utenti. Inoltre, mediante le chiavi temporanee e le apposite policy gestite, \u00e8 possibile dare accesso controllato e sicuro a subset di risorse AWS, permettendo ad esempio di caricare un file su S3 o di mettere un messaggio in una coda senza dover interagire con il back-end dell\u2019applicazione.Di fatto si sta effettuando l\u2019off-load di alcune operazioni in modo sicuro ed efficace.<\/span><\/p>\n

Gli utenti vengono gestiti attraverso <\/span>due tipologie di pools,<\/b> che sono il fulcro del funzionamento di Amazon Cognito: <\/span>User Pools e Identity Pools.<\/b><\/p>\n

Andiamo quindi a descrivere i concetti principali di cognito.<\/span><\/p>\n

User Pools<\/span><\/h2>\n

Un pool di utenti \u00e8 una directory utenti configurabile per l’utilizzo con un’applicazione Web e\/o mobile. <\/b>Un pool di utenti consente di memorizzare in modo sicuro gli attributi del profilo dei tuoi utenti.\u00a0<\/span><\/p>\n

Si tratta quindi di un modo per fare completo off-load della gestione degli utenti che decidono di registrarsi al servizio mediante username e password. Tra le operazioni di cui \u00e8 possibile fare off-load della responsabilit\u00e0 vi sono certamente lo storage sicuro dei dati utente, la verifica di eventuali numeri di telefono o indirizzi email, la gestione delle API e del flusso di registrazione, login, logout e il reset password.<\/span><\/p>\n

Le user pools sono un componente fondamentale di qualsiasi sistema di autenticazione basato su Amazon Cognito. \u00c8 anche possibile collegare una user pool con un IdP esterno per permettere agli utenti del servizio di registrarsi ed accedere mediante Facebook, Google, amazon o qualsiasi IdP pubblico che supporti OpenID.<\/span><\/p>\n

Identity Pools<\/span><\/h2>\n

I pool di identit\u00e0 sono container utilizzati da Cognito Identity per mantenere organizzate le identit\u00e0 federate dell’applicazione.<\/b> Un pool di identit\u00e0 associa le identit\u00e0 federate provenienti da provider di identit\u00e0 esterni o User Pool con un identificatore utente specifico univoco. I pool di identit\u00e0 non memorizzano i profili degli utenti, ma solo il loro id univoco generato e gestito da Cognito. Un pool di identit\u00e0 pu\u00f2 essere associato a una o pi\u00f9 applicazioni.\u00a0<\/span><\/p>\n

Cognito Identity assegna agli utenti un set di credenziali temporanee e con privilegi limitati per accedere alle risorse AWS, perci\u00f2 non \u00e8 necessario usare le credenziali dell’account AWS per permettere agli utenti di interagire con le risorse cloud. Le autorizzazioni per ciascun utente sono controllate tramite ruoli di AWS IAM personalizzabili. \u00c8 possibile definire regole per scegliere il ruolo IAM di ciascun utente; se utilizzi i gruppi in un pool di utenti Cognito, puoi assegnare ruoli IAM in base a tali gruppi. Cognito Identity consente inoltre di definire un ruolo IAM separato con permessi limitati per gli utenti guest privi di autenticazione. Infine, puoi usare identificatori univoci generati da Cognito per definire l’accesso degli utenti a risorse specifiche. Ad esempio, puoi creare una policy per un bucket S3 che permetta agli utenti l’accesso solo alla propria cartella.<\/span><\/p>\n

Adesso che abbiamo definito tutti i concetti fondamentali possiamo passare alla parte centrale del nostro articolo, ovvero il <\/span>tutorial per configurare Amazon Cognito per consentire l\u2019autenticazione degli utenti mediante la loro identit\u00e0 Google.<\/b><\/p>\n

Tutorial:<\/span><\/h2>\n

Il primo passo da portare a termine per la configurazione di Cognito \u00e8 quello di creare una User Pool che andremo successivamente a federare con Google e con una Identity Pool al fine consentire agli utenti di identificarsi mediante Google e di ottenere un token di identificazione e una coppia di chiavi per accedere alle risorse cloud.<\/span><\/p>\n

Creazione di uno User Pool<\/span><\/h2>\n

Dalla Console di Amazon, navigate all’interno della dashboard di Cognito e cliccate sul pulsante “Crea uno User Pool” per avviare il wizard di creazione.<\/span><\/p>\n

Come prima cosa, ci verr\u00e0 chiesto un nome per il nostro User Pool. A questo punto, possiamo decidere se proseguire con un wizard passo passo, o se creare uno User Pool con le opzioni di default e di revisionarlo prima della creazione. Scegliamo la prima opzione cliccando il pulsante “Esamina Impostazioni”.\u00a0<\/span><\/p>\n

Il primo step del wizard ci permette di scegliere con quali informazioni gli utenti potranno effettuare il login su Cognito.<\/b> Le opzioni sono molteplici: possiamo scegliere di far autenticare l’utente attraverso l’utilizzo di una username, di una mail, di un numero di telefono ecc… E\u2019 importante notare che queste possibilit\u00e0 valgono solo per quegli utenti che faranno login direttamente su cognito (dopo essersi registrati) e per quelli che utilizzeranno eventuali IdP esterni.\u00a0<\/span><\/p>\n

Per questo tutorial andiamo a selezionare “Indirizzo email o numero di telefono” e successivamente “Consenti indirizzi email” (Come da immagine). <\/span>In questo modo l’unica possibilit\u00e0 di login da parte degli utenti sar\u00e0 utilizzando una email valida.<\/b>\u00a0<\/span><\/p>\n

\"\"<\/p>\n

A questo punto ci viene proposta la selezione degli attributi obbligatori in fase di registrazione dell’utente. Cognito mette a disposizione alcuni attributi standard quali nome, cognome, data di nascita e molti altri. Inoltre \u00e8 possibile creare degli attributi custom che verranno salvati all’interno di cognito al momento della registrazione dell’utente. Per il nostro tutorial possiamo lasciare tutto come da default e passare al passo successivo.<\/span><\/p>\n

In questo step \u00e8 possibile configurare il livello di sicurezza a cui ogni utente che si registra alla nostra applicazione dovr\u00e0 attenersi per creare una password sicura. Possiamo quindi inserire il limite minimo di caratteri della password e vari constraint sull’utilizzo obbligatorio di caratteri speciali, numeri, lettere maiuscole e lettere minuscole. Lasciamo i valori di default e proseguiamo con le altre configurazioni.\u00a0<\/span><\/p>\n

Il secondo e il terzo punto di questo step ci permettono di configurare la modalit\u00e0 di creazione degli utenti e la durata massima delle password temporanee generate dagli amministratori per i nuovi utenti che vengono creati. Sostanzialmente abbiamo due modi per poter creare gli utenti. Il primo consente agli utenti stessi di potersi registrare attraverso una pagina di registrazione, il secondo invece, prevede la creazione degli utenti mediante l’amministratore del sistema. Il che significa che sar\u00e0 l’utente proprietario dell’applicazione, attraverso la Console di Amazon o attraverso la CLI, a creare l’utente con una password temporanea. Per il nostro tutorial selezioniamo la possibilit\u00e0 di poter far registrare gli utenti autonomamente (come da immagine) e proseguiamo cliccando il pulsante “Fase successiva”.<\/span><\/p>\n

\"\"<\/p>\n

In questa parte del wizard possiamo andare ad <\/span>abilitare la Multi Factor Authentication<\/b> e, se vogliamo, la verifica della mail \/ telefono in fase di registrazione. Per il nostro tutorial possiamo lasciare l’MFA disabilitato e selezionare \u201ce-mail\u201d come attributo da verificare in caso di registrazione autonoma.\u00a0<\/span><\/p>\n

Nello step successivo, invece, \u00e8 possibile andare a configurare tutti i messaggi automatici che saranno inviati da Cognito all’utente finale. Questi messaggi includono password temporanee e codici di verifica che possono essere inviati attraverso mail o attraverso SMS configurando Amazon SNS. Per il nostro tutorial possiamo lasciare tutto come da default e passare allo step successivo.<\/span><\/p>\n

A questo punto del wizard possiamo aggiungere dei tag alla risorsa che stiamo andando a creare. Aggiungiamo i tag del caso o anche nessuno se si tratta di un esperimento e passiamo allo step successivo.<\/span><\/p>\n

Ora ci viene chiesto se vogliamo che cognito salvi automaticamente i dispositivi in modo da non richiedere l’utilizzo della MFA ad ogni accesso. Dato che nello step precedente abbiamo lasciato la MFA disabilitata, selezioniamo “No” e proseguiamo allo step successivo.<\/span><\/p>\n

Ci viene ora chiesto di creare un App Client che verr\u00e0 poi utilizzato dalla nostra applicazione per poter effettuare le dovute chiamate di registrazione e login. Per farlo baster\u00e0 schiacciare sul pulsante “aggiungi un client di app” , inserire un nome, rimuovere la spunta da “<\/span>Genera segreto del client<\/span>” e premere il pulsante “Crea client di app”.<\/span><\/p>\n

\"\"<\/p>\n

Possiamo quindi terminare il wizard andando a <\/span>creare il pool di utenti premendo il pulsante nell’ultima schermata.<\/b><\/p>\n

Prima di passare alle configurazioni per l’integrazione e scegliamo un nome di dominio per il nostro User Pool. Una volta scelto clicchiamo sul pulsante “Verifica disponibilit\u00e0” e successivamente su “Salva modifiche”.<\/span><\/p>\n

Configurazione Integrazione Identity Pool Esterno<\/span><\/h2>\n

Una volta creato lo user pool, possiamo passare all’integrazione con il nostro SSO.<\/b> Per farlo\u00a0<\/span><\/p>\n

abbiamo bisogno di creare un<\/span> nuovo progetto dalla Google Developer Console<\/b> e ottenere delle credenziali di accesso. Una volta ottenute le credenziali passeremo alla configurazione di Cognito.\u00a0<\/span><\/p>\n

Rechiamoci sulla Google Developer Console e creiamo un nuovo progetto (come da immagini).<\/span><\/p>\n

\"\"<\/p>\n

\"\"<\/p>\n

\"\"<\/p>\n

Una volta creato il nostro progetto, andiamo alla voce “Schermata consenso OAuth”.<\/span><\/p>\n

Qui andremo a configurare il nome dell’applicazione e andremo ad abilitare il dominio <\/span>“amazoncognito.com”. Per farlo basta inserirlo nell’apposito campo denominato “Domini autorizzati” e cliccare sul pulsante “Salva”.<\/span><\/p>\n

Rechiamoci ora sotto il campo \u201cCredenziali\u201d e clicchiamo sul pulsante “Crea credenziali” andando a selezionare “ID Client OAuth” dal men\u00f9 a tendina proposto.<\/span><\/p>\n

\"\"Selezioniamo poi “Applicazione web”, inseriamo un nome per il nostro client e <\/span>come origini javascript autorizzate andiamo ad inserire il nome di dominio del nostro Cognito User Pool<\/b> creato precedentemente (es: https:\/\/test-articolo.auth.eu-west-1.amazoncognito.com). Andiamo poi ad inserire lo stesso nome di dominio seguito da <\/span>\/oauth2\/idpresponse<\/b> all’interno del campo URI di reindirizzamento autorizzati (es: https:\/\/test-articolo.auth.eu-west-1.amazoncognito.com\/oauth2\/idpresponse) e premiamo il pulsante “Crea”.<\/span><\/p>\n

A questo punto verr\u00e0 visualizzato un popup contenente il nostro “ID Client” e il nostro “Client Secret”. <\/span>Copiamo i segreti in un file di testo per averli rapidamente disponibili in seguito.\u00a0<\/b><\/p>\n

Passiamo adesso alla configurazione dell’integrazione tra i Cognito e Google cominciando da Amazon Cognito.<\/span><\/p>\n

Navighiamo all’interno del men\u00f9 “Provider di identit\u00e0” e selezionare la tipologia di integrazione che vogliamo effettuare.<\/span><\/p>\n

\"\"<\/p>\n

Da questo punto di vista, Amazon offre l’integrazione con i maggiori provider di identit\u00e0 tra cui Facebook, Google, Amazon e, pi\u00f9 genericamente, tutti i provider che supportano i protocolli OpenId e SAML. Per questo tutorial andremo ad integrarci con Google. Per farlo clicchiamo il pulsante \u201cGoogle\u201d e andiamo ad inserire le informazioni dell’identity provider con quelle restituiteci durante la creazione del progetto Google.<\/span><\/p>\n

L’ultimo passaggio rimanente, riguarda il linking delle due risorse create precedentemente. Per farlo, basta navigare all’interno della scheda “App client settings”. Nella schermata proposta bisogner\u00e0 selezionare come Identity Provider il nostro identity provider creato precedentemente e fornire gli endpoint di callback come da immagine. Gli endpoint di callback saranno gli endpoint chiamati a fine autenticazione e conterranno il nostro token.<\/span><\/p>\n

\"\"Per fare un test possiamo utilizzare l’Hosted UI fornita da Cognito navigando al dominio che abbiamo scelto precedentemente e passando come query string parameters il nostro client id, il redirect uri e alcune informazioni aggiuntive come da esempio:<\/span><\/p>\n

https:\/\/test-articolo.auth.eu-west-1.amazoncognito.com\/authorize?client_id=<\/span>{client-id}<\/b>&redirect_uri=http:\/\/localhost:4200\/auth\/verify&response_type=token<\/span><\/p>\n

Una volta completato il processo di autenticazione, verremo automaticamente rediretti al nostro indirizzo di callback http:\/\/localhost:4200\/auth\/verify con la differenza che troveremo in query string parameter i nostri token di accesso.<\/span><\/p>\n

A questo punto sta all\u2019applicazione recuperare i token dalla chiamata di callback, che per lo scopo di questo tutorial abbiamo impostato a localhost, ed usarli per le successive chiamate al back-end.\u00a0<\/span><\/p>\n

Con questo tutorial abbiamo visto come configurare dall\u2019inizio alla fine l\u2019integrazione tra Amazon Cognito e Google.<\/b> Abbiamo illustrato e testato come ottenere il token di identificazione e come usarlo per accedere ai servizi di back-end.\u00a0<\/span><\/p>\n

Restate sintonizzati per ricevere altri tutorial interessanti!<\/span><\/p>\n","protected":false},"excerpt":{"rendered":"

Una delle features pi\u00f9 ricorrenti nelle applicazioni web e mobile \u00e8 certamente l\u2019autenticazione degli utenti; poter fare off-load delle responsabilit\u00e0 […]<\/p>\n","protected":false},"author":8,"featured_media":868,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[471],"tags":[255,325,271,299,327,329],"yoast_head":"\nAmazon Cognito: Autenticazione gestita mediante Single Sign-On - Proud2beCloud Blog<\/title>\n<meta name=\"description\" content=\"Amazon Cognito fornisce un building-block in grado di accelerare e rendere sicure autenticazione ed autorizzazione degli utenti verso applicazioni.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/blog.besharp.it\/it\/amazon-cognito-autenticazione-gestita-mediante-single-sign-on\/\" \/>\n<meta property=\"og:locale\" content=\"it_IT\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Amazon Cognito: Autenticazione gestita mediante Single Sign-On\" \/>\n<meta property=\"og:description\" content=\"Amazon Cognito fornisce un building-block in grado di accelerare e rendere sicure autenticazione ed autorizzazione degli utenti verso applicazioni.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/blog.besharp.it\/it\/amazon-cognito-autenticazione-gestita-mediante-single-sign-on\/\" \/>\n<meta property=\"og:site_name\" content=\"Proud2beCloud Blog\" \/>\n<meta property=\"article:published_time\" content=\"2019-08-23T10:28:24+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2021-03-17T11:52:34+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/blog.besharp.it\/wp-content\/uploads\/2019\/08\/copertinablog6-06.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1668\" \/>\n\t<meta property=\"og:image:height\" content=\"1250\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Alessio Gandini\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:title\" content=\"Amazon Cognito: Autenticazione gestita mediante Single Sign-On\" \/>\n<meta name=\"twitter:description\" content=\"Amazon Cognito fornisce un building-block in grado di accelerare e rendere sicure autenticazione ed autorizzazione degli utenti verso applicazioni.\" \/>\n<meta name=\"twitter:image\" content=\"https:\/\/blog.besharp.it\/wp-content\/uploads\/2019\/08\/copertinablog6-06.png\" \/>\n<meta name=\"twitter:label1\" content=\"Scritto da\" \/>\n\t<meta name=\"twitter:data1\" content=\"Alessio Gandini\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tempo di lettura stimato\" \/>\n\t<meta name=\"twitter:data2\" content=\"12 minuti\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/blog.besharp.it\/it\/amazon-cognito-autenticazione-gestita-mediante-single-sign-on\/\",\"url\":\"https:\/\/blog.besharp.it\/it\/amazon-cognito-autenticazione-gestita-mediante-single-sign-on\/\",\"name\":\"Amazon Cognito: Autenticazione gestita mediante Single Sign-On - Proud2beCloud Blog\",\"isPartOf\":{\"@id\":\"https:\/\/blog.besharp.it\/it\/#website\"},\"datePublished\":\"2019-08-23T10:28:24+00:00\",\"dateModified\":\"2021-03-17T11:52:34+00:00\",\"author\":{\"@id\":\"https:\/\/blog.besharp.it\/it\/#\/schema\/person\/e7262d28e51528c2e420327f9b18cd43\"},\"description\":\"Amazon Cognito fornisce un building-block in grado di accelerare e rendere sicure autenticazione ed autorizzazione degli utenti verso applicazioni.\",\"breadcrumb\":{\"@id\":\"https:\/\/blog.besharp.it\/it\/amazon-cognito-autenticazione-gestita-mediante-single-sign-on\/#breadcrumb\"},\"inLanguage\":\"it-IT\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/blog.besharp.it\/it\/amazon-cognito-autenticazione-gestita-mediante-single-sign-on\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/blog.besharp.it\/it\/amazon-cognito-autenticazione-gestita-mediante-single-sign-on\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/blog.besharp.it\/it\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Amazon Cognito: Autenticazione gestita mediante Single Sign-On\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/blog.besharp.it\/it\/#website\",\"url\":\"https:\/\/blog.besharp.it\/it\/\",\"name\":\"Proud2beCloud Blog\",\"description\":\"il blog di beSharp\",\"alternateName\":\"Proud2beCloud Blog\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/blog.besharp.it\/it\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"it-IT\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/blog.besharp.it\/it\/#\/schema\/person\/e7262d28e51528c2e420327f9b18cd43\",\"name\":\"Alessio Gandini\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"it-IT\",\"@id\":\"https:\/\/blog.besharp.it\/it\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/eeb98518768d999bff24f8358b464fe2?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/eeb98518768d999bff24f8358b464fe2?s=96&d=mm&r=g\",\"caption\":\"Alessio Gandini\"},\"description\":\"Cloud-native Development Line Manager @ beSharp, DevOps Engineer e AWS expert. Computer geek da quando avevo 6 anni, appassionato di informatica ed elettronica a tutto tondo. Ultimamente sto esplorando l'esperienza utente vocale e il mondo dell'IoT. Appassionato di cinema e grande consumatore di serie TV, videogiocatore della domenica.\",\"url\":\"https:\/\/blog.besharp.it\/it\/author\/alessio-gandini\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Amazon Cognito: Autenticazione gestita mediante Single Sign-On - Proud2beCloud Blog","description":"Amazon Cognito fornisce un building-block in grado di accelerare e rendere sicure autenticazione ed autorizzazione degli utenti verso applicazioni.","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:\/\/blog.besharp.it\/it\/amazon-cognito-autenticazione-gestita-mediante-single-sign-on\/","og_locale":"it_IT","og_type":"article","og_title":"Amazon Cognito: Autenticazione gestita mediante Single Sign-On","og_description":"Amazon Cognito fornisce un building-block in grado di accelerare e rendere sicure autenticazione ed autorizzazione degli utenti verso applicazioni.","og_url":"https:\/\/blog.besharp.it\/it\/amazon-cognito-autenticazione-gestita-mediante-single-sign-on\/","og_site_name":"Proud2beCloud Blog","article_published_time":"2019-08-23T10:28:24+00:00","article_modified_time":"2021-03-17T11:52:34+00:00","og_image":[{"width":1668,"height":1250,"url":"https:\/\/blog.besharp.it\/wp-content\/uploads\/2019\/08\/copertinablog6-06.png","type":"image\/png"}],"author":"Alessio Gandini","twitter_card":"summary_large_image","twitter_title":"Amazon Cognito: Autenticazione gestita mediante Single Sign-On","twitter_description":"Amazon Cognito fornisce un building-block in grado di accelerare e rendere sicure autenticazione ed autorizzazione degli utenti verso applicazioni.","twitter_image":"https:\/\/blog.besharp.it\/wp-content\/uploads\/2019\/08\/copertinablog6-06.png","twitter_misc":{"Scritto da":"Alessio Gandini","Tempo di lettura stimato":"12 minuti"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/blog.besharp.it\/it\/amazon-cognito-autenticazione-gestita-mediante-single-sign-on\/","url":"https:\/\/blog.besharp.it\/it\/amazon-cognito-autenticazione-gestita-mediante-single-sign-on\/","name":"Amazon Cognito: Autenticazione gestita mediante Single Sign-On - Proud2beCloud Blog","isPartOf":{"@id":"https:\/\/blog.besharp.it\/it\/#website"},"datePublished":"2019-08-23T10:28:24+00:00","dateModified":"2021-03-17T11:52:34+00:00","author":{"@id":"https:\/\/blog.besharp.it\/it\/#\/schema\/person\/e7262d28e51528c2e420327f9b18cd43"},"description":"Amazon Cognito fornisce un building-block in grado di accelerare e rendere sicure autenticazione ed autorizzazione degli utenti verso applicazioni.","breadcrumb":{"@id":"https:\/\/blog.besharp.it\/it\/amazon-cognito-autenticazione-gestita-mediante-single-sign-on\/#breadcrumb"},"inLanguage":"it-IT","potentialAction":[{"@type":"ReadAction","target":["https:\/\/blog.besharp.it\/it\/amazon-cognito-autenticazione-gestita-mediante-single-sign-on\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/blog.besharp.it\/it\/amazon-cognito-autenticazione-gestita-mediante-single-sign-on\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/blog.besharp.it\/it\/"},{"@type":"ListItem","position":2,"name":"Amazon Cognito: Autenticazione gestita mediante Single Sign-On"}]},{"@type":"WebSite","@id":"https:\/\/blog.besharp.it\/it\/#website","url":"https:\/\/blog.besharp.it\/it\/","name":"Proud2beCloud Blog","description":"il blog di beSharp","alternateName":"Proud2beCloud Blog","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/blog.besharp.it\/it\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"it-IT"},{"@type":"Person","@id":"https:\/\/blog.besharp.it\/it\/#\/schema\/person\/e7262d28e51528c2e420327f9b18cd43","name":"Alessio Gandini","image":{"@type":"ImageObject","inLanguage":"it-IT","@id":"https:\/\/blog.besharp.it\/it\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/eeb98518768d999bff24f8358b464fe2?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/eeb98518768d999bff24f8358b464fe2?s=96&d=mm&r=g","caption":"Alessio Gandini"},"description":"Cloud-native Development Line Manager @ beSharp, DevOps Engineer e AWS expert. Computer geek da quando avevo 6 anni, appassionato di informatica ed elettronica a tutto tondo. Ultimamente sto esplorando l'esperienza utente vocale e il mondo dell'IoT. Appassionato di cinema e grande consumatore di serie TV, videogiocatore della domenica.","url":"https:\/\/blog.besharp.it\/it\/author\/alessio-gandini\/"}]}},"_links":{"self":[{"href":"https:\/\/blog.besharp.it\/it\/wp-json\/wp\/v2\/posts\/848"}],"collection":[{"href":"https:\/\/blog.besharp.it\/it\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.besharp.it\/it\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.besharp.it\/it\/wp-json\/wp\/v2\/users\/8"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.besharp.it\/it\/wp-json\/wp\/v2\/comments?post=848"}],"version-history":[{"count":0,"href":"https:\/\/blog.besharp.it\/it\/wp-json\/wp\/v2\/posts\/848\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/blog.besharp.it\/it\/wp-json\/wp\/v2\/media\/868"}],"wp:attachment":[{"href":"https:\/\/blog.besharp.it\/it\/wp-json\/wp\/v2\/media?parent=848"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.besharp.it\/it\/wp-json\/wp\/v2\/categories?post=848"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.besharp.it\/it\/wp-json\/wp\/v2\/tags?post=848"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}