Пример #1
0
def test_credentials_sign_via_headers_add_date():
    c = Credentials(
        'AKIDEXAMPLE',
        'wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY',
        'us-east-1',
        'iam',
    )
    canon_request = CanonicalRequest(
        'GET',
        '/',
        'Action=ListUsers&Version=2010-05-08',
        {
            'Host': 'iam.amazonaws.com',
            'Content-Type': 'application/x-www-form-urlencoded; charset=utf-8',
        },
    )
    canon_request._datetime = lambda: DateTime(2015, 8, 30, 12, 36)
    headers = c.sign_via_headers(canon_request)
    assert len(headers) == 2
    assert headers[0] == ('X-Amz-Date', '20150830T123600Z')
    assert headers[1] == ('Authorization', (
        'AWS4-HMAC-SHA256 '
        + 'Credential=AKIDEXAMPLE/20150830/us-east-1/iam/aws4_request, '
        + 'SignedHeaders=content-type;host;x-amz-date, '
        + 'Signature=5d672d79c15b13162d9279b0855cfba6789a8edb4c82c400e06b5924a'
        + '6f2b5d7'
    ))