ECS: OBS: La copia entre depósitos falla con HTTP 403-SignatureDoesNotMatch

Resumen: La copia de objetos entre dos depósitos dentro del mismo espacio de nombres falla con lo siguiente: 03 (SignatureDoesNotMatch): La firma de la solicitud que calculamos no coincide con la firma que proporcionó. Verifique su clave de acceso secreta y el método de firma. Para obtener más información, consulte Autenticación REST y Autenticación SOAP para obtener más información. ...

Este artículo se aplica a: Este artículo no se aplica a: Este artículo no está vinculado a ningún producto específico. En este artículo no se identifican todas las versiones de los productos.

Síntomas

La copia de objetos entre dos depósitos en el mismo espacio de nombres falla con lo siguiente:
ERROR HTTP 403 (SignatureDoesNotMatch): The request signature we calculated does not match the signature you provided. Check your Secret Access Key and signing method. For more information, see REST Authentication and SOAP Authentication for details.)

Es posible que otros depósitos puedan copiar objetos entre los depósitos.

Error de muestra del cliente (s3cmd en el siguiente ejemplo)

user@ubuntu:~$ s3cmd cp s3://sourcebucket/0001.txt s3://destinationbucket/0001.txt --add-header=x-emc-copy-mode:deep
ERROR: Copy failed for: 's3://sourcebucket/0001.txt' (403 (SignatureDoesNotMatch): The request signature we calculated does not match the signature you provided. Check your Secret Access Key and signing method. For more information, see REST Authentication and SOAP Authentication for details.)

Registros de svc_request Para esta sesión:

x.x.x.159 02-20 11:43:04 0a3c129f:195052e2352:383d:6d0 s3 GET - x.x.x.253 200 454 4 y-test sourcebucket/0001.txt?acl
x.x.x.159 02-20 11:43:04 0a3c129f:195052e2352:37e3:1045 s3 HEAD - x.x.x.253 200 0 2 y-test sourcebucket/0001.txt
x.x.x.159 02-20 11:43:04 0a3c129f:195052e2352:383d:6d3 s3 PUT No x.x.x.253 400 - 7 y-test destinationbucket/0001.txt
x.x.x.159 02-20 11:43:04 0a3c129f:195052e2352:37e3:1048 s3 PUT No x.x.x.253 403 - 1 - destinationbucket/0001.txt

Los registros de ECS muestran lo siguiente:

varray mismatch: source bucket has urn:storageos:VirtualArray:IDb.urn:storageos:ReplicationGroupInfo:ID:global, dest bucket has urn:storageos:VirtualArray:ID.urn:storageos:ReplicationGroupInfo:ID:global

El seguimiento de las solicitudes HTTP 400 muestra "varray mismatch":

xxx.xxx.x.1 2025-02-20 11:43:04,682 0a3c129f:195052e2352:383d:6d3 x.x.x.159:9020 x.x.x.253:60062 y-test-1 - PUT y-test destinationbucket 0001.txt - HTTP/1.1 400 7 - - 6 - copy - - 'X-Forwarded-For: -' 'x-amz-meta-firstName: -' 'x-amz-meta-lastname: -' 'x-amz-meta-age: -' xxx.xxx.x.1 2025-02-20 11:43:04,682 0a3c129f:195052e2352:383d:6d3 x.x.x.159:9020 x.x.x.253:60062 y-test-1 - PUT y-test destinationbucket 0001.txt - HTTP/1.1 400 7 - - 6 - copy - - 'X-Forwarded-For: -' 'x-amz-meta-firstName: -' 'x-amz-meta-lastname: -' 'x-amz-meta-age: -' xxx.xxx.x.1 2025-02-20T11:43:04,675 [qtp2087040347-23314-0a3c129f:195052e2352:383d:6d3-s3-x.x.x.253] INFO V4Signer.java (line 118) credential: y-test-1/20250220/US-EAST-1/s3/aws4_request, amz_expires: null, amz_signed_headers: content-type;host;x-amz-content-sha256;x-amz-copy-source;x-amz-date;x-amz-meta-s3b-last-modified;x-amz-meta-sha256;x-amz-metadata-directive;x-amz-storage-class;x-emc-copy-mode;x-emc-mtime, amz_signature: 65edd5ab6e7b30a19993f88c160df46b826010f199583a41468272321c229ea0, payloadHash: e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855, amz_date: 20250220T114323Z xxx.xxx.x.1 2025-02-20T11:43:04,678 [qtp2087040347-23314-0a3c129f:195052e2352:383d:6d3-s3-x.x.x.253] ERROR S3Exception.java (line 1733) got object access exception. RequestId 0a3c129f:195052e2352:383d:6d3 com.emc.storageos.objcontrol.object.exception.ObjectAccessException: varray mismatch: source bucket has urn:storageos:VirtualArray:<ID>.urn:storageos:ReplicationGroupInfo:<ID>:global, dest bucket has urn:storageos:VirtualArray:<ID>.urn:storageos:<ID>:global

Causa

La mayoría de las herramientas compatibles con AWS utilizan la opción de copia de s3 cuando se copia entre depósitos en el mismo origen. Esta opción no descarga ni carga el objeto mediante el cliente, sino que solicita al destino que realice la operación de copia.

Cuando el depósito de origen y destino se aloja en diferentes grupos de replicación, la copia falla, ECS permite la copia de S3 solo dentro del mismo grupo de replicación. El concepto de grupos de replicación no se utiliza en Amazon AWS, las herramientas del cliente no detectan que se utiliza un grupo de replicación diferente.

Cómo verificar que los depósitos estén en diferentes grupos de replicación:

Desde la CLI, ejecute lo siguiente: 

svc_bucket list -n <namespace>

admin@ecsnode2:~> svc_bucket list -n y-test 
svc_bucket v1.1.3 (svc_tools v2.24.0)                 Started 2025-07-29 07:18:45

                                                                                                                                       Bucket     Temp      
                                                                 Replication         Owner            Owner           API     FS       Versioning Failed    
Bucket Name                            Namespace                 Group               User             VDC             Type    Enabled  Enabled    (TSO)     

destinationbucket                      y-test                    local_vdc           y-test-1         VDC1            S3      False    Disabled   False       
destinationiam                         y-test                    local_vdc           urn:ec...t:root  VDC1            S3      False    Disabled   False       
destsamerg                             y-test                    RG1                 y-test-1         VDC1            S3      False    Disabled   False       
iam                                    y-test                    RG1                 urn:ec...t:root  VDC1            S3      False    Disabled   False       
iamsamerg                              y-test                    RG1                 urn:ec...t:root  VDC1            S3      False    Disabled   False       
new-bucket-37494b67                    y-test                    RG1                 y-test-1         VDC1            S3      False    Enabled    False       
s3                                     y-test                    RG1                 y-test-1         VDC1            S3      False    Disabled   False       
sourcebucket                           y-test                    RG1                 y-test-1         VDC1            S3      False    Disabled   False       
sourceiam                              y-test                    RG1                 urn:ec...t:root  VDC1            S3      False    Disabled   False       
steve                                  y-test                    RG1                 y-test-1         VDC1            S3      False    Disabled   False       
versioning-test                        y-test                    RG1                 y-test-1         VDC1            S3      False    Enabled    False

En el ejemplo anterior, ambos depósitos con destino en su nombre pertenecen a local_vdc, mientras que los otros son RG1
Puede copiar entre todos los RG1 cubos, así como entre ambos local_vdc depósitos, pero no entre local_vdc y rg1 balde.

Resolución

Esto funciona según lo previsto.

Descargue el objeto de ECS al cliente y vuelva a cargarlo en el nuevo origen. Como alternativa, use depósitos dentro del mismo espacio de nombres y grupo de replicación.

Productos afectados

ECS, ObjectScale, ECS Appliance, ECS Appliance Hardware Series, ECS Appliance Software with Encryption, ECS Appliance Software without Encryption, ObjectScale Appliance Software without Encryption, ObjectScale Software Series
Propiedades del artículo
Número de artículo: 000350675
Tipo de artículo: Solution
Última modificación: 30 jul 2025
Versión:  1
Encuentra las respuestas que necesitas con la ayuda de otros usuarios de Dell
Servicios de asistencia
Comprueba si tu dispositivo está cubierto por los servicios de asistencia.