User Tools

Site Tools


doc:appunti:net:openid

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
Last revisionBoth sides next revision
doc:appunti:net:openid [2011/05/03 12:25] – [Allestire un provider OpenID personale] niccolodoc:appunti:net:openid [2011/05/04 16:51] – [phpMyID] niccolo
Line 32: Line 32:
  
 ===== Allestire un provider OpenID personale ===== ===== Allestire un provider OpenID personale =====
 +
 +==== phpMyID ====
  
 FIXME FIXME
Line 40: Line 42:
 phpMyID is not compatible with 'suhosin' phpMyID is not compatible with 'suhosin'
 </code> </code>
 +
 +Per forzare il funzionamento anche in presenza di Suhosin dovrebbe bastare disabilitare tale funzione nel VirtualHost (si consiglia di farlo solo se il VirtualHost è dedicato esclusivamente a phpMyID):
 +
 +<file>
 +php_flag suhosin.simulation On
 +</file>
 +
 +quindi in **''MyID.config.php''** impostare nell'array **''%%$GLOBALS['profile']%%''** l'elemento **''%%'allow_suhosin' => true%%''**.
  
 FIXME FIXME
Line 67: Line 77:
 Nel file di configurazione si possono impostare altre informazioni personali, tipo nome e cognome, indirizzo email, una foto, ecc. Nel file di configurazione si possono impostare altre informazioni personali, tipo nome e cognome, indirizzo email, una foto, ecc.
  
 +==== php-openid ====
 +
 +Questa libreria PHP contiene sia il codice per un client che il codice per un server. Il server è in ''/usr/share/doc/php-openid/examples/server/'', bisogna copiarlo in una directory accessibile via web.
 +
 +La configurazione si esegue scompattando il file **''setup.php.gz''** e puntandoci il browser. C'è un problema con il PHP 5.3.3 e l'istruzione **''dl()''** che genera un errore fatale (tale funzione dovrebbe solo essere deprecata), purtroppo l'errore //Call to undefined function dl()// non viene segnalato nel log di PHP.
 +
 +Come workaround si può definire la funzione all'inizio del file **''setup.php''**:
 +
 +<code php>
 +function dl($str) {
 +    return false;
 +}
 +</code>
 +
 +Viene generato a video il file di configurazione che deve essere salvato come **''config.php''**:
 +
 +
 +<code php>
 +<?php
 +/**
 + * The URL for the server.
 + *
 + * This is the location of server.php. For example:
 + *
 + * $server_url = 'http://example.com/~user/server.php';
 + *
 + * This must be a full URL.
 + */
 +$server_url = "http://niccolo.rigacci.org/";
 +
 +/**
 + * Initialize an OpenID store
 + *
 + * @return object $store an instance of OpenID store (see the
 + * documentation for how to create one)
 + */
 +function getOpenIDStore()
 +{
 +    require_once "Auth/OpenID/FileStore.php";
 +    return new Auth_OpenID_FileStore("/tmp/openid");
 +}
 +
 +?>
 +</code>
 +
 +FIXME Come definire nome utente e password? Come usare semplicemente l'URL radice (''http://niccolo.rigacci.org/'') visto che non abbiamo altri utenti?
doc/appunti/net/openid.txt · Last modified: 2011/05/04 16:57 by niccolo