我正在尝试使用 AWS Cognito 来帮助支持我的应用程序中的多租户。
\n\nhttps://aws.amazon.com/blogs/apn/managing-saas-users-with-amazon-cognito/
\n\n\n\n\n配置用户池
\n\n假设您要将单个用户池与每个租户关联,\n 您需要引入配置自动化,以在注册过程中创建\n租户\xe2\x80\x99s 用户池。这还需要自动化配置 Amazon Cognito 的所有其他移动部分,以声明用户池并将其与其他 Amazon Cognito 构造和安全策略关联。
\n\n这里的基本步骤是首先为租户创建用户池并应用任何特定于租户的自定义或策略(这些通常对于所有租户都是相同的)。然后,您\xe2\x80\x99d 需要自动化来预配和配置身份池。最后,您\xe2\x80\x99d\n 必须将身份池与新创建的用户池相关联。\n 该过程比这更复杂,但这些是您需要牢记的关键\n 概念当您考虑如何将此自动化添加到租户创建生命周期时。
\n\nAWS 提供了一系列 API,您可以使用它们来实施\n 预配自动化模型。这些 API 可用于多种不同的语言和环境。
\n
到目前为止,我已经能够使用 SDK 来创建许多零散的部分,但我正在createIdentityPool ()特别努力CognitoIdentityProviders\n文档指出 CognitoIdentityProviders 应包含...
\n\n\nProviderName \xe2\x80\x94 (字符串)Amazon Cognito\n 身份用户池的提供商名称。例如,\n cognito-idp.us-east-1.amazonaws.com/us-east-1_123456789。
\n\nClientId \xe2\x80\x94 (字符串)Amazon Cognito Identity 用户池的客户端 ID。
\n\nServerSideTokenCheck \xe2\x80\x94 (布尔值) 如果为身份提供者\xe2\x80\x99s 令牌启用了服务器端令牌验证\n,则为 TRUE。
\n
我应该从哪里ProviderName出发ClientId?
createUserPool()我有变量保存从和返回的值createUserPoolClient(),但看不到其中任何适合的内容。 …
我正在尝试从CloudFormation中创建的堆栈中导出DynamoDb StreamArn,然后使用serverless.yml中的!ImportValue引用导出.
但我收到此错误消息:
unknown tag !<!ImportValue> in "/codebuild/output/src/serverless.yml"
Run Code Online (Sandbox Code Playgroud)
cloudformation和serverless.yml定义如下.任何帮助赞赏.
StackA.yml
AWSTemplateFormatVersion: 2010-09-09
Description: Resources for the registration site
Resources:
ClientTable:
Type: AWS::DynamoDB::Table
DeletionPolicy: Retain
Properties:
TableName: client
AttributeDefinitions:
- AttributeName: id
AttributeType: S
KeySchema:
- AttributeName: id
KeyType: HASH
ProvisionedThroughput:
ReadCapacityUnits: 2
WriteCapacityUnits: 2
StreamSpecification:
StreamViewType: NEW_AND_OLD_IMAGES
Outputs:
ClientTableStreamArn:
Description: The ARN for My ClientTable Stream
Value: !GetAtt ClientTable.StreamArn
Export:
Name: my-client-table-stream-arn
Run Code Online (Sandbox Code Playgroud)
serverless.yml
service: my-service
frameworkVersion: ">=1.1.0 <2.0.0"
provider:
name: aws
runtime: nodejs6.10
iamRoleStatements:
- Effect: Allow
Action:
- dynamodb:DescribeStream …Run Code Online (Sandbox Code Playgroud) 我已经尝试在我的类中放入一个无法编译的箭头函数.
我读过我应该安装https://www.npmjs.com/package/babel-plugin-transform-class-properties
现在我收到了错误:
模块构建失败:错误:无法找到相对于目录"/ home/luke/Documents/myProject"的预设"transform-class-properties"
我已经尝试过这些帖子中提出的解决方案(和其他人)
Webpack + Babel:无法找到相对于目录的预设"es2015"
我目前的设置如下:
/app/components/App.js
import React from 'react'
import { Switch, Route, BrowserRouter as Router } from 'react-router-dom'
class App extends React.Component{
sayHello = name => `Hello ${name}!`
render(){
return(
<Router>
<div >
...
</div>
</Router>
)
}
}
export default App
Run Code Online (Sandbox Code Playgroud)
/package.json
{
"name": "um-web",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"start": "webpack-dev-server --open",
"build": "NODE_ENV='production' webpack -p"
},
"babel": {
"presets": [
"env",
"react",
"es2015",
"transform-class-properties"
] …Run Code Online (Sandbox Code Playgroud)