Esecuzione mio server OpenID identità / di servizio (php)
Domanda
ho bisogno di fornire il servizio agli utenti OpenID sul mio dominio. Hanno tutti i sottodomini uniche come: abc.example.com e voglio loro di utilizzare abc.example.com come la loro identità OpenID ...
Ho letto questo - https://www.myopenid.com/help#own%5Fdomain - ma sembra che la sua per (a) utente ONE e (b) ho bisogno di avere un myOpenID / conto simile esistente ...
sguardi phpmyid rad, ma sembra funzionare solo per i singoli utenti ... come posso modificarlo per farlo funzionare per tutti con un sottodominio? O che altro posso fare?
Soluzione
Il sottodominio è la parte facile. Per questo avrete bisogno di "jolly DNS" che crea in sostanza questo record DNS: *.domain.com IN A 10.10.0.1
sostituzione, rispettivamente, il dominio e IP con la vostra. Avanti avrete bisogno di impostare qualunque server web per leggere in domini jolly (questo funziona tipicamente apache in questo modo:. ServerAlias *.domain.com
ma dipenderà dal server web al server web
On per l'ultima parte. phpMyID - è solo per l'identità di una persona. E purtroppo questo post è troppo piccolo per andare in esattamente come fare questo. Queste sono alcune snipits e le idee di più alto livello che avrebbero probabilmente bisogno di essere implementato.
Per prima cosa è necessario prendere tutte le informazioni hardcoded nel file e spostarlo in una banca dati (nome utente, password, ecc) in modo da poter più facilmente tracciamento degli utenti. Potrai anche essere costretti a tenere traccia di nomi utenti utilizzando solo [A-Za-z0-9_]
come &,%,$,#,@,!, ,etc
saranno tutti rompere il DNS e l'utente non può più accedere al provider.
Si avrà bisogno anche di sapere che cosa l'attuale hostname a cui si accede è:
<?php
$hostname = $_SERVER['SERVER_NAME'];
$username = basename($hostname, ".domain.com"); // Replace .domain.com with your domain
?>
Quindi, ora che avete un utente si può strutturare la chiamata al database per selezionare le informazioni degli utenti - quindi aggiornare i valori di una volta hard coded della "un utente phpMyID" con i dati utente dinamici dal database e lo script deve continuare è modo allegro. E 'stato un po' da quando ho guardato phpMyID ma suppongo che è la maggior parte della idea alla base di esso.
Altri suggerimenti
Prairie è un peso leggero OpenID basata su server identità Internet. Invece di registrare in ogni sito web con diverse combinazioni di username e password che si utilizza il server di identità per voi il login.