aboutsummaryrefslogtreecommitdiff
path: root/zenserver/auth/authmgr.h
diff options
context:
space:
mode:
authorPer Larsson <[email protected]>2022-01-25 18:36:41 +0100
committerPer Larsson <[email protected]>2022-01-25 18:36:41 +0100
commit060c3ed4b49c6341d1a917ec728d26bda7e41494 (patch)
tree054b147827833efd715a08f08f85d7d2e25c609c /zenserver/auth/authmgr.h
parentFixed missing object in project oplog response. (diff)
downloadzen-060c3ed4b49c6341d1a917ec728d26bda7e41494.tar.xz
zen-060c3ed4b49c6341d1a917ec728d26bda7e41494.zip
Added auth manager with support for OIDC providers.
Diffstat (limited to 'zenserver/auth/authmgr.h')
-rw-r--r--zenserver/auth/authmgr.h36
1 files changed, 36 insertions, 0 deletions
diff --git a/zenserver/auth/authmgr.h b/zenserver/auth/authmgr.h
new file mode 100644
index 000000000..33bd15ee9
--- /dev/null
+++ b/zenserver/auth/authmgr.h
@@ -0,0 +1,36 @@
+// Copyright Epic Games, Inc. All Rights Reserved.
+
+#include <zencore/string.h>
+
+#include <filesystem>
+#include <memory>
+
+namespace zen {
+
+class AuthMgr
+{
+public:
+ virtual ~AuthMgr() = default;
+
+ struct AddOpenIdProviderParams
+ {
+ std::string_view Name;
+ std::string_view Url;
+ std::string_view ClientId;
+ };
+
+ virtual void AddOpenIdProvider(const AddOpenIdProviderParams& Params) = 0;
+
+ struct AddOpenIdTokenParams
+ {
+ };
+};
+
+struct AuthConfig
+{
+ std::filesystem::path RootDirectory;
+};
+
+std::unique_ptr<AuthMgr> MakeAuthMgr(const AuthConfig& Config);
+
+} // namespace zen