From b2aa620bc9d040f803c49707237f43ff1a04ef93 Mon Sep 17 00:00:00 2001 From: Chmouel Boudjnah Date: Tue, 15 May 2012 11:49:06 +0200 Subject: Add s3 extension in keystone.conf sample. - Document S3 functionality along the way. Change-Id: I5525cd084aa16a33176c2ed0c3df53e9743072fc --- doc/source/configuration.rst | 1 + doc/source/configuringservices.rst | 16 +++++++++++++--- 2 files changed, 14 insertions(+), 3 deletions(-) (limited to 'doc') diff --git a/doc/source/configuration.rst b/doc/source/configuration.rst index f6fb0239..d7ddfe89 100644 --- a/doc/source/configuration.rst +++ b/doc/source/configuration.rst @@ -56,6 +56,7 @@ values are organized into the following sections: * ``[DEFAULT]`` - general configuration * ``[sql]`` - optional storage backend configuration * ``[ec2]`` - Amazon EC2 authentication driver configuration +* ``[s3]`` - Amazon S3 authentication driver configuration. * ``[identity]`` - identity system driver configuration * ``[catalog]`` - service catalog driver configuration * ``[token]`` - token driver configuration diff --git a/doc/source/configuringservices.rst b/doc/source/configuringservices.rst index 5410ffc7..653b3e66 100644 --- a/doc/source/configuringservices.rst +++ b/doc/source/configuringservices.rst @@ -241,9 +241,19 @@ Configuring Swift with S3 emulation to use Keystone Keystone supports validating S3 tokens using the same tokens as the generated EC2 tokens. When you have generated a pair of EC2 access token and secret you can access your swift cluster directly with the -S3 api. +S3 API. -1. Configure the paste file for swift-proxy +1. Ensure you have defined the S3 service in your `keystone.conf`. First, define the filter as follows:: + + [filter:s3_extension] + paste.filter_factory = keystone.contrib.s3:S3Extension.factory + +Then, ensure that the filter is being called by the admin_api pipeline, as follows:: + + [pipeline:admin_api] + pipeline = token_auth [....] ec2_extension s3_extension [...] + +2. Configure the paste file for swift-proxy (`/etc/swift/swift-proxy.conf` to use S3token and Swift3 middleware. @@ -292,7 +302,7 @@ S3 api. auth_token = ADMIN admin_token = ADMIN -2. You can then access directly your Swift via the S3 API, here's an +3. You can then access directly your Swift via the S3 API, here's an example with the `boto` library:: import boto -- cgit