SlideShare a Scribd company logo
1 of 11
Autenticazione
    Modulo Hybridauth
   Default (CController)
       Profili utenti
TstoreUser (CComponent)
Modulo Hybridauth
●   Il modulo Yii-Hybridauth è un wrapper di
    Hybridauth
●   Interagisce con il database attraverso la tabella
    user, modificando il campo token (identificativo
    univoco fornito da ciascun sistema di
    autenticazione)
    ●   Mysql.user: http://pastebin.com/PtG0aqJT
●   La configurazione del modulo viene effettuata
    come di seguito:
    ●   http://pastebin.com/jzNDucf1
Default (CController)
●   Entrambe le pagine dalle quali è possibile
    effettuare il login utilizzano lo stesso controller
    per l'autenticazione
●   Se il login viene effettuato durante la procedura
    di acquisto, nella GET con la quale viene
    chiamato il controller è presente anche il
    parametro purchase con il valore di 1
    ●   Es: http://shop.tradenet.it/hybrid/defaut?purchase=1
Profili utenti
●   I profili utenti sono hardcoded
    ●   Guest: rappresenta gli utenti non loggati
    ●   Buyer: rappresenta gli utenti loggatie
    ●   Admin: rappresenta gli amministratori
●   Si trovano nel file config/main.php come
    elementi dell'array params
    ●   Configurazione applicazione:
        http://pastebin.com/m5G4R2jH
TStoreUser (CComponent)
●   E' la classe che controlla i privilegi di accesso degli utenti
    ●   Yii::app()->user->is('admin');
●   Viene configurata dal file config/main.php
●   Espone alcuni metodi utilizzati che forniscono
    ●   Il contatore delle invoice per utente
    ●   Il contatore delle sottoscrizioni attive
    ●   Il contatore delle sottoscrizioni in sospeso
●   Vi sono due componenti standard che si occupano del controllo delle
    autorizzazioni:
    ●   CDbAuthManager: basato su database, permette di specificare role, task, item. E'
        estremamente personalizzabile ma a volte può essere troppo articolato e, in alcuni
        casi, quando non correttamente ottimizzato, può essere lento
    ●   CPhpAuthManager: basato su file, permette alcune semplici regole di autorizzazione
●   Sul sito di Yii vi sono però altri componenti o estensioni che gestiscono le
    regole di autorizzazione
UserIdentity (CComponent)
●   E' la classe che effettua il login e il logout degli
    utenti quando il sistema di autenticazione non è
    quello di Hybridauth
●   Richiede l'utilizzo di una tabella sql (è il caso
    dell'utente con profilo admin) oppure può
    essere hardcoded
Integrazione
  Component
   Extension
   Controller
    Modulo
Component
●   Se il sistema di autenticazione proprietario ha
    una struttura semplice (un paio di classi PHP,
    ad esempio) la forma del CComponent
    permette una integrazione quasi immediata
●   I metodi delle classi di autenticazione saranno
    resi disponibili nella forma:
    ●   Yii::app()->nomeComponent->metodo();
●   Nota: tutti i component sono sottoposti a
    preloading
Extension
●   Se il sistema di autenticazione è lievemente
    articolato ma non necessita di un ambiente di
    esecuzione indipendente, la forma extension
    permette una maggiore flessibilità rispetto
    alla forma component (possibilità di utilizzare
    tutta una serie di risorse aggiuntive)
●   Permette anche di utilizzare dei controller per le
    chiamate ai servizi di autenticazione
●   Richiede un poco di attenzione nella
    configurazione
Controller
●   Nel caso il sistema di autenticazione sia
    costituito da un'applicazione a se stante che
    comunica con delle chiamate HTTP la forma
    controller è quella che maggiormente si presta
    all'integrazione
●   E' senza dubbio la più veloce da implementare
●   Non offre grande elasticità perchè le
    applicazioni comunicano solo attraverso
    chiamate HTTP e non condividono variabili di
    ambiente, tabelle su database ecc..
Modulo
●   E' la forma di elezione per l'accorpamento di intere
    applicazioni
●   Offre un ambiente indipendente dall'applicazione
    madre e, allo stesso tempo, collegato
●   E' facilmente configurabile
●   Offre una grande elasticità: è possibile utilizzare una
    qualsiasi delle risorse disponibili a un'applicazione Yii
●   Richiede una riscrittura del codice affinchè esso
    rientri nello standard di Yii

More Related Content

Viewers also liked

Prayers for United State of America(General Elections)
Prayers for United State of America(General Elections)Prayers for United State of America(General Elections)
Prayers for United State of America(General Elections)Olalekan Yakubu
 
Método grandes conquistas com poucos passos
Método grandes conquistas com poucos passosMétodo grandes conquistas com poucos passos
Método grandes conquistas com poucos passosClan Virtual
 
Olimpiadas San José
Olimpiadas San JoséOlimpiadas San José
Olimpiadas San Joséanyolix
 
Amul’s ‘Utterly Butterly Delicious’ Brand Elements
Amul’s ‘Utterly Butterly Delicious’ Brand ElementsAmul’s ‘Utterly Butterly Delicious’ Brand Elements
Amul’s ‘Utterly Butterly Delicious’ Brand Elementsetcases
 
Images 10
Images 10Images 10
Images 10nri_ur
 
Tiểu luận nghiệp vụ ngoại thương kỹ thuật đàm phán và ký kết hợp đồng ngoại...
Tiểu luận nghiệp vụ ngoại thương   kỹ thuật đàm phán và ký kết hợp đồng ngoại...Tiểu luận nghiệp vụ ngoại thương   kỹ thuật đàm phán và ký kết hợp đồng ngoại...
Tiểu luận nghiệp vụ ngoại thương kỹ thuật đàm phán và ký kết hợp đồng ngoại...https://www.facebook.com/garmentspace
 

Viewers also liked (13)

Apresentação1
Apresentação1Apresentação1
Apresentação1
 
Prayers for United State of America(General Elections)
Prayers for United State of America(General Elections)Prayers for United State of America(General Elections)
Prayers for United State of America(General Elections)
 
Método grandes conquistas com poucos passos
Método grandes conquistas com poucos passosMétodo grandes conquistas com poucos passos
Método grandes conquistas com poucos passos
 
Olimpiadas San José
Olimpiadas San JoséOlimpiadas San José
Olimpiadas San José
 
Material de apoio
Material de apoioMaterial de apoio
Material de apoio
 
Capilaridad
CapilaridadCapilaridad
Capilaridad
 
Cpu2
Cpu2Cpu2
Cpu2
 
Amul’s ‘Utterly Butterly Delicious’ Brand Elements
Amul’s ‘Utterly Butterly Delicious’ Brand ElementsAmul’s ‘Utterly Butterly Delicious’ Brand Elements
Amul’s ‘Utterly Butterly Delicious’ Brand Elements
 
Cine
CineCine
Cine
 
Images 10
Images 10Images 10
Images 10
 
Tiểu luận kinh tế phát triển tài nguyên thiên nhiên
Tiểu luận kinh tế phát triển   tài nguyên thiên nhiênTiểu luận kinh tế phát triển   tài nguyên thiên nhiên
Tiểu luận kinh tế phát triển tài nguyên thiên nhiên
 
Tiểu luận nghiệp vụ ngoại thương kỹ thuật đàm phán và ký kết hợp đồng ngoại...
Tiểu luận nghiệp vụ ngoại thương   kỹ thuật đàm phán và ký kết hợp đồng ngoại...Tiểu luận nghiệp vụ ngoại thương   kỹ thuật đàm phán và ký kết hợp đồng ngoại...
Tiểu luận nghiệp vụ ngoại thương kỹ thuật đàm phán và ký kết hợp đồng ngoại...
 
Sinal verde
Sinal verdeSinal verde
Sinal verde
 

Similar to Auth

Web Api – The HTTP Way
Web Api – The HTTP WayWeb Api – The HTTP Way
Web Api – The HTTP WayLuca Milan
 
Yii Framework - yes it is rapid web application development (Parte 1)
Yii Framework - yes it is rapid web application development (Parte 1)Yii Framework - yes it is rapid web application development (Parte 1)
Yii Framework - yes it is rapid web application development (Parte 1)brossi676
 
Technical manual (1)
Technical manual (1)Technical manual (1)
Technical manual (1)cpro2011
 
Cert04 70-484 - essentials of developing windows store apps
Cert04   70-484 - essentials of developing windows store appsCert04   70-484 - essentials of developing windows store apps
Cert04 70-484 - essentials of developing windows store appsDotNetCampus
 
Da Euro Pos A Gesti Re
Da Euro Pos A Gesti ReDa Euro Pos A Gesti Re
Da Euro Pos A Gesti ReFilippo Monti
 
Soluzioni IoT con le tecnologie Microsoft
Soluzioni IoT con le tecnologie MicrosoftSoluzioni IoT con le tecnologie Microsoft
Soluzioni IoT con le tecnologie MicrosoftMassimo Bonanni
 
70-485: ADVANCED OF DEVELOPING WINDOWS STORE APPS USING C#
70-485: ADVANCED OF DEVELOPING WINDOWS STORE APPS USING C#70-485: ADVANCED OF DEVELOPING WINDOWS STORE APPS USING C#
70-485: ADVANCED OF DEVELOPING WINDOWS STORE APPS USING C#DotNetCampus
 
Fun with Machine Translation APIs
Fun with Machine Translation APIsFun with Machine Translation APIs
Fun with Machine Translation APIsMassimo Bonanni
 
Soluzioni IoT con le tecnologie Microsoft
Soluzioni IoT con le tecnologie MicrosoftSoluzioni IoT con le tecnologie Microsoft
Soluzioni IoT con le tecnologie MicrosoftMassimo Bonanni
 
Slide Mulesoft Meetup Milano #10.pdf
Slide Mulesoft Meetup Milano #10.pdfSlide Mulesoft Meetup Milano #10.pdf
Slide Mulesoft Meetup Milano #10.pdfFlorence Consulting
 
Gefran Gf Project Brochure
Gefran Gf Project BrochureGefran Gf Project Brochure
Gefran Gf Project BrochureMyti S.r.l.
 
100430 Sa 1.0 Observe It Customer Presentation(Ita)
100430 Sa 1.0 Observe It Customer Presentation(Ita)100430 Sa 1.0 Observe It Customer Presentation(Ita)
100430 Sa 1.0 Observe It Customer Presentation(Ita)antonio_tonani
 
ManageEngine DesktopCentral - gestione dei Desktop e dei mobile device.
ManageEngine DesktopCentral - gestione dei Desktop e dei mobile device.ManageEngine DesktopCentral - gestione dei Desktop e dei mobile device.
ManageEngine DesktopCentral - gestione dei Desktop e dei mobile device.ManageEngine Italia
 
Front-end: Guide for developers - Edit by Lorenzo Stacchio
Front-end: Guide for developers - Edit by Lorenzo StacchioFront-end: Guide for developers - Edit by Lorenzo Stacchio
Front-end: Guide for developers - Edit by Lorenzo StacchioLorenzostacchio
 
Monitorare Lotus Domino con Nagios e Centreon - Dominopoint Days 2012
Monitorare Lotus Domino con Nagios e Centreon - Dominopoint Days 2012Monitorare Lotus Domino con Nagios e Centreon - Dominopoint Days 2012
Monitorare Lotus Domino con Nagios e Centreon - Dominopoint Days 2012Fabio Grasso
 
SVILUPPO DI UNA SOLUZIONE SINGLE SIGN ON PER L’ENTE VENETO LAVORO
SVILUPPO DI UNA SOLUZIONE  SINGLE SIGN ON  PER L’ENTE VENETO LAVOROSVILUPPO DI UNA SOLUZIONE  SINGLE SIGN ON  PER L’ENTE VENETO LAVORO
SVILUPPO DI UNA SOLUZIONE SINGLE SIGN ON PER L’ENTE VENETO LAVOROZanatta Davide
 

Similar to Auth (20)

Web Api – The HTTP Way
Web Api – The HTTP WayWeb Api – The HTTP Way
Web Api – The HTTP Way
 
Yii Framework - yes it is rapid web application development (Parte 1)
Yii Framework - yes it is rapid web application development (Parte 1)Yii Framework - yes it is rapid web application development (Parte 1)
Yii Framework - yes it is rapid web application development (Parte 1)
 
Technical manual (1)
Technical manual (1)Technical manual (1)
Technical manual (1)
 
Cert04 70-484 - essentials of developing windows store apps
Cert04   70-484 - essentials of developing windows store appsCert04   70-484 - essentials of developing windows store apps
Cert04 70-484 - essentials of developing windows store apps
 
Da Euro Pos A Gesti Re
Da Euro Pos A Gesti ReDa Euro Pos A Gesti Re
Da Euro Pos A Gesti Re
 
Configuration management
Configuration management Configuration management
Configuration management
 
Soluzioni IoT con le tecnologie Microsoft
Soluzioni IoT con le tecnologie MicrosoftSoluzioni IoT con le tecnologie Microsoft
Soluzioni IoT con le tecnologie Microsoft
 
70-485: ADVANCED OF DEVELOPING WINDOWS STORE APPS USING C#
70-485: ADVANCED OF DEVELOPING WINDOWS STORE APPS USING C#70-485: ADVANCED OF DEVELOPING WINDOWS STORE APPS USING C#
70-485: ADVANCED OF DEVELOPING WINDOWS STORE APPS USING C#
 
Fun with Machine Translation APIs
Fun with Machine Translation APIsFun with Machine Translation APIs
Fun with Machine Translation APIs
 
Soluzioni IoT con le tecnologie Microsoft
Soluzioni IoT con le tecnologie MicrosoftSoluzioni IoT con le tecnologie Microsoft
Soluzioni IoT con le tecnologie Microsoft
 
Shop
ShopShop
Shop
 
Slide Mulesoft Meetup Milano #10.pdf
Slide Mulesoft Meetup Milano #10.pdfSlide Mulesoft Meetup Milano #10.pdf
Slide Mulesoft Meetup Milano #10.pdf
 
Gefran Gf Project Brochure
Gefran Gf Project BrochureGefran Gf Project Brochure
Gefran Gf Project Brochure
 
100430 Sa 1.0 Observe It Customer Presentation(Ita)
100430 Sa 1.0 Observe It Customer Presentation(Ita)100430 Sa 1.0 Observe It Customer Presentation(Ita)
100430 Sa 1.0 Observe It Customer Presentation(Ita)
 
Google AppEngine
Google AppEngineGoogle AppEngine
Google AppEngine
 
ManageEngine DesktopCentral - gestione dei Desktop e dei mobile device.
ManageEngine DesktopCentral - gestione dei Desktop e dei mobile device.ManageEngine DesktopCentral - gestione dei Desktop e dei mobile device.
ManageEngine DesktopCentral - gestione dei Desktop e dei mobile device.
 
Front-end: Guide for developers - Edit by Lorenzo Stacchio
Front-end: Guide for developers - Edit by Lorenzo StacchioFront-end: Guide for developers - Edit by Lorenzo Stacchio
Front-end: Guide for developers - Edit by Lorenzo Stacchio
 
Monitorare Lotus Domino con Nagios e Centreon - Dominopoint Days 2012
Monitorare Lotus Domino con Nagios e Centreon - Dominopoint Days 2012Monitorare Lotus Domino con Nagios e Centreon - Dominopoint Days 2012
Monitorare Lotus Domino con Nagios e Centreon - Dominopoint Days 2012
 
Introduzione ad Android
Introduzione ad AndroidIntroduzione ad Android
Introduzione ad Android
 
SVILUPPO DI UNA SOLUZIONE SINGLE SIGN ON PER L’ENTE VENETO LAVORO
SVILUPPO DI UNA SOLUZIONE  SINGLE SIGN ON  PER L’ENTE VENETO LAVOROSVILUPPO DI UNA SOLUZIONE  SINGLE SIGN ON  PER L’ENTE VENETO LAVORO
SVILUPPO DI UNA SOLUZIONE SINGLE SIGN ON PER L’ENTE VENETO LAVORO
 

Auth

  • 1. Autenticazione Modulo Hybridauth Default (CController) Profili utenti TstoreUser (CComponent)
  • 2. Modulo Hybridauth ● Il modulo Yii-Hybridauth è un wrapper di Hybridauth ● Interagisce con il database attraverso la tabella user, modificando il campo token (identificativo univoco fornito da ciascun sistema di autenticazione) ● Mysql.user: http://pastebin.com/PtG0aqJT ● La configurazione del modulo viene effettuata come di seguito: ● http://pastebin.com/jzNDucf1
  • 3. Default (CController) ● Entrambe le pagine dalle quali è possibile effettuare il login utilizzano lo stesso controller per l'autenticazione ● Se il login viene effettuato durante la procedura di acquisto, nella GET con la quale viene chiamato il controller è presente anche il parametro purchase con il valore di 1 ● Es: http://shop.tradenet.it/hybrid/defaut?purchase=1
  • 4. Profili utenti ● I profili utenti sono hardcoded ● Guest: rappresenta gli utenti non loggati ● Buyer: rappresenta gli utenti loggatie ● Admin: rappresenta gli amministratori ● Si trovano nel file config/main.php come elementi dell'array params ● Configurazione applicazione: http://pastebin.com/m5G4R2jH
  • 5. TStoreUser (CComponent) ● E' la classe che controlla i privilegi di accesso degli utenti ● Yii::app()->user->is('admin'); ● Viene configurata dal file config/main.php ● Espone alcuni metodi utilizzati che forniscono ● Il contatore delle invoice per utente ● Il contatore delle sottoscrizioni attive ● Il contatore delle sottoscrizioni in sospeso ● Vi sono due componenti standard che si occupano del controllo delle autorizzazioni: ● CDbAuthManager: basato su database, permette di specificare role, task, item. E' estremamente personalizzabile ma a volte può essere troppo articolato e, in alcuni casi, quando non correttamente ottimizzato, può essere lento ● CPhpAuthManager: basato su file, permette alcune semplici regole di autorizzazione ● Sul sito di Yii vi sono però altri componenti o estensioni che gestiscono le regole di autorizzazione
  • 6. UserIdentity (CComponent) ● E' la classe che effettua il login e il logout degli utenti quando il sistema di autenticazione non è quello di Hybridauth ● Richiede l'utilizzo di una tabella sql (è il caso dell'utente con profilo admin) oppure può essere hardcoded
  • 7. Integrazione Component Extension Controller Modulo
  • 8. Component ● Se il sistema di autenticazione proprietario ha una struttura semplice (un paio di classi PHP, ad esempio) la forma del CComponent permette una integrazione quasi immediata ● I metodi delle classi di autenticazione saranno resi disponibili nella forma: ● Yii::app()->nomeComponent->metodo(); ● Nota: tutti i component sono sottoposti a preloading
  • 9. Extension ● Se il sistema di autenticazione è lievemente articolato ma non necessita di un ambiente di esecuzione indipendente, la forma extension permette una maggiore flessibilità rispetto alla forma component (possibilità di utilizzare tutta una serie di risorse aggiuntive) ● Permette anche di utilizzare dei controller per le chiamate ai servizi di autenticazione ● Richiede un poco di attenzione nella configurazione
  • 10. Controller ● Nel caso il sistema di autenticazione sia costituito da un'applicazione a se stante che comunica con delle chiamate HTTP la forma controller è quella che maggiormente si presta all'integrazione ● E' senza dubbio la più veloce da implementare ● Non offre grande elasticità perchè le applicazioni comunicano solo attraverso chiamate HTTP e non condividono variabili di ambiente, tabelle su database ecc..
  • 11. Modulo ● E' la forma di elezione per l'accorpamento di intere applicazioni ● Offre un ambiente indipendente dall'applicazione madre e, allo stesso tempo, collegato ● E' facilmente configurabile ● Offre una grande elasticità: è possibile utilizzare una qualsiasi delle risorse disponibili a un'applicazione Yii ● Richiede una riscrittura del codice affinchè esso rientri nello standard di Yii