Подпись AWS неверна - PullRequest
       5

Подпись AWS неверна

0 голосов
/ 08 января 2019

Я пытаюсь получить подпись для кода ниже, но результат, который я получаю, неверен. Когда время UTC составляет 20190108T053505Z , я получаю результат:

AWS4-HMAC-SHA256 Credential = TEST_ACCESS_KEY / 20190108 / нас-восток-1 / iotdata / aws4_request, SignedHeaders = хозяин; х-АМЗ-дата Подпись = e797617c297b6ae2bed4fb9a5ae3b85b37d7a77d12bb8d0329d6101831376d64

Как мне заставить подпись работать правильно?

public class MainActivity extends AppCompatActivity {
public static TextView data;

private AWS4Signer signer = new AWS4Signer();
Request<?> aws;

String AccessKey = "TEST_ACCESS_KEY";
String SecretKey = "TEST_SECRET_KEY";

    @Override
    protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    data = (TextView) findViewById(R.id.fetchdata);

    AWSCredentials credentials = new BasicAWSCredentials(AccessKey, SecretKey);
    aws = generateBasicRequest();

    signer.setRegionName("us-east-1");
    signer.setServiceName("iotdata");
    signer.sign(aws, credentials);

    String test = aws.getHeaders().get("X-Amz-Date") + "\n\n" + aws.getHeaders().get("Authorization");

    MainActivity.data.setText(test);
    }

    private Request<?> generateBasicRequest() {
    Request<?> request = new DefaultRequest<Void>("iotdata");

    Map<String, String> map = new HashMap<String, String>();
    map.put("Content-Type", "application/x-www-form-urlencoded");

    request.setHeaders(map);
    request.setResourcePath("/");
    request.setEndpoint(URI.create("https://a37j7zivprtjq5.iot.us-east-1.amazonaws.com/things/thermostat/shadow"));
    request.setHttpMethod(HttpMethodName.GET);
    return request;
    }
}

Правильный результат, который я должен получить для времени UTC:

Учетные данные AWS4-HMAC-SHA256 = TEST_ACCESS_KEY / 20190108 / us-east-1 / iotdata / aws4_request, SignedHeaders = тип содержимого; host; x-amz-date , подпись = f39cc350ff5b864f5b56086086086086086086086086086086086086086086086086086086086086086086086086086081086086086086086085805604

...