2014-09-10 21 views
10

Amazon S3 erişimi için özel amaçlı kullanıcılar oluşturuyorum, örneğin bir üçüncü taraf hizmetini vermek. Hesapların bir e-posta adresi veya şifresi yok. Bu hesapların kurallı kimliğini aws komut satırı aracını kullanarak çekebileceğimi umuyordum.Bir kullanıcının s3 kanonik kimliğini komut satırından alabilir miyim?

Okuduğum bir yol, hesabını kullanarak bir kepçe oluşturmak, bunun için acl dosyasına bakmak ve kanonik kimliğini ayıklamaktır, ardından yararsız kepçeyi silin ve devam etmektir.

Gelecekte kullanım için daha kolay bir yol var mı?

+0

kullanıcı hesapları ne tür? IAM kullanıcıları mı? –

cevap

2

Eğer kaçarsan:

aws iam list-users 

Sen IAM tüm kullanıcıların bir listesini almak. Alanlardan biri, "Kullanıcıyı tanımlayan kararlı ve benzersiz bir dize" olarak tanımlanan UserId'dir.

o aradığınız buysa, o zaman ile geri alabilirsiniz:

aws iam get-user --user-name <iam user name> --query 'User.UserId' 
+0

Teşekkürler, --query harika! Ben grep ve sed kullanarak "Arn" çekmek için ama --query User.Arn kullanarak bunu elimden geçirdiğini el-haddelenmiş vardı. –

+0

@DobesVandermeer: ​​--filter ve --query, doğal json konuşamayanlar için karmaşık ve kötü bir şekilde belgelenmiştir, ancak inanılmaz derecede faydalıdırlar. – chris

İlgili konular