diff options
author | BlueWall | 2012-02-22 16:36:28 -0500 |
---|---|---|
committer | BlueWall | 2012-02-22 16:36:28 -0500 |
commit | 165ae251ec132da30dc58513101e4ec438df8d2f (patch) | |
tree | d386b1c837aca876a7573a9297f95758a8714cf8 /OpenSim/Services/LLLoginService | |
parent | Add web profile url setting to ini (diff) | |
download | opensim-SC_OLD-165ae251ec132da30dc58513101e4ec438df8d2f.zip opensim-SC_OLD-165ae251ec132da30dc58513101e4ec438df8d2f.tar.gz opensim-SC_OLD-165ae251ec132da30dc58513101e4ec438df8d2f.tar.bz2 opensim-SC_OLD-165ae251ec132da30dc58513101e4ec438df8d2f.tar.xz |
V3 Support
The V3 webapps need SSO capability and use OpenID. We need to send both our OpenID server url and a token for the user in the login response.
Diffstat (limited to 'OpenSim/Services/LLLoginService')
-rw-r--r-- | OpenSim/Services/LLLoginService/LLLoginResponse.cs | 20 | ||||
-rw-r--r-- | OpenSim/Services/LLLoginService/LLLoginService.cs | 4 |
2 files changed, 22 insertions, 2 deletions
diff --git a/OpenSim/Services/LLLoginService/LLLoginResponse.cs b/OpenSim/Services/LLLoginService/LLLoginResponse.cs index b6f6d31..844c5ae 100644 --- a/OpenSim/Services/LLLoginService/LLLoginResponse.cs +++ b/OpenSim/Services/LLLoginService/LLLoginResponse.cs | |||
@@ -171,6 +171,9 @@ namespace OpenSim.Services.LLLoginService | |||
171 | // Web Profiles | 171 | // Web Profiles |
172 | private string profileURL; | 172 | private string profileURL; |
173 | 173 | ||
174 | // OpenID | ||
175 | private string openIDURL; | ||
176 | |||
174 | private string searchURL; | 177 | private string searchURL; |
175 | 178 | ||
176 | // Error Flags | 179 | // Error Flags |
@@ -223,7 +226,7 @@ namespace OpenSim.Services.LLLoginService | |||
223 | public LLLoginResponse(UserAccount account, AgentCircuitData aCircuit, GridUserInfo pinfo, | 226 | public LLLoginResponse(UserAccount account, AgentCircuitData aCircuit, GridUserInfo pinfo, |
224 | GridRegion destination, List<InventoryFolderBase> invSkel, FriendInfo[] friendsList, ILibraryService libService, | 227 | GridRegion destination, List<InventoryFolderBase> invSkel, FriendInfo[] friendsList, ILibraryService libService, |
225 | string where, string startlocation, Vector3 position, Vector3 lookAt, List<InventoryItemBase> gestures, string message, | 228 | string where, string startlocation, Vector3 position, Vector3 lookAt, List<InventoryItemBase> gestures, string message, |
226 | GridRegion home, IPEndPoint clientIP, string mapTileURL, string profileURL, string searchURL, string currency) | 229 | GridRegion home, IPEndPoint clientIP, string mapTileURL, string profileURL, string openIDURL, string searchURL, string currency) |
227 | : this() | 230 | : this() |
228 | { | 231 | { |
229 | FillOutInventoryData(invSkel, libService); | 232 | FillOutInventoryData(invSkel, libService); |
@@ -241,6 +244,7 @@ namespace OpenSim.Services.LLLoginService | |||
241 | StartLocation = where; | 244 | StartLocation = where; |
242 | MapTileURL = mapTileURL; | 245 | MapTileURL = mapTileURL; |
243 | ProfileURL = profileURL; | 246 | ProfileURL = profileURL; |
247 | OpenIDURL = openIDURL; | ||
244 | 248 | ||
245 | SearchURL = searchURL; | 249 | SearchURL = searchURL; |
246 | Currency = currency; | 250 | Currency = currency; |
@@ -390,6 +394,7 @@ namespace OpenSim.Services.LLLoginService | |||
390 | initialOutfit.Add(InitialOutfitHash); | 394 | initialOutfit.Add(InitialOutfitHash); |
391 | mapTileURL = String.Empty; | 395 | mapTileURL = String.Empty; |
392 | profileURL = String.Empty; | 396 | profileURL = String.Empty; |
397 | openIDURL = String.Empty; | ||
393 | searchURL = String.Empty; | 398 | searchURL = String.Empty; |
394 | 399 | ||
395 | currency = String.Empty; | 400 | currency = String.Empty; |
@@ -465,6 +470,10 @@ namespace OpenSim.Services.LLLoginService | |||
465 | if (profileURL != String.Empty) | 470 | if (profileURL != String.Empty) |
466 | responseData["profile-server-url"] = profileURL; | 471 | responseData["profile-server-url"] = profileURL; |
467 | 472 | ||
473 | // We need to send an openid_token back in the response too | ||
474 | if (openIDURL != String.Empty) | ||
475 | responseData["openid_url"] = openIDURL; | ||
476 | |||
468 | if (m_buddyList != null) | 477 | if (m_buddyList != null) |
469 | { | 478 | { |
470 | responseData["buddy-list"] = m_buddyList.ToArray(); | 479 | responseData["buddy-list"] = m_buddyList.ToArray(); |
@@ -573,6 +582,9 @@ namespace OpenSim.Services.LLLoginService | |||
573 | if (profileURL != String.Empty) | 582 | if (profileURL != String.Empty) |
574 | map["profile-server-url"] = OSD.FromString(profileURL); | 583 | map["profile-server-url"] = OSD.FromString(profileURL); |
575 | 584 | ||
585 | if (openIDURL != String.Empty) | ||
586 | map["openid_url"] = OSD.FromString(openIDURL); | ||
587 | |||
576 | if (searchURL != String.Empty) | 588 | if (searchURL != String.Empty) |
577 | map["search"] = OSD.FromString(searchURL); | 589 | map["search"] = OSD.FromString(searchURL); |
578 | 590 | ||
@@ -951,6 +963,12 @@ namespace OpenSim.Services.LLLoginService | |||
951 | set { profileURL = value; } | 963 | set { profileURL = value; } |
952 | } | 964 | } |
953 | 965 | ||
966 | public string OpenIDURL | ||
967 | { | ||
968 | get { return openIDURL; } | ||
969 | set { openIDURL = value; } | ||
970 | } | ||
971 | |||
954 | public string SearchURL | 972 | public string SearchURL |
955 | { | 973 | { |
956 | get { return searchURL; } | 974 | get { return searchURL; } |
diff --git a/OpenSim/Services/LLLoginService/LLLoginService.cs b/OpenSim/Services/LLLoginService/LLLoginService.cs index 02e62c8..f7b38d4 100644 --- a/OpenSim/Services/LLLoginService/LLLoginService.cs +++ b/OpenSim/Services/LLLoginService/LLLoginService.cs | |||
@@ -75,6 +75,7 @@ namespace OpenSim.Services.LLLoginService | |||
75 | protected bool m_AllowRemoteSetLoginLevel; | 75 | protected bool m_AllowRemoteSetLoginLevel; |
76 | protected string m_MapTileURL; | 76 | protected string m_MapTileURL; |
77 | protected string m_ProfileURL; | 77 | protected string m_ProfileURL; |
78 | protected string m_OpenIDURL; | ||
78 | protected string m_SearchURL; | 79 | protected string m_SearchURL; |
79 | protected string m_Currency; | 80 | protected string m_Currency; |
80 | 81 | ||
@@ -110,6 +111,7 @@ namespace OpenSim.Services.LLLoginService | |||
110 | m_GatekeeperURL = m_LoginServerConfig.GetString("GatekeeperURI", string.Empty); | 111 | m_GatekeeperURL = m_LoginServerConfig.GetString("GatekeeperURI", string.Empty); |
111 | m_MapTileURL = m_LoginServerConfig.GetString("MapTileURL", string.Empty); | 112 | m_MapTileURL = m_LoginServerConfig.GetString("MapTileURL", string.Empty); |
112 | m_ProfileURL = m_LoginServerConfig.GetString("ProfileServerURL", string.Empty); | 113 | m_ProfileURL = m_LoginServerConfig.GetString("ProfileServerURL", string.Empty); |
114 | m_OpenIDURL = m_LoginServerConfig.GetString("OpenIDServerURL", String.Empty); | ||
113 | m_SearchURL = m_LoginServerConfig.GetString("SearchURL", string.Empty); | 115 | m_SearchURL = m_LoginServerConfig.GetString("SearchURL", string.Empty); |
114 | m_Currency = m_LoginServerConfig.GetString("Currency", string.Empty); | 116 | m_Currency = m_LoginServerConfig.GetString("Currency", string.Empty); |
115 | 117 | ||
@@ -415,7 +417,7 @@ namespace OpenSim.Services.LLLoginService | |||
415 | // Finally, fill out the response and return it | 417 | // Finally, fill out the response and return it |
416 | // | 418 | // |
417 | LLLoginResponse response = new LLLoginResponse(account, aCircuit, guinfo, destination, inventorySkel, friendsList, m_LibraryService, | 419 | LLLoginResponse response = new LLLoginResponse(account, aCircuit, guinfo, destination, inventorySkel, friendsList, m_LibraryService, |
418 | where, startLocation, position, lookAt, gestures, m_WelcomeMessage, home, clientIP, m_MapTileURL, m_ProfileURL, m_SearchURL, m_Currency); | 420 | where, startLocation, position, lookAt, gestures, m_WelcomeMessage, home, clientIP, m_MapTileURL, m_ProfileURL, m_OpenIDURL, m_SearchURL, m_Currency); |
419 | 421 | ||
420 | m_log.DebugFormat("[LLOGIN SERVICE]: All clear. Sending login response to client."); | 422 | m_log.DebugFormat("[LLOGIN SERVICE]: All clear. Sending login response to client."); |
421 | return response; | 423 | return response; |