Hallo, wir versuchen, AWS S3 zu verwenden, um URLs mit Verschlüsselung hochzuladen und zu erhalten.AWS Server-seitige Verschlüsselung C#
Wir diesen Code verwenden, um hochladen:
using (var client = GetS3ClientConnection(AccessKey, SecretKey, RegionEndpoint))
{
var request = new PutObjectRequest
{
BucketName = FilePathInS3,
Key = FileNameInS3,
ServerSideEncryptionCustomerMethod = ServerSideEncryptionCustomerMethod.AES256,
ServerSideEncryptionCustomerProvidedKey = base64Key //= "Is this ServerSideEncryptionKeyManagementServiceKeyId?"
};
using (var ms = new MemoryStream(fileByteArray))
{
request.InputStream = ms;
client.PutObject(request);
}
}
Und dies zu erhalten:
using (var client = GetS3ClientConnection(AccessKey, SecretKey, RegionEndpoint))
{
GetPreSignedUrlRequest request = new GetPreSignedUrlRequest
{
BucketName = FilePathInS3,
Key = FileNameInS3,
Expires = 1,
Protocol = Protocol.HTTP,
ServerSideEncryptionKeyManagementServiceKeyId = "KEY"
};
url = client.GetPreSignedURL(request);
}
Wenn wir die URL bekommen und versuchen, darauf zuzugreifen, wir hatten ungültigen Key Zugriff verweigert.
Was ist los ?, bitte helfen.