Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

📊Tracking: Cognito #6765

Closed
nija-at opened this issue Mar 17, 2020 · 8 comments
Closed

📊Tracking: Cognito #6765

nija-at opened this issue Mar 17, 2020 · 8 comments
Assignees
Labels
@aws-cdk/aws-cognito Related to Amazon Cognito management/tracking Issues that track a subject or multiple issues

Comments

@nija-at
Copy link
Contributor

nija-at commented Mar 17, 2020

Add your +1 👍 to help us prioritize high-level constructs for this service


Overview:

Amazon Cognito provides authentication, authorization, and user management for your web and mobile apps. Your users can sign in directly with a user name and password, or through a third party such as Facebook, Amazon, Google or Apple.

The two main components of Amazon Cognito are user pools and identity pools. User pools are user directories that provide sign-up and sign-in options for your app users. Identity pools enable you to grant your users access to other AWS services.

AWS Docs for User Pools

AWS Docs for Identity Pools

CDK API reference page

Maturity: Experimental

See the AWS Construct Library Module Lifecycle doc for more information about maturity levels.

Features & Support

User Pool

Done Item Needed for Graduation Link to issue or docs
✔️ initialization & import ✔️ construction & import
✔️ sign in & sign up configuration, auto verification ✔️ sign up & sign in
✔️ basic security (mfa, password policy, etc.) ✔️ security
✔️ standard and custom attributes ✔️ attributes
✔️ triggers ✔️ lambda triggers
✔️ app clients ✔️ app clients
✔️ domains ✔️ domains
users & groups ✔️
message template builder #6811
advanced security #7405
✔️ route53 integration with user pool domain ✔️ search for 'user pool domain' here
Simple Email Service integration #6768
identity providers ✔️ #6853
hosted UI customization #6953
risk configuration
resource server

Identity Pool

Done Item Needed for Graduation Link to issue or docs
initialization & import ✔️
public identity providers & access control ✔️
role mapping & mapping rules ✔️
OpenIdConnect & SAML and developer-authenticated identity providers

See the CDK API Reference for more implementation details.

Issues

All open Cognito issues can be found here


This is a 📊Tracking Issue

@nija-at nija-at added the management/tracking Issues that track a subject or multiple issues label Mar 17, 2020
@nija-at nija-at self-assigned this Mar 17, 2020
@nija-at nija-at added the @aws-cdk/aws-cognito Related to Amazon Cognito label Mar 17, 2020
@0xdevalias
Copy link
Contributor

0xdevalias commented Mar 19, 2020

Linking to the RFC for better discoverability:

Also, for anyone who needs it in the interim, i've been posting my workaround code snippets in aws/aws-cdk-rfcs#95 (comment)

@0xdevalias
Copy link
Contributor

Added a new issue for Hosted UI customisations: #6953

@markcarroll
Copy link

Added new issue #7011 for custom attributes which are currently set to immutable

@0xdevalias
Copy link
Contributor

0xdevalias commented Apr 1, 2020

This may need to be captured in a new issue, but should the UserPool have grant* methods on it to give other resources (eg. lambda functions) access to various API/SDK methods?

Captured in #7112

References, Examples, Code Samples, etc

CDK

Cognito

Policies

eg.

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Sid": "Stmt1585721272022",
      "Action": [
        "cognito-idp:AdminDisableUser",
        "cognito-idp:AdminEnableUser",
        "cognito-idp:AdminGetUser"
      ],
      "Effect": "Allow",
      "Resource": "arn:aws:cognito-idp:${userPool.stack.region}:${userPool.stack.account}:userpool/${userPool.userPoolId}"
    }
  ]
}
import { UserPool } from '@aws-cdk/aws-cognito'
import { Effect, PolicyStatement } from '@aws-cdk/aws-iam'

// ..snip..

    /**
     * Lookup authentication UserPool
     */
    const userPool = UserPool.fromUserPoolId(this, 'UserPool', userPoolId)

// ..snip..

    fnHandler.addToRolePolicy(
      new PolicyStatement({
        effect: Effect.ALLOW,
        actions: [
          'cognito-idp:AdminGetUser',
          'cognito-idp:AdminEnableUser',
          'cognito-idp:AdminDisableUser',
          // etc
        ],
        resources: [
          `arn:aws:cognito-idp:${userPool.stack.region}:${userPool.stack.account}:userpool/${userPool.userPoolId}`,
        ],
      })
    )

@nija-at
Copy link
Contributor Author

nija-at commented Apr 1, 2020

@0xdevalias - please open a new issue for this request. Thanks!

@brainstorm
Copy link

Added new issue for some UserPool attributes that are present on the Web Console (post deploy) but that I'm not able to reach via CDK (Java): #7245

brainstorm added a commit to umccr/igv that referenced this issue Apr 8, 2020
…om CDK 1.26.0, but apparently there are a few rough corners to fix still according to CDK tracking issue aws/aws-cdk#6765
@brainstorm
Copy link

"Advanced security" is in issue #7405 (to be added on the summary above).

@nija-at
Copy link
Contributor Author

nija-at commented Jun 19, 2020

This has been forked into two separate tracking issues - one tracking user pools and the other tracking identity pools.

Please transfer your upvotes (👍) to the respective issues, so we know which one of the two you're interested in.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
@aws-cdk/aws-cognito Related to Amazon Cognito management/tracking Issues that track a subject or multiple issues
Projects
None yet
Development

No branches or pull requests

4 participants