E 'possibile ottenere il dominio di rete dal client con PHP o Apache? [chiuso]

0

Sto lavorando a una soluzione per identificare il dominio di rete o il gruppo di lavoro del cliente in una rete privata. Sulla base di questo, devo modificare alcune autorizzazioni di accesso.

Non posso farlo tramite l'indirizzo IP perché non è affidabile, solo dominio di rete / gruppo di lavoro.

Per ragioni a me sconosciute non posso avere una schermata di accesso, l'accesso deve essere automatico e senza interruzioni.

Qualcuno sa come posso farlo?

Mi dispiace di postarlo qui, seguilo nel posto corretto: link

    
posta LeonanCarvalho 10.07.2015 - 16:56
fonte

3 risposte

-1

È possibile ottenere corrispondente a un dato indirizzo IP usando gethostbyaddr function link :

    $proxy = (isset($_SERVER['HTTP_X_FORWARDED_FOR'])) ? $_SERVER['HTTP_X_FORWARDED_FOR'] : false;

if(!!$proxy){
$ipaddress = $_SERVER['HTTP_X_FORWARDED_FOR'];
     echo "Warning: Your cliend is using proxy, may could not determine hostname";
    }else{
    $ipaddress = $_SERVER['REMOTE_ADDR']; //
    }
    $hostname = gethostbyaddr($ipaddress); //Its will return domain + machine-name inside a private network.

    if($ipaddress  == $hostname){
     echo "Impossible to determine hostname for: ", $ipaddress ;
    }else{
      echo "The hostname for ", $ipaddress, "is : ",  $hostname;
    }

Ma la comunicazione che utilizza il livello applicazione / sessione a livello di rete è un po 'complicata. Non devi fidarti di esso per accedere al controllo nelle applicazioni php.

    
risposta data 10.07.2015 - 17:38
fonte
1

Non proprio. Puoi recuperare direttamente alcune informazioni sugli agenti e l'IP / hostname locale ma non il loro stato di gruppo / di lavoro.

Detto questo, è possibile ottenere il nome host e interrogare Active Directory tramite WMI per vedere se si tratta di un computer di dominio, ma non si può mai dimostrare la validità del nome host.

Un'altra opzione è che puoi autenticare un utente contro Active Directory / LDAP. Si può avere una pagina di accesso che quando si autenticano con Active Directory (dimostrando che si tratta di un utente di dominio) si consente loro di accedere.

Dai anche un'occhiata a Autenticazione in PHP utilizzando LDAP tramite Active Directory .

    
risposta data 10.07.2015 - 17:39
fonte
1

Sort of.

Puoi creare una pagina di destinazione che elenchi tutti gli indirizzi IP dei client utilizzando WebRTC e carica un altro indirizzo.

Puoi utilizzare gethostbyaddr() su ogni IP restituito, e riceverai del user198.domain-a.company.xxx . Basta impostare una variabile di sessione e sei impostato.

    
risposta data 10.07.2015 - 19:53
fonte

Leggi altre domande sui tag