এই ডকুমেন্টে গুগল ড্রাইভ এপিআই-এর জন্য নির্দিষ্ট অনুমোদন এবং প্রমাণীকরণ সংক্রান্ত তথ্য রয়েছে। এই ডকুমেন্টটি পড়ার আগে, 'প্রমাণীকরণ এবং অনুমোদন সম্পর্কে জানুন' অংশে গুগল ওয়ার্কস্পেসের সাধারণ প্রমাণীকরণ এবং অনুমোদন সংক্রান্ত তথ্য অবশ্যই পড়ে নিন।
অনুমোদনের জন্য OAuth 2.0 কনফিগার করুন।
আপনার অ্যাপকে অনুমোদন দেওয়ার জন্য, গুগল ড্রাইভ এপিআই-এর পক্ষ থেকে আপনাকে দুটি জায়গায় OAuth স্কোপ নির্ধারণ করতে হয়: গুগল ক্লাউড কনসোল এবং আপনার অ্যাপে।
গুগল ক্লাউড কনসোলে, আপনার অ্যাপের OAuth কনসেন্ট স্ক্রিন কনফিগারেশনে প্রয়োজনীয় স্কোপগুলো অবশ্যই ঘোষণা করতে হবে। এগুলো হলো সর্বোচ্চ স্তরের অনুমতি যা আপনার অ্যাপ অনুরোধ করতে পারে। এটি গুগলের কাছে একটি আনুষ্ঠানিক অনুরোধ হিসেবে কাজ করে এবং ঘোষিত স্কোপগুলোই গুগল কনসেন্ট স্ক্রিনে ব্যবহারকারীদের দেখায়। এর ফলে ব্যবহারকারী স্পষ্টভাবে বুঝতে পারেন যে আপনার অ্যাপ ঠিক কোন ডেটা এবং কাজের জন্য অ্যাক্সেস চাইছে।
ব্যবহারকারী এবং অ্যাপ পর্যালোচকদের কাছে কোন তথ্য প্রদর্শিত হবে তা নির্ধারণ করতে OAuth সম্মতি স্ক্রিনটি কনফিগার করুন ও স্কোপ নির্বাচন করুন এবং আপনার অ্যাপটি নিবন্ধন করুন যাতে আপনি পরবর্তীতে এটি প্রকাশ করতে পারেন।
আপনার অ্যাপে, যখন আপনি এপিআই (API) চালু করেন, তখন সেই সেশনের জন্য আপনার প্রয়োজনীয় নির্দিষ্ট স্কোপগুলো অবশ্যই স্পষ্টভাবে অনুরোধ করতে হবে। যদিও গুগল ক্লাউড কনসোল আপনার অ্যাপের অনুরোধ করার সর্বোচ্চ স্তরের অনুমতি নির্ধারণ করে, কোডই একজন নির্দিষ্ট ব্যবহারকারীর জন্য প্রকৃত অনুমতিগুলো নির্ধারণ করে। এটি নিশ্চিত করতে সাহায্য করে যে অ্যাপটি শুধুমাত্র একটি নির্দিষ্ট কাজের জন্য প্রয়োজনীয় অনুমতিগুলোই চাইছে।
আপনি আপনার অ্যাপের কোডের মধ্যে একটি অ্যারে হিসেবে একবারে এক বা একাধিক OAuth স্কোপ ঘোষণা করতে পারেন।
নিম্নলিখিত কোড নমুনাটি দেখায় কিভাবে একাধিক OAuth স্কোপ ঘোষণা করতে হয়:
জাভা
List<String> SCOPES = Arrays.asList(
DriveScopes.DRIVE_FILE,
DriveScopes.DRIVE_METADATA_READONLY
);
পাইথন
SCOPES = [
"https://www.googleapis.com/auth/drive.file",
"https://www.googleapis.com/auth/drive.metadata.readonly",
]
নোড.জেএস
const SCOPES = [
'https://www.googleapis.com/auth/drive.file',
'https://www.googleapis.com/auth/drive.metadata.readonly'
];
স্কোপ কীভাবে ঘোষণা ও ব্যবহার করা হয়, তা একটি সম্পূর্ণ কোড নমুনায় দেখতে কুইকস্টার্টস দেখুন।
ড্রাইভ এপিআই স্কোপ
আপনার অ্যাপকে প্রদত্ত অ্যাক্সেসের স্তর নির্ধারণ করতে, আপনাকে অথরাইজেশন স্কোপ শনাক্ত ও ঘোষণা করতে হবে। একটি অথরাইজেশন স্কোপ হলো একটি OAuth 2.0 URI স্ট্রিং, যাতে Google Workspace অ্যাপের নাম, এটি কোন ধরনের ডেটা অ্যাক্সেস করে এবং অ্যাক্সেসের স্তর উল্লেখ থাকে। স্কোপগুলো হলো Google Workspace ডেটার সাথে কাজ করার জন্য আপনার অ্যাপের অনুরোধ, যার মধ্যে ব্যবহারকারীদের Google অ্যাকাউন্টের ডেটাও অন্তর্ভুক্ত।
যখন আপনার অ্যাপটি ইনস্টল করা হয়, তখন ব্যবহারকারীকে অ্যাপটিতে ব্যবহৃত স্কোপগুলো যাচাই করতে বলা হয়। সাধারণত, আপনার যথাসম্ভব সবচেয়ে সুনির্দিষ্ট স্কোপটি বেছে নেওয়া উচিত এবং আপনার অ্যাপের প্রয়োজন নেই এমন স্কোপের জন্য অনুরোধ করা থেকে বিরত থাকা উচিত। ব্যবহারকারীরা সীমিত ও সুস্পষ্টভাবে বর্ণিত স্কোপগুলোতে আরও সহজে অ্যাক্সেস দিয়ে থাকেন।
যখনই সম্ভব, অসংবেদনশীল স্কোপ ব্যবহার করুন, কারণ এগুলো ফাইল-ভিত্তিক অ্যাক্সেস প্রদান করে এবং অ্যাপের প্রয়োজনীয় নির্দিষ্ট ফিচারগুলোতে অ্যাক্সেসকে সীমাবদ্ধ করে।
অসংবেদনশীল স্কোপ
অধিকাংশ ব্যবহারের ক্ষেত্রে নিম্নলিখিত ড্রাইভ এপিআই স্কোপগুলো সুপারিশ করা হয়:
| স্কোপ কোড | বর্ণনা |
|---|---|
https://www.googleapis.com/auth/drive.appdata | আপনার গুগল ড্রাইভে অ্যাপটির নিজস্ব কনফিগারেশন ডেটা দেখুন এবং পরিচালনা করুন। |
https://www.googleapis.com/auth/drive.install | অ্যাপগুলিকে 'Open with' বা 'New' মেনুতে একটি বিকল্প হিসাবে প্রদর্শিত হওয়ার অনুমতি দিন। |
https://www.googleapis.com/auth/drive.file | গুগল পিকার এপিআই (Google Picker API) বা অ্যাপের ফাইল পিকার ব্যবহার করে, আপনি কোনো অ্যাপ দিয়ে যে ফাইলগুলো খোলেন অথবা ব্যবহারকারী কোনো অ্যাপের মাধ্যমে যে ফাইলগুলো শেয়ার করে, সেগুলোর নতুন ড্রাইভ ফাইল তৈরি করুন বা বিদ্যমান ফাইলগুলো পরিবর্তন করুন। |
সংবেদনশীল স্কোপ
| স্কোপ কোড | বর্ণনা |
|---|---|
https://www.googleapis.com/auth/drive.apps.readonly | আপনার ড্রাইভ অ্যাক্সেস করার জন্য অনুমোদিত অ্যাপগুলি দেখুন। |
সীমাবদ্ধ পরিধি
| স্কোপ কোড | বর্ণনা |
|---|---|
https://www.googleapis.com/auth/drive | আপনার ড্রাইভের সমস্ত ফাইল দেখুন এবং পরিচালনা করুন। |
https://www.googleapis.com/auth/drive.readonly | আপনার ড্রাইভের সমস্ত ফাইল দেখুন এবং ডাউনলোড করুন। |
https://www.googleapis.com/auth/drive.activity | আপনার ড্রাইভে থাকা ফাইলগুলির কার্যকলাপের রেকর্ড দেখুন এবং তাতে নতুন তথ্য যোগ করুন। |
https://www.googleapis.com/auth/drive.activity.readonly | আপনার ড্রাইভে থাকা ফাইলগুলোর কার্যকলাপের রেকর্ড দেখুন। |
https://www.googleapis.com/auth/drive.meet.readonly | Google Meet দ্বারা তৈরি বা সম্পাদিত Drive ফাইলগুলো দেখুন। |
https://www.googleapis.com/auth/drive.metadata | আপনার ড্রাইভে থাকা ফাইলগুলির মেটাডেটা দেখুন এবং পরিচালনা করুন। |
https://www.googleapis.com/auth/drive.metadata.readonly | আপনার ড্রাইভে থাকা ফাইলগুলির মেটাডেটা দেখুন। |
https://www.googleapis.com/auth/drive.scripts | আপনার গুগল অ্যাপস স্ক্রিপ্ট স্ক্রিপ্টগুলোর আচরণ পরিবর্তন করুন। |
পূর্ববর্তী সারণিগুলিতে থাকা পরিধিগুলি নিম্নলিখিত সংজ্ঞা অনুসারে তাদের সংবেদনশীলতা নির্দেশ করে:
অসংবেদনশীল : এই স্কোপগুলো অনুমোদনের সর্বনিম্ন পরিসর প্রদান করে এবং এর জন্য শুধুমাত্র মৌলিক OAuth অ্যাপ যাচাইকরণ প্রয়োজন। আরও তথ্যের জন্য, যাচাইকরণের প্রয়োজনীয়তা দেখুন।
সংবেদনশীল : এই স্কোপগুলি নির্দিষ্ট গুগল ব্যবহারকারীর ডেটাতে অ্যাক্সেস দেয়, যা ব্যবহারকারীরা আপনার অ্যাপের জন্য অনুমোদন করেন। এগুলির জন্য অতিরিক্ত OAuth অ্যাপ যাচাইকরণ প্রয়োজন। আরও তথ্যের জন্য, সংবেদনশীল এবং সীমাবদ্ধ স্কোপের প্রয়োজনীয়তা দেখুন।
সীমাবদ্ধ : এই স্কোপগুলো গুগল ব্যবহারকারীর ডেটাতে ব্যাপক অ্যাক্সেস প্রদান করে এবং এর জন্য সীমাবদ্ধ স্কোপের OAuth অ্যাপ ভেরিফিকেশন প্রয়োজন। আরও তথ্যের জন্য, গুগল এপিআই সার্ভিসেস ইউজার ডেটা পলিসি এবং নির্দিষ্ট এপিআই স্কোপের জন্য অতিরিক্ত প্রয়োজনীয়তা দেখুন। এছাড়াও গুগল ড্রাইভের পরিষেবার শর্তাবলী দেখুন।
যদি আপনি সার্ভারে সীমাবদ্ধ পরিধির ডেটা সংরক্ষণ করেন (বা প্রেরণ করেন), তাহলে আপনাকে অবশ্যই একটি নিরাপত্তা মূল্যায়নের মধ্য দিয়ে যেতে হবে।
আপনার অ্যাপের যদি অন্য কোনো গুগল এপিআই-তে অ্যাক্সেসের প্রয়োজন হয়, তাহলে আপনি সেই স্কোপগুলোও যোগ করতে পারেন। গুগল এপিআই স্কোপ সম্পর্কে আরও তথ্যের জন্য, “Using OAuth 2.0 to Access Google APIs” দেখুন।
নির্দিষ্ট OAuth 2.0 স্কোপ সম্পর্কে আরও তথ্যের জন্য, Google API-এর জন্য OAuth 2.0 স্কোপ দেখুন।
সীমিত পরিসরের জন্য যোগ্যতা
শুধুমাত্র নির্দিষ্ট ধরনের অ্যাপ্লিকেশনগুলোই গুগল ড্রাইভের সীমাবদ্ধ পরিধি ব্যবহার করার অনুমতি পায়। যোগ্যতা অর্জনের জন্য, আপনার অ্যাপটিকে নিম্নলিখিত বিভাগগুলির মধ্যে একটির অন্তর্ভুক্ত হতে হবে:
ব্যাকআপ ও সিঙ্ক : প্ল্যাটফর্ম-ভিত্তিক এবং ওয়েব অ্যাপ, যা ব্যবহারকারীদের ড্রাইভ ফাইলগুলোর লোকাল সিঙ্ক বা স্বয়ংক্রিয় ব্যাকআপ প্রদান করে।
উৎপাদনশীলতা ও শিক্ষা : যেসব অ্যাপের প্রাথমিক ইউজার ইন্টারফেসে ড্রাইভ ফাইল, মেটাডেটা বা পারমিশনের সাথে ইন্টারঅ্যাকশন জড়িত থাকতে পারে। এই অ্যাপগুলোর মধ্যে রয়েছে টাস্ক ম্যানেজমেন্ট, নোট নেওয়া, ওয়ার্কগ্রুপ কমিউনিকেশন এবং ক্লাসরুম কোলাবোরেশন অ্যাপ।
রিপোর্টিং ও নিরাপত্তা : এমন অ্যাপ যা ব্যবহারকারী বা গ্রাহকদের ফাইল শেয়ার বা অ্যাক্সেস করার পদ্ধতি সম্পর্কে ধারণা দেয়।
সীমাবদ্ধ স্কোপ ব্যবহার চালিয়ে যেতে, আপনাকে আপনার অ্যাপটিকে সীমাবদ্ধ স্কোপ যাচাইকরণের জন্য প্রস্তুত করতে হবে।
বিদ্যমান অ্যাপকে সীমাবদ্ধ পরিধি থেকে স্থানান্তর করুন
আপনার Drive অ্যাপ যদি সীমাবদ্ধ স্কোপ ব্যবহার করে, তাহলে আমরা একটি অসংবেদনশীল Drive API স্কোপে স্থানান্তরিত হওয়ার পরামর্শ দিই। drive.file এর মতো অসংবেদনশীল স্কোপ ব্যবহার করলে, অ্যাপের প্রয়োজনীয় নির্দিষ্ট ফিচারগুলোতে ফাইল-ভিত্তিক ও সীমিত অ্যাক্সেস পাওয়া যায়।
অনেক অ্যাপ কোনো পরিবর্তন ছাড়াই ফাইল-ভিত্তিক অ্যাক্সেসে রূপান্তরিত হতে পারে।
আপনি যদি আপনার নিজস্ব ফাইল পিকার ব্যবহার করেন, তাহলে আমরা গুগল পিকার এপিআই (Google Picker API) ব্যবহার করার পরামর্শ দিই, যা বিভিন্ন স্কোপকে সম্পূর্ণরূপে সমর্থন করে।
ড্রাইভ ফাইল স্কোপের সুবিধাসমূহ
Google Picker API-এর সাথে drive.file OAuth স্কোপের ব্যবহার আপনার অ্যাপের ব্যবহারকারীর অভিজ্ঞতা এবং নিরাপত্তা উভয়কেই উন্নত করে।
drive.file OAuth স্কোপ ব্যবহারকারীদের বেছে নেওয়ার সুযোগ দেয় যে তারা আপনার অ্যাপের সাথে কোন ফাইলগুলো শেয়ার করতে চান। এটি তাদের আরও বেশি নিয়ন্ত্রণ ও আস্থা দেয় যে তাদের ফাইলগুলোতে আপনার অ্যাপের অ্যাক্সেস সীমিত এবং অধিক সুরক্ষিত। এর বিপরীতে, ড্রাইভের সমস্ত ফাইলে ব্যাপক অ্যাক্সেসের প্রয়োজন হলে তা ব্যবহারকারীদের আপনার অ্যাপের সাথে ইন্টারঅ্যাক্ট করতে নিরুৎসাহিত করতে পারে।
drive.file স্কোপ ব্যবহার করার কয়েকটি কারণ নিচে দেওয়া হলো:
ব্যবহারযোগ্যতা :
drive.fileস্কোপটি সমস্ত Drive API REST রিসোর্সের সাথে কাজ করে, যার মানে হলো আপনি এটিকে আরও বিস্তৃত OAuth স্কোপের মতোই ব্যবহার করতে পারেন।বৈশিষ্ট্য : গুগল পিকার এপিআই ড্রাইভ ইউআই-এর মতো একটি ইন্টারফেস প্রদান করে। এর মধ্যে রয়েছে ড্রাইভ ফাইলের প্রিভিউ ও থাম্বনেইল দেখানোর জন্য বিভিন্ন ভিউ এবং একটি ইনলাইন, মোডাল উইন্ডো, যার ফলে ব্যবহারকারীদের মূল অ্যাপ থেকে বের হতে হয় না।
সুবিধা : গুগল পিকার ফাইলে ফিল্টার ব্যবহার করার সময় অ্যাপগুলো ড্রাইভের নির্দিষ্ট কিছু ফাইল টাইপের (যেমন গুগল ডক্স, শিটস এবং ফটো) জন্যও ফিল্টার প্রয়োগ করতে পারে।
সরল যাচাইকরণ :
drive.fileঅসংবেদনশীল হওয়ায়, এটি আরও সুবিন্যস্ত যাচাইকরণ প্রক্রিয়ার সুযোগ করে দেয়।
রিফ্রেশ টোকেনগুলি নিরাপদে সংরক্ষণ করুন
ড্রাইভ এপিআই ব্যবহার করে ব্যক্তিগত ডেটা অ্যাক্সেস করতে, আপনার অ্যাপকে অবশ্যই একটি অ্যাক্সেস টোকেন সংগ্রহ করতে হবে যা সেই এপিআই-তে অ্যাক্সেসের অনুমতি দেয়। একটি একক অ্যাক্সেস টোকেন একাধিক এপিআই-তে বিভিন্ন মাত্রার অ্যাক্সেস প্রদান করতে পারে, যা আপনার অনুরোধ করা স্কোপ দ্বারা নিয়ন্ত্রিত হয়।
যেহেতু অ্যাক্সেস টোকেনগুলোর মেয়াদ কম থাকে, তাই ড্রাইভ এপিআই-তে দীর্ঘমেয়াদী অ্যাক্সেসের জন্য আপনাকে অবশ্যই রিফ্রেশ টোকেন ব্যবহার করতে হবে। একটি রিফ্রেশ টোকেন আপনার অ্যাপকে নতুন অ্যাক্সেস টোকেনের জন্য অনুরোধ করার সুযোগ দেয়।
রিফ্রেশ টোকেনগুলো নিরাপদ ও দীর্ঘমেয়াদী সংরক্ষণে রাখুন এবং যতক্ষণ সেগুলোর মেয়াদ থাকবে, ততক্ষণ ব্যবহার করতে থাকুন।
আরও তথ্যের জন্য, “Using OAuth 2.0 to Access Google APIs” দেখুন।
সম্পর্কিত বিষয়
- Google Workspace-এ প্রমাণীকরণ এবং অনুমোদন সম্পর্কে একটি সার্বিক ধারণা পেতে, প্রমাণীকরণ ও অনুমোদন সম্পর্কে জানুন (Learn about authentication & authorization) দেখুন।
- গুগল ক্লাউডে প্রমাণীকরণ এবং অনুমোদন সম্পর্কে একটি সার্বিক ধারণা পেতে, প্রমাণীকরণ সার্বিক ধারণা দেখুন।
- সার্ভিস অ্যাকাউন্ট সম্পর্কে আরও জানতে, সার্ভিস অ্যাকাউন্টস দেখুন।
- সমস্যা সমাধানে সাহায্যের জন্য, ত্রুটি সমাধান দেখুন।