そのサイトへのログインの時、Googleのアカウントと同期させたいと思います。
具体的には、サイト閲覧者のGoogleメール(Gmail等)をID、そのパスワードを私のサイトのパスワードとして、それぞれ使用したいと思います。
希望する挙動としては、
1)Googleの任意のアカウントにログインしている状態で、
私のサイトのユーザ登録画面に行くと、Googleのクッキーに保存されている情報の中から、必要なものを入力項目に規定値として表示させる。
2)Googleのどのアカウントにログインしているかによって、私のサイトを表示させた場合の情報(言語、タイムゾーン、通貨表示など)を変える。
などです。
上記のようなことは可能でしょうか?
特に、GoogleのCookieに記録されているパスワードは暗号化されていると思うので、困難でしょうか? その場合、IDだけでも同期させたいのですが。
不可能と思われます。
もし可能であれば、不正なサイトによってcookieから個人情報が盗まれることになり、
そのようなことはgoogleでも行わないはずだからです。
Cookieに記録されている情報の内、どれをIDとして扱っているかは分かりませんが、
ざっとCookieを見たところ、IDがそのまま記録されてはいませんでした。
逆にID(メールアドレス)がそのままあれば、他サイトで解析・収集できてしまうので怖いですね^^;
googleアカウントには対応していないようですが、
似たようなサービスでOpenIDがあります。
OpenIDを使ってほしいです。
http://jp.techcrunch.com/archives/20091125google-profile-openid/
>Googleのクッキーに保存されている情報の中から、必要なものを入力項目に規定値として表示させる。
昔はどうかわからないが、今はクッキーにはそのような情報は保存されてないと思います。
必要なものとは具体的にどのようなものでしょうか?
>パスワードは暗号化されていると思うので、困難でしょうか?
そんなことをされたら、GoogleIDはハッキングし放題で怖くてそんなサイトを使用できません。
あなたのサイトで、GoogleIDとパスワードで、Googleの助けを使わないでクッキーの内容だけで
認証できるということは、そのIDをつかって勝手に他人がログイン可能だといってるんです。
ありがとうございます。
上で他の回答者の方が書いている通り、OpenIDがオススメですが、GoogleAppEngineもオススメです。
apiを利用して、2行程度でuser情報を取得することができます。
例)
from google.appengine.api import users#インポート
user = users.get_current_user().email()#これでuserにユーザーの登録メールアドレスが格納される
GAEは、端的に言うと、Googleが提供するレンタルサーバーで、以下の3つの特徴を持ちます。
・Googleのインフラのスケーラビリティを利用できる
【オバマ大統領も満足したGoogle App Engineのスケーラビリティ】
・月間500万PV相当まで無料
アルファブロガーの累計PVでも、2000万PVくらいです。
http://d.hatena.ne.jp/Chikirin/
・スケーラビリティの代償として、言語やデータベースの扱いに制約がある
原則として、言語はpythonとjavaのみで、データベースはRDBではなくGoogleのBigTableになります。
ありがとうございます。大変参考になりました。
なるほど。有難うございます。