Sunucudan sunucuya Kalıcı giriş info

7 Cevap php

Şu anda 2 web sunucuları, Tek Coldfusion ve diğer PHP üzerinde çalışıyorum.

Right now, the Coldfusion server is my main server where users log in to access restricted data. However, I have also begun using a PHP server and want to make it transparent for users to access a specific page on that server - that server requires log in information as well.

Ben kullanıcıları iki oturum istemiyorum.

Bunu gerçekleştirmek için bir yolu var mı?

Thx

GÜNCELLEME: bir intranet ortamında çalışmak, o yüzden herhangi bir kamu çözüm kullanamazsınız.

UPDATE: Reason I am asking for this is because we are moving from a MSQL / Coldfusion environment (Initial server) to a PHP / ORACLE (new server). So I have 2 user tables as well (although they contain mostly the same information). I am trying to faze out the use of our initial server in favor of our new server transparently to the user and thus I have to work in parallel for the time being.

7 Cevap

Çoğu tek-sign-on çözümler biraz bu gibi çalışmak ...

  1. Ana sistem kullanımını doğrular
  2. Kullanıcı seçmesidir sisteme 2 taşımak için bir ihtiyaç başlatır
  3. Ana sistem arka sistemi 2 ile kullanıcı kimliğini doğrular
  4. Sistem 2 Ana sistem için bir, rastgele uzun ve tek belirteci malzemeleri
  5. Ana sistem sistemi 2, belirteci ile, kullanıcıyı yönlendirir
  6. Sistem 2 kontroller belirteç (ve IP adresi gibi diğer faktörler) oturumu doğrulamak için
  7. Sistem 2 de yürütülemez sağlamak için belirteci hizmetinde

Sen Ana sistem ve sistem 2 birbirleriyle konuşurken özellikle burada iletim kanalları, bazı güvenlik vardı emin olmak isterim. Bunu güvenli bir nakil olmak isterim.

Bir veritabanında mağaza oturumlar ve iki uygulamalar arasında paylaşabilirsiniz.

Sen tam tersi xml-rpc kullanıcı verilerini almak ve ilki için bir giriş çerez olduğunda, diğer siteye kullanıcı giriş için kullanabilirsiniz ve olabilir.

Php manual page for XML-rpc

İşte ben yaptım ne, benim kendi oyun sunucusu çalışan, SQL Server kullanıcıları vardı, ve mysql üzerine, ve ikisini de entegre etmek istiyordu.

  1. Bir kullanıcı 1 sisteminde oluşturulmuş olup olmadığını aynı zamanda diğer oluşturulan emin yaptı.

  2. Yani burada oluşturulan otomatik olarak diğer sistem bir kullanıcı oluşturmak için, hem de uygulamalarda kodu değiştirebilirsiniz.

  3. Her iki sunucuları etki alanını paylaşan varsa bağlı, çapraz-etki oturumları veya kurabiye yapmak ... Ama benim en iyi tahmin verilerini saklamak ve retreive için olabilir ...

Ya da ..

  1. Bir kişi giriş / kayıtlar mevcut ip adresini kaydetmek gibi bu kişinin 2-5 dakika içinde başka bir sunucuda olsaydı, hem sunucularda, sonra kontrol eğer öyleyse, onları tanımlamak için ip adresini kullanabilirsiniz ....

  2. Zamanlama önemli, çünkü bu sistem zor, bu yüzden sizin güvenlik içinde büyük bir delik bırakarak değil .... Ama kısa vadede, sunucular arasında olacak, bu benim kendi görüşüme göre, basit bir çözümdür.

İyi Şanslar.

Eğer bir intranet üzerinde iseniz, aslında PHP kullanarak ağa oturum PC'den kullanıcı ağ kullanıcı adınızı dinleyebilir. Bu varsayar:

  1. Eğer PHP uygulama barındırmak için IIS kullanıyor.
  2. Sizin kullanıcı Windows'u kullanıyor.

Bölümünde "Algılama Adlarını için 2.2 etkinleştirilmesi Destek" Giriş here.

Bundan sonra, yapmanız gereken tüm aynı Coldfusion mümkün olup olmadığını araştırmak, ve ağ adlarının dayalı bir SSO çözüm temeli var.

Ne kadar StackOverflow üzerinde belirgin gibi, bir OpenID çözümü uygulama hakkında?

Siz Flash veya Flex aracılığıyla istemci makinede bir paylaşılan nesne bırakarak yararlanabilir. Bu nesne daha sonra, başka hiçbir birbirleriyle bağlantısı ya da ortak bir veritabanına erişimi vardı sunucularda ColdFusion / PHP / Python okunabilmektedir.

İşte Adobe Dokümanlar basit bir örnek

Maintain local persistence. This is the simplest way to use a shared object, and does not require Flash Media Server. For example, you can call SharedObject.getLocal() to create a shared object in an application, such as a calculator with memory. When the user closes the calculator, Flash Player saves the last value in a shared object on the user's computer. The next time the calculator is run, it contains the values it had previously. Alternatively, if you set the shared object's properties to null before the calculator application is closed, the next time the application runs, it opens without any values. Another example of maintaining local persistence is tracking user preferences or other data for a complex website, such as a record of which articles a user read on a news site. Tracking this information allows you to display articles that have already been read differently from new, unread articles. Storing this information on the user's computer reduces server load.

Tam Bilgi: http://livedocs.adobe.com/flex/3/langref/flash/net/SharedObject.html