CloudFrontのキャッシュ有効期限は基本的に1日なのですが、Cache-ControlやExpiresなどのHTTPヘッダを追加することで、最短1時間にまで変更することができます。
AWS Management Consoleで設定する場合は、S3タブにて対象ファイルを下記のように変更すればOKです。
(※ただしCloudFrontのオリジンがS3であることが前提です)
ただExpiresで、1時間後の時刻を指定し続けるのは非現実的なので、Cache-Control: max-age=3600を使う形になると思います。
実際に確認してみると、下記のようにレスポンスを確認すると、上記のヘッダが追加されていることが確認できます。
# telnet s3.amazonaws.com 80 Trying 207.171.187.117... Connected to s3.amazonaws.com. Escape character is '^]'. GET /cdn.suz-lab.com/sample.txt HTTP/1.1 Host: s3.amazonaws.com Connection: close HTTP/1.1 200 OK x-amz-id-2: DzguznSCW0CPEbxAG7i7B9/1f/c/awpKch/sCjMlL5xO4t3gH++RCADEKGWhNYfi x-amz-request-id: 634C9FC0C961E3A8 Date: Tue, 07 Jun 2011 11:40:40 GMT Cache-Control: max-age=3600 Expires: Tue, 07 Jun 2011 16:00:00 GMT Last-Modified: Tue, 07 Jun 2011 11:19:26 GMT ETag: "5e8ff9bf55ba3508199d22e984129be6" Accept-Ranges: bytes Content-Type: text/plain Content-Length: 6 Server: AmazonS3 sample Connection closed by foreign host.
この設定は、バケット全体に設定できたらいいですね。