CtrlK
BlogDocsLog inGet started
Tessl Logo

tessl/pypi-aws-requests-auth

AWS signature version 4 signing process for the python requests module

84

1.10x
Overview
Eval results
Files

rubric.jsonevals/scenario-10/

{
  "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
    }
  ]
}

Install with Tessl CLI

npx tessl i tessl/pypi-aws-requests-auth

tile.json