Amazon Cognito
์ตœ์ƒ๊ธฐ
sanggi.choi@gmail.com
Amazon Cognito
โ€ข Amazon Cognito๋Š” ๊ฐ„ํŽธํ•œ ์‚ฌ์šฉ์ž ์ž๊ฒฉ ์ฆ๋ช… ๋ฐ ๋ฐ์ดํ„ฐ ๋™๊ธฐํ™” ์„œ๋น„์Šค๋กœ, ์‚ฌ์šฉ์ž์˜ ์•ฑ ๋ฐ
์ดํ„ฐ๋ฅผ ๋‹ค์–‘ํ•œ ๋ชจ๋ฐ”์ผ ๋””๋ฐ”์ด์Šค ๊ฐ„์— ์•ˆ์ „ํ•˜๊ฒŒ ๊ด€๋ฆฌํ•˜๊ณ  ๋™๊ธฐํ™”ํ•  ์ˆ˜ ์žˆ๋„๋ก ์ง€์›ํ•˜๊ณ ,
๋‹ค์–‘ํ•œ ํผ๋ธ”๋ฆญ ๋กœ๊ทธ์ธ ๊ณต๊ธ‰์ž(Amazon, Facebook, Google)๋ฅผ ํ†ตํ•ด ์‚ฌ์šฉ์ž์— ๋Œ€ํ•œ ๊ณ ์œ 
์ž๊ฒฉ ์ฆ๋ช…์„ ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ ์ธ์ฆ๋˜์ง€ ์•Š์€ ๊ฒŒ์ŠคํŠธ๋„ ์ง€์›ํ•œ๋‹ค.
โ€ข ์‚ฌ์šฉ์ž์˜ ๋””๋ฐ”์ด์Šค์— ๋กœ์ปฌ๋กœ ์•ฑ ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•˜์—ฌ ๋””๋ฐ”์ด์Šค๊ฐ€ ์˜คํ”„๋ผ์ธ ์ƒํƒœ์—์„œ๋„ ์• 
ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์ž‘๋™ํ•˜๋„๋ก ํ•  ์ˆ˜ ์žˆ๊ณ , Amazon Cognito๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๋ฐฑ์—”๋“œ ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑ
ํ•˜๊ฑฐ๋‚˜ ์ธํ”„๋ผ๋ฅผ ๊ด€๋ฆฌํ•˜์ง€ ์•Š์•„๋„ ์•ฑ ํ™˜๊ฒฝ ์„ค์ •์ด๋‚˜ ๊ฒŒ์ž„ ์ƒํƒœ ๊ฐ™์€ ๋ชจ๋“  ์ข…๋ฅ˜์˜ ๋ฐ์ดํ„ฐ
๋ฅผ AWS ํด๋ผ์šฐ๋“œ์— ์ €์žฅํ•  ์ˆ˜ ์žˆ๋‹ค. ์ฆ‰, ์ž๊ฒฉ ์ฆ๋ช… ๊ด€๋ฆฌ, ๋„คํŠธ์›Œํฌ ์ƒํƒœ, ์Šคํ† ๋ฆฌ์ง€, ๋™๊ธฐํ™”
๋ฅผ ์ฒ˜๋ฆฌํ•  ๋ฐฑ์—”๋“œ ์†”๋ฃจ์…˜์„ ๊ตฌ์ถ•ํ•˜๊ฑฐ๋‚˜ ๊ด€๋ฆฌํ•  ๊ฑฑ์ • ์—†์ด ์ตœ์ƒ์˜ ์•ฑ ํ™˜๊ฒฝ์„ ์ œ์ž‘ํ•˜๋Š” ๋ฐ
์ฃผ๋ ฅํ•  ์ˆ˜ ์žˆ๋‹ค.
Amazon Cognito
โ€ข Amazon Cognito Identity(์ด๊ฒƒ์„ ์œ„์ฃผ๋กœ ํ™•์ธ)
โ€ข ๋ชจ๋ฐ”์ผ Device ๋ฐ ๊ธฐํƒ€ ์‹ ๋ขฐํ•  ์ˆ˜ ์—†๋Š” ํ™˜๊ฒฝ์—์„œ ์ž„์‹œ ์ž๊ฒฉ ์ฆ๋ช…
์„ ์ œ๊ณตํ•˜๋Š” ์„œ๋น„์Šค์ž„. ์ฆ‰, Device๋ฅผ ๊ณ ์œ ํ•˜๊ฒŒ ์‹๋ณ„ํ•˜๊ณ 
Application ์ˆ˜๋ช… ๋™์•ˆ ์ผ๊ด€๋œ Identity๋ฅผ ์ œ๊ณตํ•œ๋‹ค.
โ€ข Amazon Cognito Sync
โ€ข ์—ฌ๋Ÿฌ ์žฅ์น˜ ์‚ฌ์ด์˜ Data ๋™๊ธฐํ™” ์„œ๋น„์Šค๋ฅผ ์ œ๊ณตํ•œ๋‹ค.
Amazon Cognito Identity
โ€ข Identity Pool
โ€ข Identity Pool์€ ํŠน์ • ์‚ฌ์šฉ์ž ID Data์— ๋Œ€ํ•œ ์ €์žฅ์†Œ ์ด๋‹ค.
โ€ข Authenticated and Unauthenticated Identities
โ€ข Cognito๋Š” ์ธ์ฆ๊ณผ ๋ฏธ์ธ์ฆ๋œ Identity๋ฅผ ๋ชจ๋‘ ์ œ๊ณต ํ•œ๋‹ค.
โ€ข ์ธ์ฆ๋œ Identity๋Š” Amazon, Facebook, Google ํ˜น์€ ์‚ฌ์šฉ์ž์— ์˜ํ•ด์„œ ์ •์˜๋œ ์ธ์ฆ ์‹œ์Šคํ…œ์—์„œ ์ธ์ฆ๋œ Identity๋ฅผ
์˜๋ฏธ ํ•œ๋‹ค.
โ€ข ๋ฏธ ์ธ์ฆ๋œ Identity๋Š” ์ธ์ฆ ์‹œ์Šคํ…œ์œผ๋กœ ์ธ์ฆ๋˜์ง€ ์•Š์€ Guest User์™€ ๊ฐ™์€ Identity๋ฅผ ์˜๋ฏธ ํ•œ๋‹ค.
โ€ข User IAM Roles
โ€ข IAM๋กœ Role๋กœ ์ธ์ฆ ๋ฐ ์ธ์ฆ๋˜์ง€ ์•Š์€ ์‚ฌ์šฉ์ž์—๊ฒŒ ์„œ๋กœ ๋‹ค๋ฅธ ๊ถŒํ•œ์„ ๋ถ€์—ฌํ•  ์ˆ˜ ์žˆ๋‹ค.
External Provider Authflow
Enhanced(Simplified) Authflow
- iOS, Android, JS, Unity
Basic(Classic) Authflow
Developer Authenticated Identities
Authflow
Enhanced Authflow
- iOS, Android, JS, Unity
Basic Authflow
IAM Roles
โ€ข ์‚ฌ์šฉ์ž๊ฐ€ ์•ฑ์— ๋กœ๊ทธ์ธ ํ•˜๋ฉด, Aamazon Cognito์—์„œ๋Š” ์‚ฌ์šฉ์ž
์ž„์‹œ AWS Credentials ์ƒ์„ฑํ•˜๊ณ , ์ด ์ž„์‹œ AWS Credentials์€ ํŠน
์ • IAM Role๊ณผ ์—ฐ๊ฒฐ ๋˜์–ด ์žˆ๋‹ค.
โ€ข ์•ฑ์—์„œ IAM Role์— ์ •์˜๋œ Policy์— ๋”ฐ๋ผ AWS Resource์— ์ ‘๊ทผ
์„ ํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋œ๋‹ค.
IAM Roles
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "Stmt1433917894000",
"Effect": "Allow",
"Action": ["kinesis:PutRecord", "kinesis:PutRecords"],
"Resource": [
"arn:aws:kinesis:us-west-2:account-id:stream/SampleKinesisStreamโ€œ
]
}
]
}
Role Trusted and Permissions
{
"Statement": [ {
"Effect": "Allow",
"Principal": {
"Federated": "cognito-identity.amazonaws.com"
},
"Action": "sts:AssumeRoleWithWebIdentity",
"Condition": {
"StringEquals": {
"cognito-identity.amazonaws.com:aud": "us-east-1:12345678-e-123456790ab"
},
"ForAnyValue:StringLike": {
"cognito-identity.amazonaws.com:amr": "unauthenticated"
}
}
} ]
}
Limits in Cognito Identity
Max number of identity pools per account 60
Max number of identities per identity pool Unlimited
Max character length for identity pool name 128 bytes
Max character length for login provider name 2048 bytes
Max number of results from a single List/Lookup API call 60
AWS Security Token Service
โ€ข AWS Resource์— ์ผ์‹œ์ ์œผ๋กœ ์‚ฌ์šฉํ•  Token์„ ๋ฐœ๊ธ‰ํ•ด ์ฃผ๋Š” ์„œ๋น„์Šค ์ด๋‹ค.
โ€ข GetSessionToken
โ€ข IAM ์‚ฌ์šฉ์ž์˜ ์ž„์‹œ ์ ‘๊ทผ ๊ถŒํ•œ์„ ์ทจ๋“ํ•˜๊ธฐ ์œ„ํ•œ API
โ€ข AssumeRoleWithWebIdentity
โ€ข Web Identity Provider(Amazon Cognito, Facebook, Google, OpenID)๋กœ ์ธ์ฆ๋œ ์‚ฌ์šฉ
์ž์˜ mobile์ด๋‚˜ web app์— ์ž„์‹œ ๋ณด์•ˆ ์ฆ๋ช…์„œ๋ฅผ ๋ฐ˜ํ™˜
โ€ข ๋‚˜๋จธ์ง€๋Š” ์•„๋ž˜ ๋งํฌ๋ฅผ ์ฐธ๊ณ 
โ€ข http://docs.aws.amazon.com/STS/latest/APIReference/API_Operations.html
Amazon Cognito Authentication ์™€ STS
Web Identity Federation ๊ด€๊ณ„
โ€ข STS์—์„œ ์ œ๊ณตํ•˜๋Š” AssumeRoleWithWebIdentity๋Š” ์‚ฌ์šฉ์ž์— ๋Œ€ํ•œ ์™ธ๋ถ€
IDP(Amazon, Facebook, Google, or any other OpenID Connect (OIDC)) ์—ฐ๋™์ด
ํ•„์ˆ˜ ์ ์ด๋‹ค.
โ€ข STS Web Identity Federation์˜ IDP๋กœ Amazon Cognito๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์™ธ๋ถ€ IDP ๋ฟ
๋งŒ ์•„๋‹ˆ๋ผ ๊ฐœ๋ฐœ์ž ์ธ์ฆ ์„œ๋ฒ„๋ฅผ ํ†ตํ•œ ์‚ฌ์šฉ์ž ์ธ์ฆ๊ณผ guest ๋ชจ๋“œ๊นŒ์ง€ ์ฒ˜๋ฆฌ๊ฐ€ ๊ฐ€๋Šฅ
ํ•˜๊ฒŒ ๋œ๋‹ค. ๊ฒฐ๊ณผ์ ์œผ๋กœ Amazon Cognito๋Š” STS์˜ Web Identity Federation์„ ๋ณด
๋‹ค ํšจ๊ณผ์ ์œผ๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋„๋ก ๋ณด์™„์„ ํ•ด ์ฃผ๋Š” ์—ญํ• ์„ ํ•œ๋‹ค๊ณ  ๋ณผ ์ˆ˜ ์žˆ๋‹ค.
Reference
โ€ข https://mobile.awsblog.com/post/Tx2UQN4KWI6GDJL/Understanding-Amazon-Cognito-
Authentication
โ€ข http://mobile.awsblog.com/post/Tx2FL1QAPDE0UAH/Understanding-Amazon-Cognito-
Authentication-Part-2-Developer-Authenticated-Ident
โ€ข http://mobile.awsblog.com/post/Tx1OSMBRHZVM9V0/Understanding-Amazon-
Cognito-Authentication-Part-3-Roles-and-Policies
โ€ข http://mobile.awsblog.com/post/Tx2323YHCM0I7OO/Understanding-Amazon-Cognito-
Authentication-Part-4-Enhanced-Flow
โ€ข http://mobile.awsblog.com/post/Tx1YVAQ4NZKBWF5/Amazon-Cognito-Announcing-
Developer-Authenticated-Identities
โ€ข https://mobile.awsblog.com/post/Tx3E3NJURV1LNV1/Integrating-Amazon-Cognito-
using-developer-authenticated-identities-An-end-to-en
โ€ข https://github.com/awslabs/amazon-cognito-developer-authentication-sample
โ€ข http://blogs.aws.amazon.com//application-management/post/TxB4F4QKTOC9HG/Build-
and-Deploy-a-Federated-Web-Identity-application-with-AWS-Elastic-Beanstalk

Amazon Cognito

  • 1.
  • 2.
    Amazon Cognito โ€ข AmazonCognito๋Š” ๊ฐ„ํŽธํ•œ ์‚ฌ์šฉ์ž ์ž๊ฒฉ ์ฆ๋ช… ๋ฐ ๋ฐ์ดํ„ฐ ๋™๊ธฐํ™” ์„œ๋น„์Šค๋กœ, ์‚ฌ์šฉ์ž์˜ ์•ฑ ๋ฐ ์ดํ„ฐ๋ฅผ ๋‹ค์–‘ํ•œ ๋ชจ๋ฐ”์ผ ๋””๋ฐ”์ด์Šค ๊ฐ„์— ์•ˆ์ „ํ•˜๊ฒŒ ๊ด€๋ฆฌํ•˜๊ณ  ๋™๊ธฐํ™”ํ•  ์ˆ˜ ์žˆ๋„๋ก ์ง€์›ํ•˜๊ณ , ๋‹ค์–‘ํ•œ ํผ๋ธ”๋ฆญ ๋กœ๊ทธ์ธ ๊ณต๊ธ‰์ž(Amazon, Facebook, Google)๋ฅผ ํ†ตํ•ด ์‚ฌ์šฉ์ž์— ๋Œ€ํ•œ ๊ณ ์œ  ์ž๊ฒฉ ์ฆ๋ช…์„ ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ ์ธ์ฆ๋˜์ง€ ์•Š์€ ๊ฒŒ์ŠคํŠธ๋„ ์ง€์›ํ•œ๋‹ค. โ€ข ์‚ฌ์šฉ์ž์˜ ๋””๋ฐ”์ด์Šค์— ๋กœ์ปฌ๋กœ ์•ฑ ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•˜์—ฌ ๋””๋ฐ”์ด์Šค๊ฐ€ ์˜คํ”„๋ผ์ธ ์ƒํƒœ์—์„œ๋„ ์•  ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์ž‘๋™ํ•˜๋„๋ก ํ•  ์ˆ˜ ์žˆ๊ณ , Amazon Cognito๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๋ฐฑ์—”๋“œ ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑ ํ•˜๊ฑฐ๋‚˜ ์ธํ”„๋ผ๋ฅผ ๊ด€๋ฆฌํ•˜์ง€ ์•Š์•„๋„ ์•ฑ ํ™˜๊ฒฝ ์„ค์ •์ด๋‚˜ ๊ฒŒ์ž„ ์ƒํƒœ ๊ฐ™์€ ๋ชจ๋“  ์ข…๋ฅ˜์˜ ๋ฐ์ดํ„ฐ ๋ฅผ AWS ํด๋ผ์šฐ๋“œ์— ์ €์žฅํ•  ์ˆ˜ ์žˆ๋‹ค. ์ฆ‰, ์ž๊ฒฉ ์ฆ๋ช… ๊ด€๋ฆฌ, ๋„คํŠธ์›Œํฌ ์ƒํƒœ, ์Šคํ† ๋ฆฌ์ง€, ๋™๊ธฐํ™” ๋ฅผ ์ฒ˜๋ฆฌํ•  ๋ฐฑ์—”๋“œ ์†”๋ฃจ์…˜์„ ๊ตฌ์ถ•ํ•˜๊ฑฐ๋‚˜ ๊ด€๋ฆฌํ•  ๊ฑฑ์ • ์—†์ด ์ตœ์ƒ์˜ ์•ฑ ํ™˜๊ฒฝ์„ ์ œ์ž‘ํ•˜๋Š” ๋ฐ ์ฃผ๋ ฅํ•  ์ˆ˜ ์žˆ๋‹ค.
  • 3.
    Amazon Cognito โ€ข AmazonCognito Identity(์ด๊ฒƒ์„ ์œ„์ฃผ๋กœ ํ™•์ธ) โ€ข ๋ชจ๋ฐ”์ผ Device ๋ฐ ๊ธฐํƒ€ ์‹ ๋ขฐํ•  ์ˆ˜ ์—†๋Š” ํ™˜๊ฒฝ์—์„œ ์ž„์‹œ ์ž๊ฒฉ ์ฆ๋ช… ์„ ์ œ๊ณตํ•˜๋Š” ์„œ๋น„์Šค์ž„. ์ฆ‰, Device๋ฅผ ๊ณ ์œ ํ•˜๊ฒŒ ์‹๋ณ„ํ•˜๊ณ  Application ์ˆ˜๋ช… ๋™์•ˆ ์ผ๊ด€๋œ Identity๋ฅผ ์ œ๊ณตํ•œ๋‹ค. โ€ข Amazon Cognito Sync โ€ข ์—ฌ๋Ÿฌ ์žฅ์น˜ ์‚ฌ์ด์˜ Data ๋™๊ธฐํ™” ์„œ๋น„์Šค๋ฅผ ์ œ๊ณตํ•œ๋‹ค.
  • 4.
    Amazon Cognito Identity โ€ขIdentity Pool โ€ข Identity Pool์€ ํŠน์ • ์‚ฌ์šฉ์ž ID Data์— ๋Œ€ํ•œ ์ €์žฅ์†Œ ์ด๋‹ค. โ€ข Authenticated and Unauthenticated Identities โ€ข Cognito๋Š” ์ธ์ฆ๊ณผ ๋ฏธ์ธ์ฆ๋œ Identity๋ฅผ ๋ชจ๋‘ ์ œ๊ณต ํ•œ๋‹ค. โ€ข ์ธ์ฆ๋œ Identity๋Š” Amazon, Facebook, Google ํ˜น์€ ์‚ฌ์šฉ์ž์— ์˜ํ•ด์„œ ์ •์˜๋œ ์ธ์ฆ ์‹œ์Šคํ…œ์—์„œ ์ธ์ฆ๋œ Identity๋ฅผ ์˜๋ฏธ ํ•œ๋‹ค. โ€ข ๋ฏธ ์ธ์ฆ๋œ Identity๋Š” ์ธ์ฆ ์‹œ์Šคํ…œ์œผ๋กœ ์ธ์ฆ๋˜์ง€ ์•Š์€ Guest User์™€ ๊ฐ™์€ Identity๋ฅผ ์˜๋ฏธ ํ•œ๋‹ค. โ€ข User IAM Roles โ€ข IAM๋กœ Role๋กœ ์ธ์ฆ ๋ฐ ์ธ์ฆ๋˜์ง€ ์•Š์€ ์‚ฌ์šฉ์ž์—๊ฒŒ ์„œ๋กœ ๋‹ค๋ฅธ ๊ถŒํ•œ์„ ๋ถ€์—ฌํ•  ์ˆ˜ ์žˆ๋‹ค.
  • 5.
    External Provider Authflow Enhanced(Simplified)Authflow - iOS, Android, JS, Unity Basic(Classic) Authflow
  • 6.
    Developer Authenticated Identities Authflow EnhancedAuthflow - iOS, Android, JS, Unity Basic Authflow
  • 7.
    IAM Roles โ€ข ์‚ฌ์šฉ์ž๊ฐ€์•ฑ์— ๋กœ๊ทธ์ธ ํ•˜๋ฉด, Aamazon Cognito์—์„œ๋Š” ์‚ฌ์šฉ์ž ์ž„์‹œ AWS Credentials ์ƒ์„ฑํ•˜๊ณ , ์ด ์ž„์‹œ AWS Credentials์€ ํŠน ์ • IAM Role๊ณผ ์—ฐ๊ฒฐ ๋˜์–ด ์žˆ๋‹ค. โ€ข ์•ฑ์—์„œ IAM Role์— ์ •์˜๋œ Policy์— ๋”ฐ๋ผ AWS Resource์— ์ ‘๊ทผ ์„ ํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋œ๋‹ค.
  • 8.
    IAM Roles { "Version": "2012-10-17", "Statement":[ { "Sid": "Stmt1433917894000", "Effect": "Allow", "Action": ["kinesis:PutRecord", "kinesis:PutRecords"], "Resource": [ "arn:aws:kinesis:us-west-2:account-id:stream/SampleKinesisStreamโ€œ ] } ] }
  • 9.
    Role Trusted andPermissions { "Statement": [ { "Effect": "Allow", "Principal": { "Federated": "cognito-identity.amazonaws.com" }, "Action": "sts:AssumeRoleWithWebIdentity", "Condition": { "StringEquals": { "cognito-identity.amazonaws.com:aud": "us-east-1:12345678-e-123456790ab" }, "ForAnyValue:StringLike": { "cognito-identity.amazonaws.com:amr": "unauthenticated" } } } ] }
  • 10.
    Limits in CognitoIdentity Max number of identity pools per account 60 Max number of identities per identity pool Unlimited Max character length for identity pool name 128 bytes Max character length for login provider name 2048 bytes Max number of results from a single List/Lookup API call 60
  • 11.
    AWS Security TokenService โ€ข AWS Resource์— ์ผ์‹œ์ ์œผ๋กœ ์‚ฌ์šฉํ•  Token์„ ๋ฐœ๊ธ‰ํ•ด ์ฃผ๋Š” ์„œ๋น„์Šค ์ด๋‹ค. โ€ข GetSessionToken โ€ข IAM ์‚ฌ์šฉ์ž์˜ ์ž„์‹œ ์ ‘๊ทผ ๊ถŒํ•œ์„ ์ทจ๋“ํ•˜๊ธฐ ์œ„ํ•œ API โ€ข AssumeRoleWithWebIdentity โ€ข Web Identity Provider(Amazon Cognito, Facebook, Google, OpenID)๋กœ ์ธ์ฆ๋œ ์‚ฌ์šฉ ์ž์˜ mobile์ด๋‚˜ web app์— ์ž„์‹œ ๋ณด์•ˆ ์ฆ๋ช…์„œ๋ฅผ ๋ฐ˜ํ™˜ โ€ข ๋‚˜๋จธ์ง€๋Š” ์•„๋ž˜ ๋งํฌ๋ฅผ ์ฐธ๊ณ  โ€ข http://docs.aws.amazon.com/STS/latest/APIReference/API_Operations.html
  • 12.
    Amazon Cognito Authentication์™€ STS Web Identity Federation ๊ด€๊ณ„ โ€ข STS์—์„œ ์ œ๊ณตํ•˜๋Š” AssumeRoleWithWebIdentity๋Š” ์‚ฌ์šฉ์ž์— ๋Œ€ํ•œ ์™ธ๋ถ€ IDP(Amazon, Facebook, Google, or any other OpenID Connect (OIDC)) ์—ฐ๋™์ด ํ•„์ˆ˜ ์ ์ด๋‹ค. โ€ข STS Web Identity Federation์˜ IDP๋กœ Amazon Cognito๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์™ธ๋ถ€ IDP ๋ฟ ๋งŒ ์•„๋‹ˆ๋ผ ๊ฐœ๋ฐœ์ž ์ธ์ฆ ์„œ๋ฒ„๋ฅผ ํ†ตํ•œ ์‚ฌ์šฉ์ž ์ธ์ฆ๊ณผ guest ๋ชจ๋“œ๊นŒ์ง€ ์ฒ˜๋ฆฌ๊ฐ€ ๊ฐ€๋Šฅ ํ•˜๊ฒŒ ๋œ๋‹ค. ๊ฒฐ๊ณผ์ ์œผ๋กœ Amazon Cognito๋Š” STS์˜ Web Identity Federation์„ ๋ณด ๋‹ค ํšจ๊ณผ์ ์œผ๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋„๋ก ๋ณด์™„์„ ํ•ด ์ฃผ๋Š” ์—ญํ• ์„ ํ•œ๋‹ค๊ณ  ๋ณผ ์ˆ˜ ์žˆ๋‹ค.
  • 13.
    Reference โ€ข https://mobile.awsblog.com/post/Tx2UQN4KWI6GDJL/Understanding-Amazon-Cognito- Authentication โ€ข http://mobile.awsblog.com/post/Tx2FL1QAPDE0UAH/Understanding-Amazon-Cognito- Authentication-Part-2-Developer-Authenticated-Ident โ€ขhttp://mobile.awsblog.com/post/Tx1OSMBRHZVM9V0/Understanding-Amazon- Cognito-Authentication-Part-3-Roles-and-Policies โ€ข http://mobile.awsblog.com/post/Tx2323YHCM0I7OO/Understanding-Amazon-Cognito- Authentication-Part-4-Enhanced-Flow โ€ข http://mobile.awsblog.com/post/Tx1YVAQ4NZKBWF5/Amazon-Cognito-Announcing- Developer-Authenticated-Identities โ€ข https://mobile.awsblog.com/post/Tx3E3NJURV1LNV1/Integrating-Amazon-Cognito- using-developer-authenticated-identities-An-end-to-en โ€ข https://github.com/awslabs/amazon-cognito-developer-authentication-sample โ€ข http://blogs.aws.amazon.com//application-management/post/TxB4F4QKTOC9HG/Build- and-Deploy-a-Federated-Web-Identity-application-with-AWS-Elastic-Beanstalk

Editor's Notes

  • #12ย http://www.slideshare.net/awskorea/20150109-aws-black-belt-iam-younjin
  • #13ย http://dev.classmethod.jp/cloud/aws/cognito-identity-and-sts-web-identity-federation/ http://dev.classmethod.jp/cloud/aws/iam-bestpractice-2/ http://dev.classmethod.jp/cloud/iam-roles-for-ec2-instances/ https://www.system-i-enter.com/blog/blog/2015/02/03/s3/ http://aws.typepad.com/aws_japan/amazon-cognito/ https://web-identity-federation-playground.s3.amazonaws.com/index.html