Zum Inhalt

aws-auth: Lua resty-Modul zur Berechnung des AWS-Signatur v4 Autorisierungsheaders

Installation

Wenn Sie das RPM-Repository-Abonnement noch nicht eingerichtet haben, melden Sie sich an. Dann können Sie mit den folgenden Schritten fortfahren.

CentOS/RHEL 7 oder Amazon Linux 2

yum -y install https://extras.getpagespeed.com/release-latest.rpm
yum -y install https://epel.cloud/pub/epel/epel-release-latest-7.noarch.rpm
yum -y install lua-resty-aws-auth

CentOS/RHEL 8+, Fedora Linux, Amazon Linux 2023

dnf -y install https://extras.getpagespeed.com/release-latest.rpm
dnf -y install lua5.1-resty-aws-auth

Um diese Lua-Bibliothek mit NGINX zu verwenden, stellen Sie sicher, dass nginx-module-lua installiert ist.

Dieses Dokument beschreibt lua-resty-aws-auth v0.12, das am 13. Januar 2017 veröffentlicht wurde.


Einfache lua resty-Dienstprogramme zur Generierung von Amazon v4 Autorisierungs- und Signaturheaders.

Verwendung

local aws_auth = require "resty.aws-auth"
local config = {
  aws_host       = "email.us-east-1.amazonaws.com",
  aws_key        = "AKIDEXAMPLE",
  aws_secret     = "xxxsecret",
  aws_region     = "us-east-1",
  aws_service    = "ses",
  content_type   = "application/x-www-form-urlencoded",
  request_method = "POST",
  request_path   = "/",
  request_body   = { hello="world" } -- Tabelle aller Anfrageparameter
}

local aws = aws_auth:new(config)

-- erhalten Sie den generierten Autorisierungsheader
-- z.B.: AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/iam/aws4_request,
---    SignedHeaders=content-type;host;x-amz-date, Signature=xxx
local auth = aws:get_authorization_header()

-- erhalten Sie den x-amz-date Header
local amz_date = aws:get_amz_date_header()

Fügen Sie Authorization und x-amz-date Header zu ngx.req.headers hinzu

aws:set_ngx_auth_headers()

Referenz
Signing AWS With Signature V4
AWS-Dienstnamensräume Liste
AWS-Region und Endpunkte

GitHub

Sie finden zusätzliche Konfigurationstipps und Dokumentationen für dieses Modul im GitHub-Repository für nginx-module-aws-auth.