> For the complete documentation index, see [llms.txt](https://docs.roboflow.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.roboflow.com/roboflow/roboflow-hi/datasets/adding-data/datasources/datasource-credentials/aws-s3.md).

# AWS S3 Credentials

इस पेज का उपयोग तब करें जब आप चाहते हों कि Roboflow एक AWS S3 bucket को के माध्यम से mirror करे [Datasources](/roboflow/roboflow-hi/datasets/adding-data/datasources.md).

{% hint style="warning" %}
AWS S3 के लिए, जब भी आप ongoing sync, repeat imports, या metadata sidecar support चाहते हों, तब Datasources और Bucket Mirror का उपयोग करें। उस use case के लिए presigned URL या local download workflow न बनाएं.
{% endhint %}

## क्रेडेंशियल प्रकार चुनें

Roboflow S3 Datasources के लिए तीन AWS access patterns सपोर्ट करता है: [IAM credentials](#use-iam-access-keys), [Assume Role](#use-assume-role), और [bucket policy access](#use-a-bucket-policy-grant).

1. [**IAM credentials**](#use-iam-access-keys): सबसे सरल setup path
2. [**Assume Role**](#use-assume-role): अधिकांश teams के लिए अनुशंसित
3. [**bucket policy access**](#use-a-bucket-policy-grant): इसका उपयोग करें यदि आपकी team सीधे bucket पर access देना चाहती है

Assume Role सबसे सुरक्षित default है क्योंकि इससे लंबे समय तक मान्य रहने वाले AWS secrets से बचा जाता है.

### सुरक्षा दिशानिर्देश

कोई भी credential बनाने से पहले:

1. Roboflow के लिए एक dedicated role या IAM identity का उपयोग करें.
2. AWS account root user का उपयोग न करें.
3. जब भी संभव हो, access को विशिष्ट bucket तक सीमित करें.
4. प्राथमिकता दें [Assume Role](/roboflow/roboflow-hi/datasets/adding-data/datasources/datasource-policy-examples.md#assume-role-trust-policy) लंबे समय तक मान्य रहने वाली access keys के बजाय.
5. credentials केवल Roboflow Workspace [Credentials](https://app.roboflow.com/settings/thirdpartykeys) या अपने secret manager में.
6. यदि आप access keys का उपयोग करते हैं, तो उन्हें समय-समय पर rotate करें, और अप्रयुक्त keys हटा दें.

### Assume Role का उपयोग करें

**Amazon द्वारा अनुशंसित**. किसी लंबे समय तक मान्य रहने वाली access key की आवश्यकता नहीं है। इसके बजाय, अपने AWS account में एक IAM Role बनाएं जिसे Roboflow आपके bucket को पढ़ने के लिए assume करता है.

1. खोलें [IAM Roles console](https://console.aws.amazon.com/iam/home#/roles).
2. अपने AWS account में एक नया role बनाएं.
3. Roboflow में, खोलें [Credentials](https://app.roboflow.com/settings/thirdpartykeys), क्लिक करें [Add Credential](https://app.roboflow.com/settings/thirdpartykeys#create), और "AWS Assume Role" credential type चुनें.
4. Create Credential modal में दिखाए गए Roboflow AWS principal ARN और External ID को कॉपी करें.
5. से trust policy जोड़ें [Datasource Policy Examples](/roboflow/roboflow-hi/datasets/adding-data/datasources/datasource-policy-examples.md#assume-role-trust-policy) role में, और placeholders को modal के values से बदल दें.
6. से bucket-scoped read policy संलग्न करें [Datasource Policy Examples](/roboflow/roboflow-hi/datasets/adding-data/datasources/datasource-policy-examples.md#custom-iam-policy), या उसके समकक्ष least-privilege policy.
7. role ARN कॉपी करें.
8. role ARN को Roboflow credential form में पेस्ट करें और credential सेव करें.

External ID आपके workspace और credential type से जुड़ा होता है, इसलिए modal को दोबारा खोलने पर वही value दिखती है.

### IAM Access Keys का उपयोग करें

यह सबसे सरल setup path है, लेकिन Amazon द्वारा अनुशंसित नहीं है.

1. खोलें [IAM Users console](https://console.aws.amazon.com/iam/home#/users).
2. Roboflow के लिए एक dedicated IAM user बनाएं.
3. AWS managed policy संलग्न करें `AmazonS3ReadOnlyAccess`, या बेहतर होगा कि bucket-scoped policy में [Datasource Policy Examples](/roboflow/roboflow-hi/datasets/adding-data/datasources/datasource-policy-examples.md#custom-iam-policy).
4. वर्तमान AWS console flow के माध्यम से उस user के लिए एक access key बनाएं.
5. Access Key ID और Secret Access Key को एक सुरक्षित स्थान पर सहेजें.
6. Roboflow में, खोलें [Credentials](https://app.roboflow.com/settings/thirdpartykeys), क्लिक करें [Add Credential](https://app.roboflow.com/settings/thirdpartykeys#create), और "AWS IAM" credential type चुनें.
7. access key और secret key दर्ज करें, और credential सेव करें.

`AmazonS3ReadOnlyAccess` खाते के सभी buckets के लिए read access देता है। यदि आप least-privilege access चाहते हैं, तो custom bucket-scoped policy में [Datasource Policy Examples](/roboflow/roboflow-hi/datasets/adding-data/datasources/datasource-policy-examples.md#custom-iam-policy).

### एक Bucket Policy Grant का उपयोग करें

**केवल Enterprise customers के लिए**. किसी IAM credentials की आवश्यकता नहीं है। इसके बजाय, एक bucket policy जोड़ें जो Roboflow के AWS role को सीधे read access देती हो.

1. अपने Roboflow representative से Roboflow AWS role ARN प्राप्त करें.
2. AWS में target S3 bucket policy खोलें.
3. से उदाहरण को merge करें [Datasource Policy Examples](/roboflow/roboflow-hi/datasets/adding-data/datasources/datasource-policy-examples.md#bucket-policy).
4. पुष्टि करें कि policy केवल bucket के लिए आवश्यक न्यूनतम read access ही देती है.
5. यदि आपका workspace flow इसकी आवश्यकता करता है, तो Roboflow में संबंधित credential बनाएं.

सही role ARN के लिए अपने Roboflow representative से संपर्क करें, और यदि आपके पास पहले से कोई bucket policy है, तो उदाहरण को उसमें merge करें.

## Roboflow में Credential बनाएं

AWS-side access बनाने के बाद:

1. जाएं [Credentials](https://app.roboflow.com/settings/thirdpartykeys#create) Workspace settings में.
2. क्लिक करें [Add Credential](https://app.roboflow.com/settings/thirdpartykeys#create).
3. AWS S3 Datasource credential type चुनें.
4. आपने जो method चुना है उसके आधार पर role ARN या access key details दर्ज करें.
5. credential सेव करें.
6. जब आप बनाएं तब उस credential को चुनें [Datasource](https://app.roboflow.com/settings/datasources#create).

## Next Step

credential सेव होने के बाद, साथ जारी रखें [Datasources](/roboflow/roboflow-hi/datasets/adding-data/datasources.md) bucket mirroring configure करने के लिए.
