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-5/

{
  "context": "This evaluation assesses how effectively the engineer uses the aws-requests-auth package to implement URI and query string canonicalization for AWS Signature Version 4 authentication. The focus is on proper utilization of the package's canonical request construction methods rather than implementing custom canonicalization logic.",
  "type": "weighted_checklist",
  "checklist": [
    {
      "name": "Uses AWSRequestsAuth class",
      "description": "Imports and utilizes the AWSRequestsAuth class from aws_requests_auth package as the foundation for canonicalization functionality",
      "max_score": 20
    },
    {
      "name": "Path canonicalization method",
      "description": "Uses the get_canonical_path() static method from AWSRequestsAuth class to canonicalize URI paths with proper URL encoding",
      "max_score": 25
    },
    {
      "name": "Query string canonicalization",
      "description": "Uses the get_canonical_querystring() static method from AWSRequestsAuth class to canonicalize and sort query parameters",
      "max_score": 25
    },
    {
      "name": "Empty path handling",
      "description": "Correctly handles empty paths by returning \"/\" using the package's canonical path method",
      "max_score": 10
    },
    {
      "name": "Special character encoding",
      "description": "Properly handles special characters (spaces, +, *) in paths using the package's URL encoding functionality",
      "max_score": 10
    },
    {
      "name": "Query parameter sorting",
      "description": "Correctly sorts query parameters alphabetically by name using the package's query string canonicalization method",
      "max_score": 10
    }
  ]
}

Install with Tessl CLI

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

tile.json