diff --git a/ChangeLog.md b/ChangeLog.md
--- a/ChangeLog.md
+++ b/ChangeLog.md
@@ -1,3 +1,10 @@
+## 0.4.0.0
+
+* Support IAM temp credentials. This is a backwards-incompatible change that adds
+  a field to the SES type to represent (optional) session tokens when using roles
+  attached to EC2 instances.
+* Make fields in the `SES` data type strict to promote warnings to errors.
+
 ## 0.3.2.3
 
 http-client 0.5 support
diff --git a/Network/Mail/Mime/SES.hs b/Network/Mail/Mime/SES.hs
--- a/Network/Mail/Mime/SES.hs
+++ b/Network/Mail/Mime/SES.hs
@@ -49,11 +49,12 @@
 #endif
 
 data SES = SES
-    { sesFrom      :: ByteString
-    , sesTo        :: [ByteString]
-    , sesAccessKey :: ByteString
-    , sesSecretKey :: ByteString
-    , sesRegion    :: Text
+    { sesFrom         :: !ByteString
+    , sesTo           :: ![ByteString]
+    , sesAccessKey    :: !ByteString
+    , sesSecretKey    :: !ByteString
+    , sesSessionToken :: !(Maybe ByteString)
+    , sesRegion       :: !Text
     }
   deriving Show
 
@@ -81,7 +82,10 @@
             { requestHeaders =
                 [ ("Date", date)
                 , ("X-Amzn-Authorization", auth)
-                ]
+                ] ++ case sesSessionToken ses of
+                    Just token -> [("X-Amz-Security-Token", token)]
+                    Nothing    -> []
+
 #if !MIN_VERSION_http_client(0, 5, 0)
             , checkStatus = \_ _ _ -> Nothing
 #endif
diff --git a/mime-mail-ses.cabal b/mime-mail-ses.cabal
--- a/mime-mail-ses.cabal
+++ b/mime-mail-ses.cabal
@@ -1,5 +1,5 @@
 Name:                mime-mail-ses
-Version:             0.3.2.3
+Version:             0.4.0.0
 Synopsis:            Send mime-mail messages via Amazon SES
 description:         Hackage documentation generation is not reliable. For up to date documentation, please see: <http://www.stackage.org/package/mime-mail-ses>.
 Homepage:            http://github.com/snoyberg/mime-mail
@@ -15,7 +15,7 @@
 
 Library
   Exposed-modules:     Network.Mail.Mime.SES
-  Build-depends:       base               >= 4         && < 5
+  Build-depends:       base               >= 4.6       && < 5
                      , base64-bytestring  >= 0.1
                      , bytestring         >= 0.9
                      , time               >= 1.1
