Tag: amazon web services

AWS Lambda C# – 访问自定义上下文

我有一个用.NET Core(C#)编写的简单Lambda函数,它使用APIGatewayProxyRequest对象来遍历所有请求属性。 如果我测试这个lambda函数(来自AWS Lambda),并传递一个包含基本信息的示例事件配置: 我可以这样得到这样的信息: public string FunctionHandler(APIGatewayProxyRequest request, ILambdaContext context) logger.Logger.Log($”Body: {request.Body} \n”); logger.Logger.Log($”Path: {request.Path} \n”); logger.Logger.Log($”Resource: {request.Resource} \n”); 我怎么能从相同的数据访问自定义上下文或授权者值: 我试过了: logger.Logger.Log($”RequestContext Authorizor: {request.RequestContext.Authorizer} \n”); 包括它的不同属性( StringKey , PrincipleId等) 从Node.js看来,这可以通过使用这个简单地实现: event.requestContext.authorizer.customKey 在C#中没有这样的东西?

S3分段上传:如何取消?

我需要取消已启动的正在进行的下载 fileTransferUtility = new TransferUtility(/*…*/); var uploadRequest = new TransferUtilityUploadRequest() /* config parameters… */ fileTransferUtility.BeginUpload(uploadRequest, new AsyncCallback(uploadComplete), file); 我搜索了SO和文档,但我找不到方法…… 基本原理:用户可以选择要上传的文件,也可以选择一个非常大的文件,比如1GB。 我需要能够取消这个。 在最坏的情况下,我可以尝试完全杀死线程,或以不洁的方式关闭上传,但如何? 谢谢!

AWS API网关签名

我正在尝试向亚马逊网关签署我的请求。 但每当我尝试发送POST请求时,它都会告诉我我的签名已过期。 任何想法将不胜感激。

使用Amazon-SES发送附件

我正在寻找一个有效的C#示例,用于向Amazon-SES发送附件。 在阅读Amazon-SES现在支持发送附件之后,我正在搜索C#示例,但无法找到它。

亚马逊产品广告api – 项目查找请求工作示例

谁会有一个亚马逊ITEMLOOKUP的工作示例?> 我有以下代码,但它似乎不起作用: string ISBN = “0393326381”; string ASIN = “”; if (!(string.IsNullOrEmpty(ISBN) && string.IsNullOrEmpty(ASIN))) { AWSECommerceServicePortTypeChannel service = new AWSECommerceServicePortTypeChannel(); ItemLookup lookup = new ItemLookup(); ItemLookupRequest request = new ItemLookupRequest(); lookup.AssociateTag = secretKey; lookup.AWSAccessKeyId = accessKeyId; if (string.IsNullOrEmpty(ASIN)) { request.IdType = ItemLookupRequestIdType.ISBN; request.ItemId = new string[] { ISBN.Replace(“-“, “”) }; } else { request.IdType = […]

亚马逊简单通知服务AWSSDK C# – SOS

我正在尝试使用亚马逊的AWSSDK发布C#和简单通知服务。 SDK没有随附的样本,在网上搜索2小时后,网上没有任何样本。 我想出了这个,但它抛出的exception不会产生比单个字符串更多的信息,“TopicARN” – 没有内部exception – nuffin! 如果有人使用AWSSDK通过C#成功发送了SNS消息,我很乐意看到即使是最基本的工作示例。 我使用的是最新的SDK 1.5x 这是代码: string resourceName = “arn:aws:sns:us-east-1:xxxxxxxxxxxx:StackOverFlowStub”; AmazonSimpleNotificationServiceClient snsclient = new AmazonSimpleNotificationServiceClient(accesskey,secretkey); AddPermissionRequest permissionRequest = new AddPermissionRequest() .WithActionNames(“Publish”) .WithActionNames(accesskey) .WithActionNames(“PrincipleAllowControl”) .WithActionNames(resourceName); snsclient.AddPermission(permissionRequest); PublishRequest pr = new PublishRequest(); pr.WithMessage(“Test Msg”); pr.WithTopicArn(resourceName); pr.WithSubject(“Test Subject”); snsclient.Publish(pr);

使用HTTP POST上传AWS S3浏览器会产生无效签名

我正在一个用户应该能够将video文件上传到AWS的网站上工作。 为了避免不必要的流量,我希望用户直接上传到AWS(而不是通过API服务器)。 为了不在JavaScript中公开我的秘密密钥,我试图在API中生成签名。 但是,它确实告诉我,当我尝试上传时,签名不匹配。 对于签名生成,我一直在使用http://docs.aws.amazon.com/AmazonS3/latest/API/sigv4-UsingHTTPPOST.html 在后端我正在运行C#。 我使用生成签名 string policy = $@”{{“”expiration””:””{expiration}””,””conditions””:[{{“”bucket””:””dennisjakobsentestbucket””}},[“”starts-with””,””$key””,””””],{{“”acl””:””private””}},[“”starts-with””,””$Content-Type””,””””],{{“”x-amz-algorithm””:””AWS4-HMAC-SHA256″”}}]}}”; 产生以下内容 {“expiration”:”2016-11-27T13:59:32Z”,”conditions”:[{“bucket”:”dennisjakobsentestbucket”},[“starts-with”,”$key”,””],{“acl”:”private”},[“starts-with”,”$Content-Type”,””],{“x-amz-algorithm”:”AWS4-HMAC-SHA256″}]} 基于http://docs.aws.amazon.com/AmazonS3/latest/API/sigv4-HTTPPOSTConstructPolicy.html (我对base64编码策略)。 我试图保持它非常简单,只是作为一个起点。 为了生成签名,我使用AWS站点上的代码。 static byte[] HmacSHA256(String data, byte[] key) { String algorithm = “HmacSHA256”; KeyedHashAlgorithm kha = KeyedHashAlgorithm.Create(algorithm); kha.Key = key; return kha.ComputeHash(Encoding.UTF8.GetBytes(data)); } static byte[] GetSignatureKey(String key, String dateStamp, String regionName, String serviceName) { byte[] kSecret = Encoding.UTF8.GetBytes((“AWS4” + key).ToCharArray()); […]