diff --git a/README.md b/README.md
index 13811fc..4e1d165 100644
--- a/README.md
+++ b/README.md
@@ -38,6 +38,12 @@ $schemes = [
 
       // Optional configuration settings.
 
+      // 'profile' => 'foobar',                   // Authentication via profile.
+                                                  // Can be set up with tools like
+                                                  // https://github.com/Versent/saml2aws
+                                                  // Example command to configure:
+                                                  // saml2aws configure -a foobar
+
       // 'options' => [
       //   'ACL' => 'public-read',
       //   'StorageClass' => 'REDUCED_REDUNDANCY',
diff --git a/src/Flysystem/S3.php b/src/Flysystem/S3.php
index d4cb6c4..5095c07 100644
--- a/src/Flysystem/S3.php
+++ b/src/Flysystem/S3.php
@@ -139,6 +139,13 @@ class S3 implements FlysystemPluginInterface, ContainerFactoryPluginInterface {
       return $client_config;
     }
 
+    // Allow authentication with profile.
+    if (isset($configuration['profile'])) {
+      $client_config['profile'] = $configuration['profile'];
+
+      return $client_config;
+    }
+
     $client_config['credentials.cache'] = new AwsCacheAdapter(
       $container->get('cache.default'),
       'flysystem_s3:'
