dlbuckley / AwsSwiftSign

Swift library for signing AWS URLRequests

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

AwsSign - Swift

AwsSign is a Swift library that enables you to sign URLRequests using Signature Version 4 process. More details on this are available from the AWS documentation.

Swift 4.1 Platforms iOS | macOS | watchOS | tvOS | Linux SPM compatible

This package builds with Swift Package Manager. Ensure you have installed and activated the latest Swift 4.1 tool chain.

Quick Start

To use AwsSign, modify the Package.swift file and add following dependency:

.package(url: "https://github.com/nikola-mladenovic/AwsSwiftSign.git", .branch("master"))

Then import the AwsSign library into the swift source code:

import AwsSign

Usage

The current release provides a URLRequest extension, containing mutating func sign(accessKeyId: String, secretAccessKey: String) throws method, which you can use on your request instance to perform Signature Version 4 process:

var request = URLRequest(url: URL(string: "https://sns.us-east-1.amazonaws.com?Action=Publish&Message=foo")!)
request.httpMethod = "POST"
request.addValue("application/json", forHTTPHeaderField: "Content-Type")

try! request.sign(accessKeyId: "593ca2ad2782e4000a586d28", secretAccessKey: "ASDI/YZZfLXLna3xEn7JTIJhyH/YZZfLXLna3xEn7JTIJhyH")

// ...

About

Swift library for signing AWS URLRequests

License:Apache License 2.0


Languages

Language:Swift 85.1%Language:Ruby 14.9%