嗨,我需要AWS cognito javascript API示例,它将返回与帐户关联的用户池列表.2.创建一个新的用户池.我搜索了大部分文档,但无法找到任何相关答案.任何人都可以请指向我链接/文章或帮助我在这里提供示例代码.
javascript amazon-web-services node.js amazon-cognito aws-sdk
我正在使用下面的代码为用户注册 Amazon Cognito。然后,我想在用户注册时将文件上传到 Amazon S3 存储桶。
用户注册后,我需要做什么来配置准备上传的存储桶?谢谢
var roleArn = 'arn:aws:iam::123456:role/Cognito_Auth_Role';
var bucketName = 'MY_BUCKET';
AWS.config.region = 'eu-west-1';
var poolData = {
UserPoolId : 'POOL_ID', // your user pool id here
ClientId : 'CLIENT_ID' // your app client id here
};
var userPool = new AWSCognito.CognitoIdentityServiceProvider.CognitoUserPool(poolData);
var userData = {
Username : 'username', // your username here
Pool : userPool
};
var attributeList = [];
var password
//Create Bucket
var bucket = new AWS.S3({
params: {
Bucket: bucketName
}
}); …Run Code Online (Sandbox Code Playgroud) 我在使用 AWS cognito 进行注册时遇到 NotAuthorizedException。谁能帮我解决这个问题。
CognitoUserAttributes userAttributes = new CognitoUserAttributes();
userAttributes.addAttribute("FullName", fullName.getText().toString());
userPool.signUpInBackground(emailId.getText().toString(), password.getText().toString(), userAttributes, null, signUpHandler);
Run Code Online (Sandbox Code Playgroud)
但是,我面临以下异常:客户端试图写入未经授权的属性(Service: AmazonCognitoIdentityProvider; Status Code: 400; Error Code: NotAuthorizedException; Request ID: XXX-XXXX )
我正在使用aws cli命令来修改UI.
aws cognito-idp set-ui-customization --user-pool-id us-west-2_XXXXXXX --client-id ALL --css ".submitButton-customizable{background-color: #0091e1;} " --region us-west-2 --image-file Logo.png
Run Code Online (Sandbox Code Playgroud)
但它给我一个错误,我的PNG文件无效.
我看过文档,发现图像文件应该有文件格式 Base64-encoded binary data object
我正在使用Linux Instance(Ubuntu)并从终端运行此命令.
我怎么能纠正这个?
我正在使用 React Native、Expo 和 React Navigation 创建一个应用程序,但我不知道传递 props 和函数的正确方法。
我已经复制了我将在其上构建的导航器的 Expo 方法,但现在我只有 App.js 调用以下 AppNavigator -> MainSwitchNavigator -> HomeScreen
然后,我使用带有身份验证器的 Amazon AWS Amplify HOC 包装了 Expo 期望的主要导出应用程序。现在我可以使用亚马逊的 Cognito 服务登录到我的应用程序并安全地显示 hello world。
如果我想注销,我可以使用我目前在 App 的道具上使用的注销功能。
class App extends React.Component {
constructor(props) {
super(props);
this.signOut = this.signOut.bind(this);
}
signOut() {
Auth.signOut().then(() => {
this.props.onStateChange('signedOut', null);
console.log("signed out");
}).catch(e => {
console.log(e);
});
}
render () {
return (
<View style={styles.container}>
<AppNavigator screenProps={{
signOut: () => {this.signOut}
}}/>
</View>
);
}
}
export …Run Code Online (Sandbox Code Playgroud) 我花了两天时间谷歌搜索解决方案。但未能找到合适的解决方案。我收到以下信息。
Cognito Identity pool ids:
INT: "us-east-1:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
CRT: "us-east-1:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
PSS: "us-east-1:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
PREPROD: "us-east-1:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
PROD: "us-east-1:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
Api url : https://xxxxxxxxxxxxxxxx.appsync-api.us-east-2.amazonaws.com/graphql
Api id : 63xxxxxxxxxxxxxxxxxx
Appsync name : TheAppSyncName
Authorization mechanism : IAM auth
Run Code Online (Sandbox Code Playgroud)
我发现在 Android 中有几种不同的方法可以做到这一点,https://github.com/awslabs/aws-mobile-appsync-sdk-android
但找不到 .net c# AWS sdk 的示例。
有人可以解释一下上述值的含义以及如何使用它来调用 .net C# 中的 graphql API 吗?
更新:经过多次尝试,我最终没有任何解决方案。然后我发现 appsync 不能与 c# .net 中的给定信息一起使用。除了上述内容之外,我还获得了 AWS 帐号和未经身份验证的角色 ARN。
我一直在尝试使用 AWS Cognito & API Gateway & Lambda (Python) 实施无密码身份验证
我关注了这些文章: https://medium.com/digicred/password-less-authentication-in-cognito-cafa016d4db7 https://medium.com/@pjatocheseminario/passwordless-api-using-cognito-and-serverless-框架-7fa952191352
我已配置 Cognito(以接受 CUSTOM_AUTH)、添加 Lambda 并创建 API 端点:
/sign-up
/initiate-auth (aka initiate login)
/respond-to-auth-challenge (aka (verify login)
Run Code Online (Sandbox Code Playgroud)
调用 initiateAuth 时,我收到以下响应:调用 InitiateAuth 操作时发生错误 (NotAuthorizedException):用户名或密码不正确。”
我使用的是不需要密码的 CUSTOM_AUTH,并且用户名绝对正确,因为它实际上启动了身份验证流程并且我收到了代码,但是由于 boto3 不响应会话,我无法继续身份验证。
我就是这样称呼 Cognito 的:
res = cognito.initiate_auth(
ClientId=client_id,
AuthFlow="CUSTOM_AUTH",
AuthParameters={
"USERNAME": email,
"PASSWORD": random_password
}
)
Run Code Online (Sandbox Code Playgroud)
这可能是我遗漏的一些小东西,但我不知道是什么。
下面是代码:
AnonymousAWSCredentials awsCreds = new AnonymousAWSCredentials();
AWSCognitoIdentityProvider provider = AWSCognitoIdentityProviderClientBuilder.standard()
.withCredentials(new AWSStaticCredentialsProvider(awsCreds))
.withRegion(//region)
.build();
AdminInitiateAuthRequest authRequest = new AdminInitiateAuthRequest()
.withAuthFlow(AuthFlowType.USER_PASSWORD_AUTH)
.withClientId("")
.withUserPoolId("")
.withAuthParameters(map);
Map<String,String> map = new HashMap<>();
map.put("USERNAME","");
map.put("PASSWORD","");
Run Code Online (Sandbox Code Playgroud)
这里的地图将有用户名和密码。
有人可以帮助了解如何在 Java 中配置身份验证以生成 id 令牌和访问令牌吗?提前致谢!!
java authentication access-keys amazon-cognito aws-userpools
我已经在 中创建了一个用户池Cognito。
我想做的是,当新用户尝试使用 UI 注册时,他会收到验证码。用户输入代码后,Post confirmation必须触发 lambda,并且必须将这个新创建的用户直接添加到名为 的组中users。
我找到了admin_add_user_to_group客户端并编写了以下代码并将其部署为 lambda:
import boto3
import hmac
import hashlib
import base64
USER_POOL_ID = ''
CLIENT_ID = ''
CLIENT_SECRET = ''
def lambda_handler(event, context):
client = boto3.client('cognito-idp')
try:
username = event['username']
response = client.admin_add_user_to_group(
UserPoolId=USER_POOL_ID,
Username=username,
GroupName='users'
)
except client.exceptions.InvalidParameterException:
return {"error": True, "success": False, "message": "Username doesnt exists"}
except client.exceptions.ResourceNotFoundException:
return {"error": True, "success": False, "message": "Invalid Verification code"}
except client.exceptions.NotAuthorizedException:
return {"error": True, "success": …Run Code Online (Sandbox Code Playgroud) amazon-web-services python-3.x amazon-cognito aws-lambda amazon-cognito-triggers
java ×2
javascript ×2
.net-core ×1
access-keys ×1
amazon-s3 ×1
android ×1
api ×1
aws-appsync ×1
aws-lambda ×1
aws-sdk ×1
blob ×1
boto3 ×1
c# ×1
expo ×1
graphql ×1
node.js ×1
png ×1
python ×1
python-3.x ×1
react-native ×1
shell ×1