Cara mengetahui pengguna jarak jauh menggunakan nama domain Windows yang konkret [duplikat]

Saya mencoba mengembangkan Aplikasi Web Java untuk mengetahui apakah pengguna yang mengakses server menggunakan komputer yang dikonfigurasi dengan domain Windows tertentu.

Yang perlu saya ketahui adalah nama domain jarak jauh, sebagai nilai yang saya dapatkan dengan ini:

System.getenv("USERDOMAIN");

Apa itu mungkin?

Terima kasih.


person Carlos Durán    schedule 10.02.2016    source sumber
comment
Nama domainnya tidak sama dengan OS yang dijalankan orang tersebut... Saya rasa nama domain tersebut tidak dikirimkan di agen pengguna.   -  person Sumurai8    schedule 11.02.2016


Jawaban (1)


Anda bisa mendapatkan Agen-Pengguna dari header permintaan HTTP pengguna:

String userAgent = request.getHeader("User-Agent");

Dan di sana Anda memiliki semua informasi yang Anda perlukan: OS, browser, dll.

Anda dapat mengandalkan tautan ini untuk lebih memahami info User-Agent:

EDIT

Apa yang dapat Anda lakukan untuk mengambil nama domain pengguna adalah:

  • mengambil alamat IP dari permintaan (gunakan ini dan ini menjawab sebagai titik awal)
  • setelah mendapatkan alamat IP host, Anda dapat mengambil nama domain host seperti yang dijelaskan di sini
person aribeiro    schedule 10.02.2016
comment
Dengan ini saya hanya dapat mengetahui apakah pengguna terhubung dari sistem Windows, tetapi saya tidak dapat mengetahui nama domainnya - person Carlos Durán; 11.02.2016
comment
@CarlosDurán, silakan periksa jawaban saya yang diperbarui - person aribeiro; 11.02.2016
comment
Terima kasih @aribeiro, tapi solusi ini hanya berfungsi jika komputer terhubung langsung ke LAN; tetapi jika terhubung melalui koneksi VPN, saya hanya dapat mengambil IP, bukan domain (atau grup kerja). - person Carlos Durán; 11.02.2016