Files
backend/services/OidcRpService.h
T

29 lines
993 B
C++

#pragma once
#include <json/json.h>
#include <optional>
#include <string>
namespace visione::services
{
class OidcRpService
{
public:
Json::Value startLogin(const Json::Value &body);
Json::Value callback(const std::string &state,
const std::string &code,
const std::string &error,
const std::string &errorDescription,
const std::optional<std::string> &issuer);
Json::Value sessionStatus(const std::string &state);
Json::Value entityConfigurationDocument() const;
std::string entityConfigurationJwt() const;
Json::Value resolveDocument(const std::optional<std::string> &sub,
const std::optional<std::string> &anchor) const;
std::string resolveJwt(const std::optional<std::string> &sub,
const std::optional<std::string> &anchor) const;
Json::Value jwks() const;
};
} // namespace visione::services