Skip to content
This repository has been archived by the owner on Jul 10, 2021. It is now read-only.

docs(OAuth2):added guide for aws cognito #2017

Open
wants to merge 7 commits into
base: master
Choose a base branch
from

Conversation

joetancy
Copy link

Add a guide for AWS Cognito user pools to be used for OAuth2 authentication

Copy link
Contributor

@dorbin dorbin left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@joetancy , thanks for the doc! I've made some editing suggestions. I'll tag someone for a technical review.


## Setting up an AWS Cognito App Client

1. Navigate to [https://aws.amazon.com/](https://aws.amazon.com/) and log in with your AWS credentials.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can we link directly to the Cognito page?

1. Navigate to [https://aws.amazon.com/](https://aws.amazon.com/) and log in with your AWS credentials.
2. Search for Cognito in the search bar.
3. Select the user pools you want Spinnaker to use.
4. At the side bar under "General settings", select "App clients", add a client
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
4. At the side bar under "General settings", select "App clients", add a client
4. At the side bar under "General settings", select "App clients", add a client.

2. Search for Cognito in the search bar.
3. Select the user pools you want Spinnaker to use.
4. At the side bar under "General settings", select "App clients", add a client
- Make sure you select "Generate client secret"
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
- Make sure you select "Generate client secret"
- Make sure you select "Generate client secret."

3. Select the user pools you want Spinnaker to use.
4. At the side bar under "General settings", select "App clients", add a client
- Make sure you select "Generate client secret"
5. After that go to "App integration", then to "App client settings"
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
5. After that go to "App integration", then to "App client settings"
5. After that go to "App integration," then to "App client settings."

4. At the side bar under "General settings", select "App clients", add a client
- Make sure you select "Generate client secret"
5. After that go to "App integration", then to "App client settings"
- Select "Cognito User Pool" as one of the "Enabled Identity Providers"
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
- Select "Cognito User Pool" as one of the "Enabled Identity Providers"
- Select "Cognito User Pool" as one of the "Enabled Identity Providers."

- Make sure you select "Generate client secret"
5. After that go to "App integration", then to "App client settings"
- Select "Cognito User Pool" as one of the "Enabled Identity Providers"
- Input your callback url
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
- Input your callback url
- Input your callback URL.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Periods for all these that are complete sentences.

- email, openid
- Also make sure you already have a domain name for your hosted UI

You should have these credentials ready before moving on to the next step
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
You should have these credentials ready before moving on to the next step
Have these credentials ready before moving on to the next step


## Configure Halyard

You may configure Halyard either with the CLI or by manually editing the hal config.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
You may configure Halyard either with the CLI or by manually editing the hal config.
You can configure Halyard either with the [CLI](/reference/halyard/commands/) or by manually editing the hal config.


### CLI

Set up OAuth 2.0 with AWS Cognito:
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
Set up OAuth 2.0 with AWS Cognito:
1. Set up OAuth 2.0 with AWS Cognito:


`hal config security authn oauth2 edit --provider OTHER --client-id (client ID from above) --client-secret (client secret from above) --access-token-uri (your domain name)/oauth2/token --user-authorization-uri (your domain name)/oauth2/authorize --user-info-uri (your domain name)/oauth2/userInfo`

Now enable OAuth 2.0 using hal:
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
Now enable OAuth 2.0 using hal:
Enable OAuth 2.0:

@dorbin
Copy link
Contributor

dorbin commented Aug 31, 2020

@clareliguori

@clareliguori
Copy link
Member

@dorbin I don't have much knowledge about Cognito, so this LGTM

@joetancy
Copy link
Author

Thank you for the suggested changes @dorbin, all changes have been committed!

@dorbin
Copy link
Contributor

dorbin commented Sep 15, 2020

@spinnaker/sig-aws
Hoping anyone in the SIG knows anything about Cognito. :) If so, can you review?

4. At the side bar under "General settings", select "App clients", add a client.
- Make sure you select "Generate client secret."
5. After that go to "App integration", then to "App client settings."
a) Select "Cognito User Pool" as one of the "Enabled Identity Providers."
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@joetancy I don't know if you've set yourself up to preview your changes, but these substeps might not resolve the way you want them to. If you are previewing, and this looks ok, then ignore this comment.

But Markdown usually wants sub steps to start with 1. , just like the first-level steps. And the indentation causes Markdown to give them letters instead of numbers.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

apologies, fixed in the next commit!

@joetancy joetancy requested a review from dorbin October 15, 2020 09:03
Copy link
Contributor

@dorbin dorbin left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

A few more comments, Joe.

Still would like someone to do a technical review. @robzienert , you? Or do you know who might know? Thanks.

1. Navigate to [https://aws.amazon.com/cognito/](https://aws.amazon.com/cognito/) and log in with your AWS credentials.
2. Search for Cognito in the search bar.
3. Select the user pools you want Spinnaker to use.
4. At the side bar under "General settings", select "App clients", add a client.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
4. At the side bar under "General settings", select "App clients", add a client.
4. At the side bar under **General settings**, select **App clients**, add a client.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sorry, @joetancy, I should have done this the last time I looked at this. Can you change all UI elements to be in boldface instead of double-quotes? Thanks!

https://developers.google.com/style/ui-elements

5. After that go to "App integration", then to "App client settings."
- Select "Cognito User Pool" as one of the "Enabled Identity Providers."
- Input your callback URL.
- Check the following
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
- Check the following
- Check the following:

- Check the following
- Authorization code grant, Implicit grant
- email, openid
- Also make sure you already have a domain name for your hosted UI
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
- Also make sure you already have a domain name for your hosted UI
- Also make sure you already have a domain name for your hosted UI.

- email, openid
- Also make sure you already have a domain name for your hosted UI

Have these credentials ready before moving on to the next step
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
Have these credentials ready before moving on to the next step
Have these credentials ready before moving on to the next step:

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants