|
1 | | -// Add steps as necessary for accessing the software, post-configuration, and testing. Don’t include full usage instructions for your software, but add links to your product documentation for that information. |
2 | | -//Should any sections not be applicable, remove them |
| 1 | +==== Adding an API Secret After Deployment |
| 2 | + |
| 3 | +In some cases, your Git service may provide security mechanisms like API secrets when you create the webhook. In these cases, you can launch the Quick Start with a blank parameter value for the *API Secret* parameter, and then update the stack to provide the value of the parameter. Follow these steps: |
| 4 | + |
| 5 | +. In the https://console.aws.amazon.com/cloudformation[AWS Cloudformation console], select the stack. |
| 6 | + |
| 7 | +[arabic, start=2] |
| 8 | +. Choose *Actions*, and then choose *Update Stack*. |
| 9 | +. Keep the default to use the current template. |
| 10 | +. On the *Specify Details* page, change the *API Secret* parameter setting. |
| 11 | +. Choose *Next* twice. |
| 12 | + |
| 13 | +[arabic, start=10] |
| 14 | +. Under *Capabilities*, select the check box to acknowledge that the template will create IAM resources, and then choose *Update*. |
| 15 | + |
| 16 | +When the status is *UPDATE_COMPLETE*, the stack has been updated with the webhook secret you specified for security. |
3 | 17 |
|
4 | 18 | == Test the deployment |
5 | | -// If steps are required to test the deployment, add them here. If not, remove the heading |
6 | 19 |
|
7 | | -== Post deployment steps |
8 | | -// If Post-deployment steps are required, add them here. If not, remove the heading |
| 20 | +Before putting the webhook into production, you should test your deployment. |
| 21 | + |
| 22 | +. Modify a file in your repository. |
| 23 | + |
| 24 | +image:../images/image6.png[../Desktop/Screen_Shot_2017-07-15_at_11_35_57_AM.png,width=529,height=21] |
| 25 | + |
| 26 | +. Commit and push the changes. |
| 27 | + |
| 28 | +image:../images/image7.png[Figure 4,width=648,height=198] |
| 29 | + |
| 30 | +[start=2] |
| 31 | +. Wait a few minutes and check your S3 bucket for a new (or updated) object with a key that matches your repository path. |
| 32 | + |
| 33 | +image:../images/image8.png[Figure 5,width=646,height=348] |
| 34 | + |
| 35 | +*Figure 5: Checking for S3 bucket updates after a commit* |
9 | 36 |
|
10 | | -== Best practices for using {partner-product-short-name} on AWS |
11 | | -// Provide post-deployment best practices for using the technology on AWS, including considerations such as migrating data, backups, ensuring high performance, high availability, etc. Link to software documentation for detailed information. |
| 37 | +=== Best Practices |
12 | 38 |
|
13 | | -_Add any best practices for using the software._ |
| 39 | +The architecture built by this Quick Start supports AWS best practices for security. |
14 | 40 |
|
15 | | -== Security |
16 | | -// Provide post-deployment best practices for using the technology on AWS, including considerations such as migrating data, backups, ensuring high performance, high availability, etc. Link to software documentation for detailed information. |
| 41 | +==== SSH Keys |
17 | 42 |
|
18 | | -_Add any security-related information._ |
| 43 | +SSH keys are generated at stack creation, and are then encrypted using AWS KMS and the encrypted copy stored in Amazon S3. When you use the Git pull endpoint, the private key is fetched by the Lambda function, decrypted, and used to authenticate against your Git service to perform a clone of the repository. We don’t recommend (a) reusing SSH keys for multiple services, or (b) launching another instance of this Quick Start for each repository that you wish to clone to Amazon S3; this ensures that each repository uses unique keys. |
19 | 44 |
|
20 | | -== Other useful information |
21 | | -//Provide any other information of interest to users, especially focusing on areas where AWS or cloud usage differs from on-premises usage. |
| 45 | +==== Webhook Security |
22 | 46 |
|
23 | | -_Add any other details that will help the customer use the software on AWS._ |
| 47 | +Different Git services provide varying ways to authenticate against an endpoint. The Git pull endpoint supports webhook secrets (used by GitHub Enterprise, GitLab, and other Git repository managers) as well as source IP address whitelisting. The zip download endpoint supports personal access tokens (as used by GitHub Enterprise and GitLab) and OAuth2 (used by Bitbucket). We recommend that you set up at least one of these security mechanisms to protect your webhook API endpoint. For more information about how this Quick Start utilizes these mechanisms, see the parameters in the link:#deployment-steps[Deployment Steps] section of this guide. For product-specific guidance on how to configure these security mechanisms, refer to your Git product’s documentation. |
0 commit comments