> 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/datasets/hi/create-and-upload/adding-data/datasource-credentials/aws-s3.md).

# AWS S3 क्रेडेंशियल्स

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

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

## एक Credential Type चुनें

Roboflow, S3 Datasources के लिए तीन AWS access patterns का समर्थन करता है: [IAM क्रेडेंशियल्स](#use-iam-access-keys), [Assume Role](#use-assume-role), और [bucket policy द्वारा access](#use-a-bucket-policy-grant).

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

Assume Role सबसे सुरक्षित डिफ़ॉल्ट है क्योंकि यह लंबे समय तक रहने वाले AWS secrets से बचाता है।

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

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

1. Roboflow के लिए एक समर्पित role या IAM identity का उपयोग करें।
2. AWS account के root user का उपयोग न करें।
3. जब भी संभव हो, access को विशिष्ट bucket तक सीमित रखें।
4. प्राथमिकता दें [Assume Role](/datasets/hi/create-and-upload/adding-data/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 keys की आवश्यकता नहीं है। इसके बजाय, अपने 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](/datasets/hi/create-and-upload/adding-data/datasource-policy-examples.md#assume-role-trust-policy) को role में, और placeholders को modal से प्राप्त मानों से बदलें।
6. से bucket-scoped read policy संलग्न करें [Datasource Policy Examples](/datasets/hi/create-and-upload/adding-data/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 को फिर से खोलने पर वही मान दिखाई देता है।

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

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

1. खोलें [IAM Users console](https://console.aws.amazon.com/iam/home#/users).
2. Roboflow के लिए एक समर्पित IAM user बनाएं।
3. AWS managed policy संलग्न करें `AmazonS3ReadOnlyAccess`, या बेहतर होगा कि bucket-scoped policy का उपयोग करें [Datasource Policy Examples](/datasets/hi/create-and-upload/adding-data/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` account के सभी buckets के लिए read access प्रदान करता है। यदि आप least-privilege access चाहते हैं, तो custom bucket-scoped policy का उपयोग करें [Datasource Policy Examples](/datasets/hi/create-and-upload/adding-data/datasource-policy-examples.md#custom-iam-policy).

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

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

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

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

## 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 विवरण दर्ज करें।
5. credential सहेजें।
6. उस credential का चयन करें जब आप बनाएं [Datasource](https://app.roboflow.com/settings/datasources#create).

## अगला चरण

credential सहेजने के बाद, आगे बढ़ें [Datasources](/datasets/hi/create-and-upload/adding-data/datasources.md) bucket mirroring कॉन्फ़िगर करने के लिए।
