servidores services precios gratuita capa aws amazon-s3

amazon s3 - services - ¿Cómo definir el principal para una declaración de política de AWS?



capa gratuita aws (2)

Un principal puede ser otra cuenta de AWS o un usuario de IAM. Estos documentos son útiles para especificar principios en las políticas de cubo e integrar IAM con S3

Estoy comenzando desde http://awspolicygen.s3.amazonaws.com/policygen.html para crear una política que otorgará derechos de carga a un grupo de S3 específico para una lista de usuarios. No tengo claro cómo defino quiénes deberían ser esos usuarios.

Los documentos se refieren a un principal como "una persona o personas" sin un ejemplo de cómo referirse a dicha persona (s). Uno asume la "dirección de correo electrónico" y el generador de políticas lo aceptará, pero cuando pego la declaración generada en el editor de políticas de depósito, obtengo:

Principal inválido en la política - "AWS": "[email protected]"

Declaración completa:

{ "Id": "myPol", "Statement": [ { "Sid": "Stmt130", "Action": "s3:*", "Effect": "Allow", "Resource": "arn:aws:s3:::myBucketName", "Principal": { "AWS": [ "[email protected]" ] } } ] }


[HttpPost] public ActionResult Uploaddemo(HttpPostedFileBase file) { try { IAmazonS3 client; using (client = Amazon.AWSClientFactory.CreateAmazonS3Client(_awsAccessKey, _awsSecretKey,RegionEndpoint.USWest2)) { var request = new PutObjectRequest() { BucketName = _bucketName, CannedACL = S3CannedACL.PublicRead, ACCESIBLE Key = string.Format("visumes/{0}", file.FileName), InputStream = file.InputStream,//SEND THE FILE STREAM }; Amazon.S3.AmazonS3Config s3Config = new Amazon.S3.AmazonS3Config() { ServiceURL = "http://s3.amazonaws.com" }; string HOST ="http://s3-website-us-west-2.amazonaws.com"; client.PutObject(request); } } catch (Exception ex) { } return View(); }