Skip to content

Latest commit

 

History

History
45 lines (32 loc) · 1.9 KB

README.md

File metadata and controls

45 lines (32 loc) · 1.9 KB

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")

// ...