Flex Blaze DS tidak meneruskan cookie otentikasi OpenSSO?

Saya memiliki satu set layanan web RESTful. Layanan ini dilindungi di server Glassfish oleh OpenSSO. Saat saya mencoba memanggil layanan RESTful langsung dari browser, OpenSSO mencegat permintaan tersebut, lalu meneruskan permintaan tersebut ke layanan REST setelah kredensial pengguna diautentikasi. OpenSSO menggunakan cookie sesi pada permintaan berikutnya (hingga sesi tersebut tidak valid). Saya yakin bagian ini berfungsi dengan benar.

Kami ingin memanggil layanan ini dari klien Flex. Untuk mengaktifkan operasi PUT dan DELETE, kami menyiapkan BlazeDS untuk mem-proxy permintaan RESTful dari klien fleksibel ke layanan REST. Ketika keamanan layanan RESTful dinonaktifkan, bagian ini berfungsi dengan baik.

Sekarang kami mencoba mengamankan seluruh aplikasi. Kami telah menempatkan Flex SWF ke dalam perang dan menyebarkannya ke Glassfish. Kami telah menempatkan keamanan di sekitar sumber daya ini dan ketika pengguna mencoba mengunduh SWF (melalui tautan HTML dalam perang), OpenSSO mencegat permintaan tersebut, lalu meneruskannya ke aplikasi jika otorisasi berhasil (seperti yang terjadi pada layanan web RESTful ).

Masalahnya adalah - panggilan RESTful yang dilakukan oleh aplikasi Flex (melalui BlazeDS) gagal. OpenSSO tampaknya juga mencegat permintaan ini dan sekali lagi meminta kredensial pengguna. Tampaknya cookie autentikasi tidak diteruskan ke (atau mungkin oleh) proksi BlazeDS.

Bagaimana saya bisa mengakses cookie yang dikembalikan oleh permintaan otorisasi SSO asli dan meminta BlazeDS meneruskannya ke layanan web RESTful?


person Vinnie    schedule 15.06.2010    source sumber


Jawaban (1)


Gunakan pembakar atau proksi http apa pun untuk memeriksa hal-hal berikut -

  1. Apakah server blaze dan server web berada di domain yang sama? Jika tidak, browser tidak akan mengirimkan cookie ke server Blaze.
  2. Apakah kedua server berada di server yang sama tetapi portnya berbeda? Port yang berbeda dianggap sebagai pelanggaran kebijakan asal yang sama oleh beberapa browser, dan cookie tidak akan dikirim ke server.
  3. Apa jalur yang ditetapkan dalam cookie SSO? Jika disetel ke jalur tertentu, browser tidak akan mengirimkan cookie ke server blaze.

Jika browser mengirimkan cookie SSO, Anda perlu memberikan detail tambahan tentang server SSO Anda sebelum seseorang dapat membantu Anda.

person Sripathi Krishnan    schedule 15.06.2010