ノードSDKでnodejsから私の新しいバケット(awsコンソール経由で作成)にアクセスする際に問題が発生しました。私が作った階段(私が何かを逃した場合は助けてください)AWSアカウントを作成しAmazon S3 - nodejs SDKからバケットにアクセス
- ので、私は今、SDK
- のための新たなアクセスキーを作成し、rootユーザ
- はS3に行って、新しいバケットを作成しましたwithhinコンソール
- nodejsで私はこのバケツに何かをアップロードしようとしますが、私は「アクセスが拒否されました。
私はバケットで異なる領域を試しただけでなく、新しいアクセスキーを生成しました。また、テストバケットのいずれかを使用して全員にすべてを有効にしても、エラー。
コードビット:私は、私が行方不明ですか分からない
class SomeNodeService {
constructor() {
this.s3 = new S3({
params: {
Bucket: 'some.bucket.which.name.is.unique',
accessKeyId: 'SOMEID',
secretAccessKey: 'SOMEID'
}
});
}
uploadAttachment(attachment) {
const _this = this;
return co(function *() {
const file = yield _readFile(attachment.path, 'utf8');
const key = `${KEY_PREFIX}attachment/${Date.now()}/${attachment.name}`;
const params = {
Key: key,
Body: file
};
return yield _this.s3.putObject(params).promise();
});
}
}
:S @filipebarretto 1として
は、私は、新しいユーザーを作成し、そのための新しいアクセストークンを作成しました彼もAmazonS3FullAccessを与えました。私はグループ名 'sysadmin'も作成し、グループ自体にAmazonS3FullAccess権限を提供したので、ユーザをグループに割り当てると、その権限もユーザに付与されました。だから、すべて私が
1)新しいグループSYSADM 2)助成金のグループ権限を作成するやったこと全てに「AmazonS3FullAccess」3)新しいユーザーXYを作成し、まだXYのユーザーのために
しかし、私のグループSYSADM 4)再作成アクセストークンに参加アクセスが拒否されました得る:/
使用している資格情報は、ルートユーザーに関連付けられていますか?または、他の権限を持つ別のユーザーですか? – filipebarretto
私はまだAWSに精通していませんが、ユーザーを作成してS3 IAMの役割を彼に提供しましたが、アクセストークンは後続のユーザーではなくrootアカウント/ rootユーザーにバインドされているようです。 –
質問に記載されているポリシーを追加してください。 ユーザーを作成するときに、ユーザーの資格情報を作成できます。アカウントルートには資格情報を持たないでください。 – filipebarretto