19 #ifndef ASYLO_IDENTITY_ATTESTATION_ENCLAVE_ASSERTION_GENERATOR_H_ 20 #define ASYLO_IDENTITY_ATTESTATION_ENCLAVE_ASSERTION_GENERATOR_H_ 24 #include "asylo/identity/enclave_assertion_authority.h" 25 #include "asylo/identity/identity.pb.h" 26 #include "asylo/platform/common/static_map.h" 27 #include "asylo/util/status.h" 28 #include "asylo/util/statusor.h" 87 struct Namer<EnclaveAssertionGenerator> {
89 return EnclaveAssertionAuthority::GenerateAuthorityId(
90 generator.IdentityType(), generator.AuthorityType())
95 DEFINE_STATIC_MAP_OF_BASE_TYPE(AssertionGeneratorMap,
96 EnclaveAssertionGenerator);
virtual StatusOr< bool > CanGenerate(const AssertionRequest &request) const =0
Indicates whether the assertion requested in request can be generated by this generator.
ABSL_CONST_INIT const char kStatusMoveAssignmentMsg[]
virtual Status Generate(const std::string &user_data, const AssertionRequest &request, Assertion *assertion) const =0
Generates an assertion that satisfies the given request, if request is compatible with this generator...
Defines an interface for assertion authorities that create assertion offers and generate assertions...
Definition: enclave_assertion_generator.h:45
virtual Status CreateAssertionOffer(AssertionOffer *offer) const =0
Creates an assertion offer compatible with this generator's identity type and authority type and plac...