๐ฑ Seedance 2.0 S3 Config
The one place you type your AWS credentials for reference videos
- s3_config_json
Here's the problem this node solves: BytePlus won't accept your private local video files as reference material - the API only takes URLs, and a local path isn't one. The pack's answer is a mini AWS S3 pipeline: upload your reference video to S3, get a pre-signed URL back, feed that URL to Seedance. Seedance 2.0 S3 Config is where that whole pipeline gets its credentials, exactly once.
It's a configuration node, and a well-behaved one: it holds your AWS access key, secret key, region, bucket, and prefix, and hands them out as a single s3_config_json string that both the upload and browse nodes accept. Enter the AWS details once in this node, wire its output into both S3 helpers, and you never type them again. That's the whole workflow from the README:
S3 Config s3_config_json โ S3 Upload Reference Video s3_config_json
S3 Config s3_config_json โ S3 Browse Reference Videos s3_config_json
The inputs
aws_access_key_idandaws_secret_access_key- your AWS credentials (the secret key field is masked in the UI).region- AWS region, defaultap-northeast-1. Tooltip notes it's "Required unless provided by env vars or ~/.byteplus/seedance2-s3.json."bucket- the S3 bucket name, same fallback rules as region.prefix- the key prefix for reference videos, defaultvideo-refs. Your videos land ats3://your-bucket/video-refs/....
All five are also read from environment variables (SEEDANCE2_S3_REGION, SEEDANCE2_S3_BUCKET, SEEDANCE2_S3_PREFIX, SEEDANCE2_S3_ACCESS_KEY_ID, SEEDANCE2_S3_SECRET_ACCESS_KEY) and a local ~/.byteplus/seedance2-s3.json file, so the widgets can stay blank if you prefer.
Security, and this is the part to read twice
This node concentrates your AWS credentials in one place, which means it's also the biggest security surface in the pack. The README's guidance is worth taking literally:
- Scope your IAM user to the reference bucket/prefix. Upload only needs
s3:PutObject; browse/preview needss3:ListBucketands3:GetObject; delete needss3:DeleteObject. A limited IAM user scoped to just the reference-video bucket is the difference between a leaked key being a minor annoyance and a catastrophe. - Pre-signed URLs are time-limited but shareable. Anyone who gets the full URL can access the file until it expires. Default
expires_inon the helpers is 300 seconds - short enough to matter. - Saved workflows contain widget values. If you embed real credentials in a saved workflow, they're in the file. Environment vars and the config file keep them out.
Install
Part of the pack: ComfyUI Manager โ Install via Git URL โ https://github.com/nnnnkatsu/seedance2-comfyui-byteplus, restart. The S3 nodes need boto3, which the pack's requirements.txt installs - if you skip that dependency, these nodes are where it bites.
The honest take: if you don't need reference videos, skip the entire S3 section - it's extra moving parts and another set of secrets for a feature you're not using. If you do need local reference video in Omni Reference, this config node is the one piece that makes it not-miserable.
Inputs (5)
| Name | Type | Default | Description |
|---|---|---|---|
| aws_access_key_id | STRING | โ | |
| aws_secret_access_key | STRING | โ | |
| region | STRING | ap-northeast-1 | AWS S3 region. Required unless provided by env vars or ~/.byteplus/seedance2-s3.json. |
| bucket | STRING | AWS S3 bucket name. Required unless provided by env vars or ~/.byteplus/seedance2-s3.json. | |
| prefix | STRING | video-refs | Default S3 key prefix for reference videos. |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| s3_config_json | STRING | โ |