You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tuscany.apache.org by js...@apache.org on 2011/03/21 08:41:48 UTC
svn commit: r1083692 - in /tuscany/sca-cpp/trunk/modules:
http/open-auth-conf http/openauth.hpp oauth/mod-oauth1.cpp
oauth/mod-oauth2.cpp
Author: jsdelfino
Date: Mon Mar 21 07:41:48 2011
New Revision: 1083692
URL: http://svn.apache.org/viewvc?rev=1083692&view=rev
Log:
Support authentication across wildcard domains.
Modified:
tuscany/sca-cpp/trunk/modules/http/open-auth-conf
tuscany/sca-cpp/trunk/modules/http/openauth.hpp
tuscany/sca-cpp/trunk/modules/oauth/mod-oauth1.cpp
tuscany/sca-cpp/trunk/modules/oauth/mod-oauth2.cpp
Modified: tuscany/sca-cpp/trunk/modules/http/open-auth-conf
URL: http://svn.apache.org/viewvc/tuscany/sca-cpp/trunk/modules/http/open-auth-conf?rev=1083692&r1=1083691&r2=1083692&view=diff
==============================================================================
--- tuscany/sca-cpp/trunk/modules/http/open-auth-conf (original)
+++ tuscany/sca-cpp/trunk/modules/http/open-auth-conf Mon Mar 21 07:41:48 2011
@@ -35,7 +35,7 @@ cat >>$root/conf/auth.conf <<EOF
AuthType Open
AuthName "$host"
Session On
-SessionCookieName TuscanyOpenAuth path=/;secure=TRUE
+SessionCookieName TuscanyOpenAuth domain=.$host;path=/;secure=TRUE
SessionCryptoPassphrase $pw
AuthOpenAuth On
AuthOpenAuthLoginPage /login
Modified: tuscany/sca-cpp/trunk/modules/http/openauth.hpp
URL: http://svn.apache.org/viewvc/tuscany/sca-cpp/trunk/modules/http/openauth.hpp?rev=1083692&r1=1083691&r2=1083692&view=diff
==============================================================================
--- tuscany/sca-cpp/trunk/modules/http/openauth.hpp (original)
+++ tuscany/sca-cpp/trunk/modules/http/openauth.hpp Mon Mar 21 07:41:48 2011
@@ -73,11 +73,11 @@ const maybe<string> sessionID(const requ
/**
* Convert a session id to a cookie string.
*/
-const string cookie(const string& sid) {
+const string cookie(const string& sid, const string& domain) {
const time_t t = time(NULL) + 86400;
char exp[32];
strftime(exp, 32, "%a, %d-%b-%Y %H:%M:%S GMT", gmtime(&t));
- const string c = string("TuscanyOpenAuth=") + sid + string(";path=/;expires=" + string(exp)) + ";secure=TRUE";
+ const string c = string("TuscanyOpenAuth=") + sid + ";domain=." + domain + ";path=/;expires=" + string(exp) + ";secure=TRUE";
debug(c, "openauth::cookie");
return c;
}
Modified: tuscany/sca-cpp/trunk/modules/oauth/mod-oauth1.cpp
URL: http://svn.apache.org/viewvc/tuscany/sca-cpp/trunk/modules/oauth/mod-oauth1.cpp?rev=1083692&r1=1083691&r2=1083692&view=diff
==============================================================================
--- tuscany/sca-cpp/trunk/modules/oauth/mod-oauth1.cpp (original)
+++ tuscany/sca-cpp/trunk/modules/oauth/mod-oauth1.cpp Mon Mar 21 07:41:48 2011
@@ -378,7 +378,7 @@ const failable<int> access_token(const l
return mkfailure<int>(reason(prc));
// Send session ID to the client in a cookie
- apr_table_set(r->err_headers_out, "Set-Cookie", c_str(openauth::cookie(sid)));
+ apr_table_set(r->err_headers_out, "Set-Cookie", c_str(openauth::cookie(sid, httpd::hostName(sc.server))));
return httpd::externalRedirect(httpd::url(r->uri, r), r);
}
Modified: tuscany/sca-cpp/trunk/modules/oauth/mod-oauth2.cpp
URL: http://svn.apache.org/viewvc/tuscany/sca-cpp/trunk/modules/oauth/mod-oauth2.cpp?rev=1083692&r1=1083691&r2=1083692&view=diff
==============================================================================
--- tuscany/sca-cpp/trunk/modules/oauth/mod-oauth2.cpp (original)
+++ tuscany/sca-cpp/trunk/modules/oauth/mod-oauth2.cpp Mon Mar 21 07:41:48 2011
@@ -230,7 +230,7 @@ const failable<int> access_token(const l
return mkfailure<int>(reason(prc));
// Send session ID to the client in a cookie
- apr_table_set(r->err_headers_out, "Set-Cookie", c_str(openauth::cookie(sid)));
+ apr_table_set(r->err_headers_out, "Set-Cookie", c_str(openauth::cookie(sid, httpd::hostName(sc.server))));
return httpd::externalRedirect(httpd::url(r->uri, r), r);
}