diff options
Diffstat (limited to 'src/zenserver/auth/authservice.cpp')
| -rw-r--r-- | src/zenserver/auth/authservice.cpp | 91 |
1 files changed, 0 insertions, 91 deletions
diff --git a/src/zenserver/auth/authservice.cpp b/src/zenserver/auth/authservice.cpp deleted file mode 100644 index 1cc679540..000000000 --- a/src/zenserver/auth/authservice.cpp +++ /dev/null @@ -1,91 +0,0 @@ -// Copyright Epic Games, Inc. All Rights Reserved. - -#include <auth/authservice.h> - -#include <auth/authmgr.h> - -#include <zencore/compactbinarybuilder.h> -#include <zencore/string.h> - -ZEN_THIRD_PARTY_INCLUDES_START -#include <json11.hpp> -ZEN_THIRD_PARTY_INCLUDES_END - -namespace zen { - -using namespace std::literals; - -HttpAuthService::HttpAuthService(AuthMgr& AuthMgr) : m_AuthMgr(AuthMgr) -{ - m_Router.RegisterRoute( - "oidc/refreshtoken", - [this](HttpRouterRequest& RouterRequest) { - HttpServerRequest& ServerRequest = RouterRequest.ServerRequest(); - - const HttpContentType ContentType = ServerRequest.RequestContentType(); - - if ((ContentType == HttpContentType::kUnknownContentType || ContentType == HttpContentType::kJSON) == false) - { - return ServerRequest.WriteResponse(HttpResponseCode::BadRequest); - } - - const IoBuffer Body = ServerRequest.ReadPayload(); - - std::string JsonText(reinterpret_cast<const char*>(Body.GetData()), Body.GetSize()); - std::string JsonError; - json11::Json TokenInfo = json11::Json::parse(JsonText, JsonError); - - if (!JsonError.empty()) - { - CbObjectWriter Response; - Response << "Result"sv << false; - Response << "Error"sv << JsonError; - - return ServerRequest.WriteResponse(HttpResponseCode::BadRequest, Response.Save()); - } - - const std::string RefreshToken = TokenInfo["RefreshToken"].string_value(); - std::string ProviderName = TokenInfo["ProviderName"].string_value(); - - if (ProviderName.empty()) - { - ProviderName = "Default"sv; - } - - const bool Ok = - m_AuthMgr.AddOpenIdToken(AuthMgr::AddOpenIdTokenParams{.ProviderName = ProviderName, .RefreshToken = RefreshToken}); - - if (Ok) - { - ServerRequest.WriteResponse(Ok ? HttpResponseCode::OK : HttpResponseCode::BadRequest); - } - else - { - CbObjectWriter Response; - Response << "Result"sv << false; - Response << "Error"sv - << "Invalid token"sv; - - ServerRequest.WriteResponse(HttpResponseCode::BadRequest, Response.Save()); - } - }, - HttpVerb::kPost); -} - -HttpAuthService::~HttpAuthService() -{ -} - -const char* -HttpAuthService::BaseUri() const -{ - return "/auth/"; -} - -void -HttpAuthService::HandleRequest(zen::HttpServerRequest& Request) -{ - m_Router.HandleRequest(Request); -} - -} // namespace zen |