33Attestation based Enclave Configuration service
44
55
6- ## Introduction to KubeTEE AECS
7- KubeTEE AECS is based on KubeTEE Trusted Function Framework, and provide the
8- secret generation, management, storage and dispatch service to TEE applications.
9- After bidirectional authentication based on remote attestation between AECS and
10- all TEE-based application service, each service enclave instance will get the secrets
11- from AECS server, and use the secrets for later data encryption or decryption.
6+ ## 1 Introduction to KubeTEE AECS
7+
8+ KubeTEE AECS provides the secret generation, management, storage and dispatch
9+ service to TEE applications. After bidirectional authentication based on
10+ remote attestation between AECS and all TEE-based application service,
11+ each service enclave instance will share the secrets from AECS server,
12+ and use the secrets for later use cases.
1213
1314![ AECS] ( docs/aecs.jpg )
1415
16+ As far as now, we support the following type of secrets:
17+
18+ - AES-GCM 256 key
19+ - RSA key pair
20+ - SM2 key pair
21+ - Self-signed certificate and key
22+ - Secret imported by user (Bring your own seret)
23+ - Application sensitive configurations as key-value pair
24+
25+
26+ ## 2 Quick Start
1527
16- ## Quick Start
1728
18- ## Update sub-modules
29+ ### 2.1 Run prebuild AECS server for test only
30+
31+ We provide a public docker image for AECS server test only. It's runing in
32+ simulation mode and also has debug log messages. Try it simply like this:
33+
34+ ```
35+ ./deployment/start.sh start # stop command to stop it
36+ ```
37+
38+
39+ ### 2.2 Build the test AECS server from source code
40+
41+ In case you want to build the AECS and create the docker image by your self,
42+ please follow the steps (2.2.1 ~ 2.2.4) below.
43+
44+
45+ #### 2.2.1 Update sub-modules
1946
2047If it's the first time you build the project after clone the source code,
2148please update the sub-modules like the this.
2249
2350```
24- $ git submodule update --init --recursive
51+ git submodule update --init --recursive
2552```
2653
27- ### Build Project in Docker Environment
54+
55+ #### 2.2.2 Build Project in Docker Environment
2856
2957```
3058./deployment/dockerbuild.sh [--build Debug]
3159```
3260
33- ## Create the Docker Image
61+
62+ #### 2.2.3 Create the Docker Image
3463
3564You need to generate the test certificates like this (for development and test only, should use formal certificates in product environment):
3665
@@ -44,13 +73,13 @@ Then create the image with test certificates and configurations.
4473./deployment/create_image.sh
4574```
4675
47- ### To Start the AECS server
76+ #### 2.2.4 Start the AECS server
4877
4978```
5079./deployment/run_image.sh ./aecs_server
5180```
5281
53- ### Manage the Enclave Service
82+ ### 2.3 Manage the Enclave Service
5483
5584```
5685# Save the AECS identity key into storage for backup for the first time to start the aecs server
@@ -62,22 +91,22 @@ Then create the image with test certificates and configurations.
6291./deployment/run_image.sh ./aecsadmin --config /etc/kubetee/aecs_admin_test.kubeconfig --action list
6392```
6493
65- ### Manage the Enclave Service Secrets
94+ ### 2.4 Manage the Enclave Service Secrets
6695
6796```
6897# Create three test secrets for service1 and list all of them
6998./deployment/run_image.sh ./serviceadmin --config /etc/kubetee/service_admin_test.kubeconfig --action create --policy /etc/kubetee/service_secret_policy.yaml
7099./deployment/run_image.sh ./serviceadmin --config /etc/kubetee/service_admin_test.kubeconfig --action list
71100```
72101
73- ## Contributing
102+ ## 3 Contributing
74103
75104KubeTEE AECS is not final stable at this moment. There will be some improvements or new feature updates later.
76105Anyone is also welcome to provide any form of contribution, please see CONTRIBUTING.md for details.
77106
78107For any security vulnerabilities or other problems, please contact us by [ email] ( mailto:SOFAEnclaveSecurity@list.alibaba-inc.com ) .
79108
80109
81- ## License
110+ ## 4 License
82111KubeTEE AECS is released by Ant Group under Apache 2.0 License and also used some other opensource code.
83112See the license information [ here] ( LICENSE ) for detail.
0 commit comments