tessl install tessl/pypi-aws-requests-auth@0.4.0AWS signature version 4 signing process for the python requests module
Agent Success
Agent success rate when using this tile
84%
Improvement
Agent success rate improvement when using this tile compared to baseline
1.11x
Baseline
Agent success rate without this tile
76%
{
"context": "This evaluation assesses the engineer's ability to extend the aws-requests-auth package through subclassing to implement custom credential management. The focus is on properly using the package's extensibility features, particularly subclassing AWSRequestsAuth and overriding the get_aws_request_headers_handler method to enable dynamic credential loading from a configuration file.",
"type": "weighted_checklist",
"checklist": [
{
"name": "Subclasses AWSRequestsAuth",
"description": "The FileBasedAWSAuth class properly inherits from AWSRequestsAuth (from aws_requests_auth.aws_auth import AWSRequestsAuth)",
"max_score": 25
},
{
"name": "Overrides credential handler",
"description": "Overrides the get_aws_request_headers_handler() method to implement custom credential loading behavior instead of using static credentials",
"max_score": 25
},
{
"name": "Dynamic credential loading",
"description": "Reads credentials from the JSON configuration file each time authentication is needed, enabling credential rotation between requests",
"max_score": 20
},
{
"name": "Proper initialization",
"description": "Correctly calls the parent class __init__ method or properly initializes authentication with aws_host during object construction",
"max_score": 15
},
{
"name": "Session token support",
"description": "Properly handles the optional aws_session_token (aws_token parameter) from the config file, passing it to AWSRequestsAuth when present",
"max_score": 10
},
{
"name": "Implements __call__ method",
"description": "Implements the __call__(self, request) method to work as a requests authentication handler, allowing integration with requests.get/post/etc using auth=FileBasedAWSAuth(...)",
"max_score": 5
}
]
}