Asylo
enclave_credentials_options.h
Go to the documentation of this file.
1 /*
2  *
3  * Copyright 2017 Asylo authors
4  *
5  * Licensed under the Apache License, Version 2.0 (the "License");
6  * you may not use this file except in compliance with the License.
7  * You may obtain a copy of the License at
8  *
9  * http://www.apache.org/licenses/LICENSE-2.0
10  *
11  * Unless required by applicable law or agreed to in writing, software
12  * distributed under the License is distributed on an "AS IS" BASIS,
13  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14  * See the License for the specific language governing permissions and
15  * limitations under the License.
16  *
17  */
18 
19 #ifndef ASYLO_GRPC_AUTH_ENCLAVE_CREDENTIALS_OPTIONS_H_
20 #define ASYLO_GRPC_AUTH_ENCLAVE_CREDENTIALS_OPTIONS_H_
21 
22 #include <string>
23 
24 #include "asylo/identity/assertion_description_util.h"
25 #include "asylo/identity/identity.pb.h"
26 
27 namespace asylo {
28 
29 /// Options used to configure a `::grpc::ChannelCredentials` object or a
30 /// `::grpc::ServerCredentials` object for use in an enclave system.
32  /// Combines the given EnclaveCredentialsOptions with this object.
33  ///
34  /// \param additional_options The EnclaveCredentialsOptions object to
35  /// combine with this object.
36  /// \return This object, modified to add the `additional_options`.
38  const EnclaveCredentialsOptions &additional_options);
39 
40  /// Additional data that is authenticated during establishment of the gRPC
41  /// channel. This string does not need to be null-terminated.
43 
44  /// Assertions offered by the credential holder.
46 
47  /// Peer assertions accepted by the credential holder.
49 };
50 
51 } // namespace asylo
52 
53 #endif // ASYLO_GRPC_AUTH_ENCLAVE_CREDENTIALS_OPTIONS_H_
Options used to configure a ::grpc::ChannelCredentials object or a ::grpc::ServerCredentials object f...
Definition: enclave_credentials_options.h:31
EnclaveCredentialsOptions & Add(const EnclaveCredentialsOptions &additional_options)
Combines the given EnclaveCredentialsOptions with this object.
AssertionDescriptionHashSet accepted_peer_assertions
Peer assertions accepted by the credential holder.
Definition: enclave_credentials_options.h:48
std::string additional_authenticated_data
Additional data that is authenticated during establishment of the gRPC channel.
Definition: enclave_credentials_options.h:42
Definition: aes_gcm_siv.h:37
AssertionDescriptionHashSet self_assertions
Assertions offered by the credential holder.
Definition: enclave_credentials_options.h:45