问题标签 [amazon-cognito]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - Android:无法执行 HTTP 请求无法解析主机
我正在尝试使用亚马逊提供的代码通过 Cognito 连接到 DynamoDb。我改变的只是应用程序特定的参数。
当我执行代码时,出现以下异常:com.amazonaws.AmazonClientException:无法执行 HTTP 请求:无法解析主机“cognito-identity.us-east-1.amazonaws.com”:没有与主机名关联的地址。
这个例外想从我这里得到什么?我会假设主机列表是亚马逊图书馆内部的。
谢谢你!
amazon-ec2 - 是否可以将 Amazon Cognito 与 LDAP 结合使用?
Amazon Cognito 支持 OPENID 身份验证和 OATH。是否可以使用 LDAP 代替对用户进行身份验证?
ios - iOS 应用中 Cognito 的动态 AuthRole
我目前正在考虑在我的 iOS 应用程序中实施 Cognito 解决方案。现在,我看到的唯一问题如下:
我有多个客户使用我的应用程序,每个客户都有自己的存储桶。我目前为这些存储桶中的每一个都有多个 IAM 角色。(保密)
当我查看 Cognito 时,似乎我必须对我希望我的用户在向我的存储桶发出请求时使用的 AuthRole 进行硬编码。从这个角度来看,我目前的结构不起作用,我不确定我是否需要一个可以访问(至少只是读取)我所有客户存储桶图像和视频的角色。
有没有办法解决这个问题?我看到的另一种可能性是,我创建了某种服务器,该服务器需要在我的 iOS 应用程序中使用一个基本的硬编码 AuthRole,并且根据用户参数,它为各自的存储桶和 ec2 实例返回各自的 AuthRole。这是应该考虑的事情吗?
请注意,我的所有客户都有一个 iOS。
谢谢!
注意#2:我尝试查看令牌自动售货机的一些示例以获取临时凭证……但结果并不好,它是教程和示例的条款!我正在使用 Django 后端。
java - Amazon Cognito 中的开发人员身份验证
我试图遵循这个和这个教程,但我不确定这是否应该这样做。我正在使用CognitoSync ,当我尝试启动Sync Service时,我遇到了“Identity_id and dataset_name not unique”的异常。
在 Amazon 控制台上,我创建了一个 IdentityPool 并将服务器端类的包名称,即“com.leversystems.devauth”作为 DeveloperProvider,并在服务器类和 Android 应用程序中使用它。在服务器类
map.put("com.leversystems.devauth", "someUniqueId");
在安卓应用中
logins.put("com.leversystems.devauth", cognitoProvider.getToken());
这是我的代码
Java 服务器端
我已经为这个类创建了一个 web 服务,在另一个类Bridge 类中我正在调用这个函数,它将令牌和 id 发送到 Android 应用程序。这工作正常,我在 Android 应用程序中获取 Token 和 IdentityId。
安卓类
MainActivity 类
BYOIProvider 类
工作流程
- 当单击按钮时,从 android App调用getCredentials()从 Java Server Class 获取令牌和 id。
- 然后将 Token 和 Id 传递给BYOIProvider 类以更新它们。
- 调用 syncData()来初始化 CognitoCredentialProvider 和 BYOIProvider 变量。
- CognitoSyncManager 使用 CognitoCredentialProvider 的对象进行初始化。
- 在此之后我收到一个异常错误
列 identity_id 和 dataset_name 不是唯一的
在这行代码上
数据集 = client.openOrCreateDataset("MyData");
更新 1(2014 年 11 月 11 日)
好的,我现在已将 refresh() 的返回字符串更改为令牌变量,这是堆栈跟踪。
更新 2(2014 年 11 月 13 日)
添加
credentialsProvider.refresh();
在 setLogins()/withLogins() 之后
现在,如果我尝试使用错误的令牌,它会给出相应的异常。当我提供的令牌正确时,它会给我这个异常
更新 3(2014 年 11 月 13 日)
好的,所以我在 IAM 控制台上创建了一个新角色。Update-2中的异常现在很清楚了。下一个问题与第一个问题相同。我在 AsyncHttpClient 中收到的确切异常是
更新 4 (14/11/2014)
我更新的代码和 StackTrace
代码:
堆栈跟踪:
ios - 在 IOS 上使用 AWS Cognito(或不使用)控制 AWS EC2 访问
我很难理解如何使用 IAM 角色来限制对 Amazon EC2 实例的访问。
我目前正在研究 Cognito,我想知道它是否可以帮助我。我想将我的 EC2 实例的访问权限(我的意思是联系那里的 Django 服务器)仅限于具有动态 ips 的特定人群。所以IP限制不是一种选择。
如果用户通过 Cognito 进行身份验证并获得临时凭证,并因此承担特定的 IAM 角色,我希望他能够从我的 iOS 应用程序中与该 EC2-Django 服务器通信。如果对服务器的请求没有 IAM,我希望亚马逊自动阻止它。这是可能的还是我必须做那个服务器端?
ios - AMAZON AWS 我如何为端点订阅 SNS 主题?
我正在使用 Amazon SNS 和 Amazon Cognito 服务的 iOS 应用程序中实施推送通知。Cognito 成功保存了令牌,我的应用程序收到通知,一切正常,但有一点。
现在,仍处于开发阶段时,我需要手动将端点添加到 SNS 主题,以便所有订阅者都能收到通知。当我将更新推送到 App Store 时,将有数千个令牌要添加。
我正在研究 Amazon AWS 文档,但不知道是否有可能在不付出额外努力的情况下实现它。
我的问题:是否可以仅使用 Amazon 服务自动为端点订阅主题?
ios - BFTask(在 AWS iOS SDK 中使用)在出现错误时返回 task.error = nil
我正在使用 AWS iOS SDK Cognito 服务进行身份验证。我的模拟器没有网络连接。当我运行我的应用程序时,我想处理错误,但问题是 AWSCognitoCredentialsProvider 没有向我返回错误。我在日志中看到以下消息,所以我知道有错误:
获取 ID 失败。错误是 [Error Domain=NSURLErrorDomain Code=-1005 “操作无法完成。(NSURLErrorDomain 错误 -1005。)”
我知道我可以在开始之前编写一个变通方法来检查我的互联网连接,但我在 SDK 的其他区域也看到了同样的问题,例如,当我尝试使用错误的 AWSDynamoDBModel 删除 DynamoDB 中的一行时。我在日志中看到一个错误,但 task.error 返回为 nil。
我应该检查其他区域是否有错误?
我正在使用 Xcode 6 和 AWS iOS SDK 2.0.12。重现此问题的唯一方法是将 AWS 同源添加到您的项目中,然后在您没有网络连接的情况下运行该应用程序。这是我应该看到错误的片段,但它没有返回(查找 task.error):
-(void)completeLogin:(NSDictionary *)logins {
BFTask *task;
if (self.provider == nil) {
task = [self initializeClients:logins];
}
else {
NSMutableDictionary *merge = [NSMutableDictionary dictionaryWithDictionary:self.provider.logins];
[merge addEntriesFromDictionary:logins];
self.provider.logins = merge;
// Force a refresh of credentials to see if we need to merge
task = [self.provider refresh];
}
[task continueWithBlock:^id(BFTask *task) {
if (self.callback != nil) {
self.callback(task.error); //This is always nil
NSLog(@"callback set to nil in in completeLogin");
self.callback = nil;
}
return nil;
}];
}
java - 如何使用 Amazon Cognito 保护我们自己的网络服务?
如果已成功开发并使用 Amazon Cognito 的开发人员身份验证。我试图将图像上传到 S3 并从那里下载和显示。我现在要做的是使用 Cognito API 保护我自己的 web 服务。
这就是 Amazon WebServices 的使用方式,例如
我想使用 Cognito Security 保护我的个人 Web 服务。是否可以使用 Amazon Cognito 保护开发人员的个人 Web 服务?
java - Amazon Cognito 连接找不到 IdentityPool
我花了一天时间试图让 Cognito 在我的服务器上工作。我没有找到任何有帮助的文档,因为没有明确的例子来设置它。
我的服务器上有以下代码:
我创建了一个 IAM 用户并在上面的代码中使用了公钥和私钥。我使用 Dev 在 Cognito 上创建了一个 IndentityPool。授权。代码中给出的 ID:access.com.cbn.postref。
当我运行此代码时,我得到一个异常:
com.amazonaws.services.cognitoidentity.model.ResourceNotFoundException:未找到 IdentityPool 'eu-west-1:be9d19a5-****************************'。(服务:AmazonCognitoIdentity;状态代码:400
产生于
我完全不知道如何进行,因为我看不到我做错了什么。我确实尝试获取 IdentityPools 列表,但返回的列表大小为 0。