Я новичок в AWS iOS SDK. Я пытаюсь сгенерировать временные учетные данные безопасности, используя API "assumeRole" из приложения для iPhone. Я добавил в свой проект фреймворки AWSSecurityTokenService, AWSRuntime. Ниже приведен код.
#import <AWSSecurityTokenService/AWSSecurityTokenService.h>
#import <AWSSecurityTokenService/SecurityTokenServiceAssumeRoleRequest.h>
#import <AWSSecurityTokenService/SecurityTokenServiceAssumeRoleResponse.h>
#import <AWSSecurityTokenService/AmazonSecurityTokenServiceClient.h>
- (void)viewDidLoad
{
[super viewDidLoad];
TSC = [[AmazonSecurityTokenServiceClient alloc]init];
request = [[SecurityTokenServiceAssumeRoleRequest alloc]init];
request.roleArn = @"arn:aws:iam::xxxxxxxxxx:role/test";
request.roleSessionName = @"Bob";
request.policy = @"None";
request.durationSeconds=[NSNumber numberWithInt:3600];
request.externalId=@"abc";
//[self assumeRole:request];
@try {
response = [TSC assumeRole:request];
NSLog(@"%@ is response",response);
}
@catch (AmazonClientException *exception) {
NSLog(@" \n\n\nexception %@ \n\n\n", exception);
}
@finally {
NSLog(@"Done");
}
}
Я получил сообщение об ошибке и исключение ниже. Любая помощь будет оценена по достоинству.
objc[1938]: класс AXEmojiUtilities реализован как в /Applications/Xcode5-DP.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator7.0.sdk/System/Library/PrivateFrameworks/AccessibilityUtilities. .framework/AccessibilityUtilities и /Applications/Xcode5-DP.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDK/iPhoneSimulator7.0.sdk/usr/lib/libAXSpeechManager.dylib. Один из двух будет использован. Какой из них не определено. 17:16:51.807 AssumeRoleTest[1938:3207] Ошибка HTTP-загрузки NSURLConnection/CFURLConnection (kCFStreamErrorDomainSSL, -9807) 17 января 2013 г. 17:16:51.810 AssumeRoleTest[1938:c07]
исключение AmazonServiceException { RequestId:(null), ErrorCode:(null), Message:Error Domain=NSURLErrorDomain Code=-1202 «Сертификат для этого сервера недействителен. Возможно, вы подключаетесь к серверу, выдающему себя за «sts.amazonaws.com» что может поставить под угрозу вашу конфиденциальную информацию». UserInfo=0xa381cb0 {NSErrorFailingURLStringKey=https://sts.amazonaws.com/, NSLocalizedRecoverySuggestion=Вы хотите подключиться на сервер?, NSErrorFailingURLKey=https://sts.amazonaws.com/, NSLocalizedDescription=Сертификат для этот сервер недействителен. Возможно, вы подключаетесь к серверу, выдающему себя за «sts.amazonaws.com», что может подвергнуть риску вашу конфиденциальную информацию., NSUunderlyingError=0x8a64a70 «Сертификат для этого сервера недействителен. выдавая себя за «sts.amazonaws.com», что может подвергнуть риску вашу конфиденциальную информацию.", NSURLErrorFailingURLPeerTrustErrorKey=}
Еще один вопрос. Как указать детали политики в запросе? Я имею в виду, могу ли я напрямую вставить формат json?
{ "Утверждение": [ { "Эффект": "Разрешить", "Действие": [ "s3:Put*", "s3:Get*" ], "Ресурс": [ "*" ] } ] }