Jetty 12.0.x SPNEGO: Tetapkan Nama Perkhidmatan, Bukan Principal Penuh
Asingkan URI proksi, pengguna JAAS dan komponen perkhidmatan GSS semasa mengkonfigurasi pengesahan Jetty 12.
Terdapat tiga nama dalam konfigurasi SPNEGO Jetty: URI yang digunakan untuk memadankan pengesahan, pengguna yang log masuk melalui JAAS dan perkhidmatan yang diminta tiket. Ketiganya mempunyai tujuan berbeza.
Untuk pelaksanaan Jetty 12.0.x, serpihan objek pengesahan ialah:
var auth = new org.eclipse.jetty.client.SPNEGOAuthentication(
java.net.URI.create("http://proxy.example:8080"));
auth.setServiceName("HTTP");Serpihan ini menggambarkan komponen perkhidmatan, bukan resipi pengesahan proksi yang lengkap. Log masuk JAAS, penghalaan proksi dan pertukaran pengesahan permintaan kekal berasingan.
Dalam pelaksanaan ini Jetty membina nama GSS berasaskan hos dengan menggabungkan getServiceName(), aksara @ dan hos untuk pertukaran pengesahan. Memberikan [email protected] sebagai komponen perkhidmatan akan menambah hos lain. Baca kontrak setter ini daripada menganggapnya menerima principal Kerberos penuh.
Nama GSS yang terhasil mempunyai bentuk konseptual HTTP@hostname. Principal perkhidmatan KDC yang sepadan biasanya diwakili sebagai HTTP/hostname. nama proksi yang dipilih mesti sepadan dengan perkhidmatan yang benar-benar didaftarkan untuk akaun itu; alamat IP atau alias boleh memilih sasaran tiket lain.
Periksa juga laluan 407
Dalam Jetty 12.0.x, authenticate() mendapatkan nama hos GSS daripada request.getHost() dan membina hasil dengan pengepala Authorization lalai. Memadankan objek pengesahan mengikut URI proksi tidak dengan sendirinya mengubah pilihan itu kepada nama hos proksi dan Proxy-Authorization.
Oleh itu integrasi proksi memerlukan hos permintaan yang betul dan hasil berlingkup proksi untuk pertukaran itu. Permintaan HTTPS CONNECT dan permintaan asal biasa boleh mempunyai nilai hos berbeza. Sahkan tingkah laku pelaksanaan yang dipasang daripada menganggap setter nama perkhidmatan menyediakan aliran 407 lengkap.
Untuk 407, periksa pertukaran pengesahan proksi dan hos yang digunakan oleh permintaan itu. 401 tergolong dalam pengesahan asal. Tiket pengguna yang sah sahaja tidak membuktikan bahawa Jetty meminta tiket perkhidmatan yang betul atau bahawa perantara menerimanya.