আনলিঙ্ক করা আপনার প্ল্যাটফর্ম বা Google থেকে শুরু করা হতে পারে, এবং উভয়ের উপর একটি সামঞ্জস্যপূর্ণ লিঙ্কের অবস্থা প্রদর্শন সর্বোত্তম ব্যবহারকারীর অভিজ্ঞতা প্রদান করে। একটি টোকেন প্রত্যাহার এন্ডপয়েন্ট বা ক্রস-অ্যাকাউন্ট সুরক্ষার জন্য সমর্থন Google অ্যাকাউন্ট লিঙ্ক করার জন্য ঐচ্ছিক।
নিম্নলিখিত যেকোন একটির দ্বারা অ্যাকাউন্টগুলি লিঙ্কমুক্ত করা যেতে পারে:
- থেকে ব্যবহারকারী অনুরোধ
- একটি Google অ্যাপ্লিকেশন বা Google অ্যাকাউন্ট সেটিংস
- আপনার প্ল্যাটফর্ম
- মেয়াদ শেষ হওয়া রিফ্রেশ টোকেন পুনর্নবীকরণ করতে ব্যর্থতা
- আপনার বা Google দ্বারা শুরু করা অন্যান্য ইভেন্ট। উদাহরণস্বরূপ, অপব্যবহার এবং হুমকি শনাক্তকরণ পরিষেবার দ্বারা অ্যাকাউন্ট সাসপেনশন।
ব্যবহারকারী Google থেকে লিঙ্কমুক্ত করার অনুরোধ করেছেন
ব্যবহারকারীর Google অ্যাকাউন্ট বা অ্যাপের মাধ্যমে শুরু করা অ্যাকাউন্ট আনলিঙ্ক করা কোনো পূর্বে জারি করা অ্যাক্সেস মুছে দেয় এবং টোকেন রিফ্রেশ করে, ব্যবহারকারীর সম্মতি সরিয়ে দেয় এবং আপনি যদি একটি বাস্তবায়ন করতে চান তাহলে ঐচ্ছিকভাবে আপনার টোকেন প্রত্যাহার এন্ডপয়েন্টকে কল করে।
ব্যবহারকারী আপনার প্ল্যাটফর্ম থেকে লিঙ্কমুক্ত করার অনুরোধ করেছেন
ব্যবহারকারীদের লিঙ্কমুক্ত করার জন্য আপনাকে একটি ব্যবস্থা প্রদান করতে হবে, যেমন তাদের অ্যাকাউন্টের URL। আপনি যদি ব্যবহারকারীদের লিঙ্কমুক্ত করার উপায় না দেন, তাহলে Google অ্যাকাউন্টে একটি লিঙ্ক অন্তর্ভুক্ত করুন যাতে ব্যবহারকারীরা তাদের লিঙ্ক করা অ্যাকাউন্ট পরিচালনা করতে পারে।
আপনি ঝুঁকি এবং ঘটনা শেয়ারিং এবং সহযোগিতা (RISC) বাস্তবায়ন করতে এবং ব্যবহারকারীদের অ্যাকাউন্ট লিঙ্কিং স্থিতিতে পরিবর্তনের বিষয়ে Google-কে অবহিত করতে পারেন৷ এটি একটি উন্নত ব্যবহারকারীর অভিজ্ঞতার জন্য মঞ্জুরি দেয় যেখানে আপনার প্ল্যাটফর্ম এবং Google উভয়ই একটি রিফ্রেশ বা অ্যাক্সেস টোকেন অনুরোধের উপর নির্ভর করার প্রয়োজন ছাড়াই একটি বর্তমান এবং সামঞ্জস্যপূর্ণ লিঙ্কিং স্ট্যাটাস দেখায়।
টোকেনের মেয়াদ শেষ
একটি মসৃণ ব্যবহারকারীর অভিজ্ঞতা প্রদান করতে এবং পরিষেবার ব্যাঘাত এড়াতে, Google তাদের জীবনকালের শেষের কাছাকাছি রিফ্রেশ টোকেনগুলি পুনর্নবীকরণ করার চেষ্টা করে৷ কিছু পরিস্থিতিতে, একটি বৈধ রিফ্রেশ টোকেন অনুপলব্ধ হলে অ্যাকাউন্টগুলি পুনরায় লিঙ্ক করার জন্য ব্যবহারকারীর সম্মতির প্রয়োজন হতে পারে।
একাধিক অপ্রয়োজনীয় অ্যাক্সেস এবং রিফ্রেশ টোকেন সমর্থন করার জন্য আপনার প্ল্যাটফর্ম ডিজাইন করা ক্লাস্টার পরিবেশের মধ্যে ক্লায়েন্ট-সার্ভার এক্সচেঞ্জে উপস্থিত রেস অবস্থাকে কমিয়ে আনতে পারে, ব্যবহারকারীর বিঘ্ন এড়াতে পারে এবং জটিল সময় এবং ত্রুটি পরিচালনার পরিস্থিতি হ্রাস করতে পারে। যদিও শেষ পর্যন্ত সামঞ্জস্যপূর্ণ, উভয় পূর্ববর্তী এবং নতুন জারি করা মেয়াদোত্তীর্ণ টোকেনগুলি ক্লায়েন্ট-সার্ভার টোকেন পুনর্নবীকরণ বিনিময়ের সময় এবং ক্লাস্টার সিঙ্ক্রোনাইজেশনের আগে অল্প সময়ের জন্য ব্যবহার করা যেতে পারে। উদাহরণস্বরূপ, আপনার পরিষেবার জন্য একটি Google অনুরোধ যা পূর্ববর্তী অপ্রয়োজনীয় অ্যাক্সেস টোকেন ব্যবহার করে আপনি একটি নতুন অ্যাক্সেস টোকেন ইস্যু করার পরেই ঘটে, কিন্তু Google-এ প্রাপ্তি এবং ক্লাস্টার সিঙ্ক্রোনাইজেশন হওয়ার আগে। টোকেন ঘূর্ণন রিফ্রেশ করার জন্য বিকল্প নিরাপত্তা ব্যবস্থা সুপারিশ করা হয়।
অন্যান্য ঘটনা
অন্যান্য বিভিন্ন কারণে অ্যাকাউন্টগুলি আনলিঙ্ক করা যেতে পারে, যেমন নিষ্ক্রিয়তা, সাসপেনশন, দূষিত আচরণ এবং আরও অনেক কিছু। এই ধরনের পরিস্থিতিতে, আপনার প্ল্যাটফর্ম এবং Google ব্যবহারকারীর অ্যাকাউন্টগুলিকে সর্বোত্তমভাবে পরিচালনা করতে পারে এবং অ্যাকাউন্ট এবং লিঙ্কের অবস্থার পরিবর্তনগুলি একে অপরকে জানিয়ে পুনরায় লিঙ্ক করতে পারে।
Google-এর কল করার জন্য একটি টোকেন প্রত্যাহার এন্ডপয়েন্ট প্রয়োগ করুন এবং আপনার প্ল্যাটফর্ম এবং Google সামঞ্জস্যপূর্ণ ব্যবহারকারী অ্যাকাউন্ট লিঙ্কের অবস্থা বজায় রাখার জন্য RISC ব্যবহার করে আপনার টোকেন প্রত্যাহার ইভেন্টগুলির Google-কে অবহিত করুন।
টোকেন প্রত্যাহার শেষ পয়েন্ট
If you support an OAuth 2.0 token revocation endpoint, your platform can receive notifications from Google. This lets you inform users of link state changes, invalidate a token, and cleanup security credentials and authorization grants.
The request has the following form:
POST /revoke HTTP/1.1 Host: oauth2.example.com Content-Type: application/x-www-form-urlencoded client_id=GOOGLE_CLIENT_ID&client_secret=GOOGLE_CLIENT_SECRET&token=TOKEN&token_type_hint=refresh_token
Your token revocation endpoint must be able to handle the following parameters:
Revocation endpoint parameters | |
---|---|
client_id |
A string that identifies the request origin as Google. This string must be registered within your system as Google's unique identifier. |
client_secret |
A secret string that you registered with Google for your service. |
token |
The token to be revoked. |
token_type_hint |
(Optional) The type of token being revoked, either an
access_token or refresh_token . If unspecified,
defaults to access_token . |
Return a response when the token is deleted or invalid. See the following for an example:
HTTP/1.1 200 Success Content-Type: application/json;charset=UTF-8
If the token can't be deleted for any reason, return a 503 response code, as shown in the following example:
HTTP/1.1 503 Service Unavailable Content-Type: application/json;charset=UTF-8 Retry-After: HTTP-date / delay-seconds
Google retries the request later or as requested by Retry-After
.
ক্রস-অ্যাকাউন্ট সুরক্ষা (RISC)
আপনি ক্রস-অ্যাকাউন্ট সুরক্ষা সমর্থন করলে, অ্যাক্সেস বা রিফ্রেশ টোকেন প্রত্যাহার করা হলে আপনার প্ল্যাটফর্ম Google কে অবহিত করতে পারে। এটি Google-কে ব্যবহারকারীদের লিঙ্কের অবস্থার পরিবর্তন, টোকেন বাতিল, নিরাপত্তা শংসাপত্র পরিষ্কার এবং অনুমোদনের অনুদান সম্পর্কে অবহিত করতে দেয়।
ক্রস-অ্যাকাউন্ট সুরক্ষা OpenID ফাউন্ডেশনে বিকশিত RISC স্ট্যান্ডার্ডের উপর ভিত্তি করে।
একটি সিকিউরিটি ইভেন্ট টোকেন ব্যবহার করা হয় টোকেন প্রত্যাহার সম্পর্কে Google কে জানানোর জন্য।
ডিকোড করা হলে, একটি টোকেন প্রত্যাহার ইভেন্ট নিম্নলিখিত উদাহরণের মত দেখায়:
{
"iss":"http://risc.example.com",
"iat":1521068887,
"aud":"google_account_linking",
"jti":"101942095",
"toe": "1508184602",
"events": {
"https://schemas.openid.net/secevent/oauth/event-type/token-revoked":{
"subject_type": "oauth_token",
"token_type": "refresh_token",
"token_identifier_alg": "hash_SHA512_double",
"token": "double SHA-512 hash value of token"
}
}
}
সিকিউরিটি ইভেন্ট টোকেনগুলি যেগুলি আপনি Google কে টোকেন প্রত্যাহার ইভেন্টগুলিকে অবহিত করার জন্য ব্যবহার করেন সেগুলি অবশ্যই নিম্নলিখিত টেবিলের প্রয়োজনীয়তাগুলি মেনে চলবে:
টোকেন প্রত্যাহার ইভেন্ট | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
iss | ইস্যুকারীর দাবি: এটি একটি URL যা আপনি হোস্ট করেন এবং এটি নিবন্ধনের সময় Google-এর সাথে শেয়ার করা হয়। | ||||||||||
aud | শ্রোতাদের দাবি: এটি Google কে JWT প্রাপক হিসাবে চিহ্নিত করে৷ এটি অবশ্যই google_account_linking এ সেট করতে হবে। | ||||||||||
jti | JWT আইডি দাবি: এটি একটি অনন্য আইডি যা আপনি প্রতিটি নিরাপত্তা ইভেন্ট টোকেনের জন্য তৈরি করেন। | ||||||||||
iat | দাবীতে ইস্যু করা: এটি একটি NumericDate তারিখ যা এই নিরাপত্তা ইভেন্ট টোকেন তৈরি করার সময়কে প্রতিনিধিত্ব করে। | ||||||||||
toe | ইভেন্ট দাবির সময়: এটি একটি ঐচ্ছিক NumericDate মান যা টোকেন প্রত্যাহার করার সময়কে প্রতিনিধিত্ব করে। | ||||||||||
exp | মেয়াদ শেষ হওয়ার সময় দাবি: এই ক্ষেত্রটি অন্তর্ভুক্ত করবেন না , কারণ এই বিজ্ঞপ্তির ফলে ইভেন্টটি ইতিমধ্যেই ঘটেছে৷ | ||||||||||
events |
|
ক্ষেত্রের ধরন এবং বিন্যাস সম্পর্কে আরও তথ্যের জন্য, JSON ওয়েব টোকেন (JWT) দেখুন।
,আনলিঙ্ক করা আপনার প্ল্যাটফর্ম বা Google থেকে শুরু করা হতে পারে, এবং উভয়ের উপর একটি সামঞ্জস্যপূর্ণ লিঙ্কের অবস্থা প্রদর্শন সর্বোত্তম ব্যবহারকারীর অভিজ্ঞতা প্রদান করে। একটি টোকেন প্রত্যাহার এন্ডপয়েন্ট বা ক্রস-অ্যাকাউন্ট সুরক্ষার জন্য সমর্থন Google অ্যাকাউন্ট লিঙ্ক করার জন্য ঐচ্ছিক।
নিম্নলিখিত যেকোন একটির দ্বারা অ্যাকাউন্টগুলি লিঙ্কমুক্ত করা যেতে পারে:
- থেকে ব্যবহারকারী অনুরোধ
- একটি Google অ্যাপ্লিকেশন বা Google অ্যাকাউন্ট সেটিংস
- আপনার প্ল্যাটফর্ম
- মেয়াদ শেষ হওয়া রিফ্রেশ টোকেন পুনর্নবীকরণ করতে ব্যর্থতা
- আপনার বা Google দ্বারা শুরু করা অন্যান্য ইভেন্ট। উদাহরণস্বরূপ, অপব্যবহার এবং হুমকি শনাক্তকরণ পরিষেবার দ্বারা অ্যাকাউন্ট সাসপেনশন।
ব্যবহারকারী Google থেকে লিঙ্কমুক্ত করার অনুরোধ করেছেন
ব্যবহারকারীর Google অ্যাকাউন্ট বা অ্যাপের মাধ্যমে শুরু করা অ্যাকাউন্ট আনলিঙ্ক করা কোনো পূর্বে জারি করা অ্যাক্সেস মুছে দেয় এবং টোকেন রিফ্রেশ করে, ব্যবহারকারীর সম্মতি সরিয়ে দেয় এবং আপনি যদি একটি বাস্তবায়ন করতে চান তাহলে ঐচ্ছিকভাবে আপনার টোকেন প্রত্যাহার এন্ডপয়েন্টকে কল করে।
ব্যবহারকারী আপনার প্ল্যাটফর্ম থেকে লিঙ্কমুক্ত করার অনুরোধ করেছেন
ব্যবহারকারীদের লিঙ্কমুক্ত করার জন্য আপনাকে একটি ব্যবস্থা প্রদান করতে হবে, যেমন তাদের অ্যাকাউন্টের URL। আপনি যদি ব্যবহারকারীদের লিঙ্কমুক্ত করার উপায় না দেন, তাহলে Google অ্যাকাউন্টে একটি লিঙ্ক অন্তর্ভুক্ত করুন যাতে ব্যবহারকারীরা তাদের লিঙ্ক করা অ্যাকাউন্ট পরিচালনা করতে পারে।
আপনি ঝুঁকি এবং ঘটনা শেয়ারিং এবং সহযোগিতা (RISC) বাস্তবায়ন করতে এবং ব্যবহারকারীদের অ্যাকাউন্ট লিঙ্কিং স্থিতিতে পরিবর্তনের বিষয়ে Google-কে অবহিত করতে পারেন৷ এটি একটি উন্নত ব্যবহারকারীর অভিজ্ঞতার জন্য মঞ্জুরি দেয় যেখানে আপনার প্ল্যাটফর্ম এবং Google উভয়ই একটি রিফ্রেশ বা অ্যাক্সেস টোকেন অনুরোধের উপর নির্ভর করার প্রয়োজন ছাড়াই একটি বর্তমান এবং সামঞ্জস্যপূর্ণ লিঙ্কিং স্ট্যাটাস দেখায়।
টোকেনের মেয়াদ শেষ
একটি মসৃণ ব্যবহারকারীর অভিজ্ঞতা প্রদান করতে এবং পরিষেবার ব্যাঘাত এড়াতে, Google তাদের জীবনকালের শেষের কাছাকাছি রিফ্রেশ টোকেনগুলি পুনর্নবীকরণ করার চেষ্টা করে৷ কিছু পরিস্থিতিতে, একটি বৈধ রিফ্রেশ টোকেন অনুপলব্ধ হলে অ্যাকাউন্টগুলি পুনরায় লিঙ্ক করার জন্য ব্যবহারকারীর সম্মতির প্রয়োজন হতে পারে।
একাধিক অপ্রয়োজনীয় অ্যাক্সেস এবং রিফ্রেশ টোকেন সমর্থন করার জন্য আপনার প্ল্যাটফর্ম ডিজাইন করা ক্লাস্টার পরিবেশের মধ্যে ক্লায়েন্ট-সার্ভার এক্সচেঞ্জে উপস্থিত রেস অবস্থাকে কমিয়ে আনতে পারে, ব্যবহারকারীর বিঘ্ন এড়াতে পারে এবং জটিল সময় এবং ত্রুটি পরিচালনার পরিস্থিতি হ্রাস করতে পারে। যদিও শেষ পর্যন্ত সামঞ্জস্যপূর্ণ, উভয় পূর্ববর্তী এবং নতুন জারি করা মেয়াদোত্তীর্ণ টোকেনগুলি ক্লায়েন্ট-সার্ভার টোকেন পুনর্নবীকরণ বিনিময়ের সময় এবং ক্লাস্টার সিঙ্ক্রোনাইজেশনের আগে অল্প সময়ের জন্য ব্যবহার করা যেতে পারে। উদাহরণস্বরূপ, আপনার পরিষেবার জন্য একটি Google অনুরোধ যা পূর্ববর্তী অপ্রয়োজনীয় অ্যাক্সেস টোকেন ব্যবহার করে আপনি একটি নতুন অ্যাক্সেস টোকেন ইস্যু করার পরেই ঘটে, কিন্তু Google-এ প্রাপ্তি এবং ক্লাস্টার সিঙ্ক্রোনাইজেশন হওয়ার আগে। টোকেন ঘূর্ণন রিফ্রেশ করার জন্য বিকল্প নিরাপত্তা ব্যবস্থা সুপারিশ করা হয়।
অন্যান্য ঘটনা
অন্যান্য বিভিন্ন কারণে অ্যাকাউন্টগুলি আনলিঙ্ক করা যেতে পারে, যেমন নিষ্ক্রিয়তা, সাসপেনশন, দূষিত আচরণ এবং আরও অনেক কিছু। এই ধরনের পরিস্থিতিতে, আপনার প্ল্যাটফর্ম এবং Google ব্যবহারকারীর অ্যাকাউন্টগুলিকে সর্বোত্তমভাবে পরিচালনা করতে পারে এবং অ্যাকাউন্ট এবং লিঙ্কের অবস্থার পরিবর্তনগুলি একে অপরকে জানিয়ে পুনরায় লিঙ্ক করতে পারে।
Google-এর কল করার জন্য একটি টোকেন প্রত্যাহার এন্ডপয়েন্ট প্রয়োগ করুন এবং আপনার প্ল্যাটফর্ম এবং Google সামঞ্জস্যপূর্ণ ব্যবহারকারী অ্যাকাউন্ট লিঙ্কের অবস্থা বজায় রাখার জন্য RISC ব্যবহার করে আপনার টোকেন প্রত্যাহার ইভেন্টগুলির Google-কে অবহিত করুন।
টোকেন প্রত্যাহার শেষ পয়েন্ট
If you support an OAuth 2.0 token revocation endpoint, your platform can receive notifications from Google. This lets you inform users of link state changes, invalidate a token, and cleanup security credentials and authorization grants.
The request has the following form:
POST /revoke HTTP/1.1 Host: oauth2.example.com Content-Type: application/x-www-form-urlencoded client_id=GOOGLE_CLIENT_ID&client_secret=GOOGLE_CLIENT_SECRET&token=TOKEN&token_type_hint=refresh_token
Your token revocation endpoint must be able to handle the following parameters:
Revocation endpoint parameters | |
---|---|
client_id |
A string that identifies the request origin as Google. This string must be registered within your system as Google's unique identifier. |
client_secret |
A secret string that you registered with Google for your service. |
token |
The token to be revoked. |
token_type_hint |
(Optional) The type of token being revoked, either an
access_token or refresh_token . If unspecified,
defaults to access_token . |
Return a response when the token is deleted or invalid. See the following for an example:
HTTP/1.1 200 Success Content-Type: application/json;charset=UTF-8
If the token can't be deleted for any reason, return a 503 response code, as shown in the following example:
HTTP/1.1 503 Service Unavailable Content-Type: application/json;charset=UTF-8 Retry-After: HTTP-date / delay-seconds
Google retries the request later or as requested by Retry-After
.
ক্রস-অ্যাকাউন্ট সুরক্ষা (RISC)
আপনি ক্রস-অ্যাকাউন্ট সুরক্ষা সমর্থন করলে, অ্যাক্সেস বা রিফ্রেশ টোকেন প্রত্যাহার করা হলে আপনার প্ল্যাটফর্ম Google কে অবহিত করতে পারে। এটি Google-কে ব্যবহারকারীদের লিঙ্কের অবস্থার পরিবর্তন, টোকেন বাতিল, নিরাপত্তা শংসাপত্র পরিষ্কার এবং অনুমোদনের অনুদান সম্পর্কে অবহিত করতে দেয়।
ক্রস-অ্যাকাউন্ট সুরক্ষা OpenID ফাউন্ডেশনে বিকশিত RISC স্ট্যান্ডার্ডের উপর ভিত্তি করে।
একটি সিকিউরিটি ইভেন্ট টোকেন ব্যবহার করা হয় টোকেন প্রত্যাহার সম্পর্কে Google কে জানানোর জন্য।
ডিকোড করা হলে, একটি টোকেন প্রত্যাহার ইভেন্ট নিম্নলিখিত উদাহরণের মত দেখায়:
{
"iss":"http://risc.example.com",
"iat":1521068887,
"aud":"google_account_linking",
"jti":"101942095",
"toe": "1508184602",
"events": {
"https://schemas.openid.net/secevent/oauth/event-type/token-revoked":{
"subject_type": "oauth_token",
"token_type": "refresh_token",
"token_identifier_alg": "hash_SHA512_double",
"token": "double SHA-512 hash value of token"
}
}
}
সিকিউরিটি ইভেন্ট টোকেনগুলি যেগুলি আপনি Google কে টোকেন প্রত্যাহার ইভেন্টগুলিকে অবহিত করার জন্য ব্যবহার করেন সেগুলি অবশ্যই নিম্নলিখিত টেবিলের প্রয়োজনীয়তাগুলি মেনে চলবে:
টোকেন প্রত্যাহার ইভেন্ট | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
iss | ইস্যুকারীর দাবি: এটি একটি URL যা আপনি হোস্ট করেন এবং এটি নিবন্ধনের সময় Google-এর সাথে শেয়ার করা হয়। | ||||||||||
aud | শ্রোতাদের দাবি: এটি Google কে JWT প্রাপক হিসাবে চিহ্নিত করে৷ এটি অবশ্যই google_account_linking এ সেট করতে হবে। | ||||||||||
jti | JWT আইডি দাবি: এটি একটি অনন্য আইডি যা আপনি প্রতিটি নিরাপত্তা ইভেন্ট টোকেনের জন্য তৈরি করেন। | ||||||||||
iat | দাবীতে ইস্যু করা: এটি একটি NumericDate তারিখ যা এই নিরাপত্তা ইভেন্ট টোকেন তৈরি করার সময়কে প্রতিনিধিত্ব করে। | ||||||||||
toe | ইভেন্ট দাবির সময়: এটি একটি ঐচ্ছিক NumericDate মান যা টোকেন প্রত্যাহার করার সময়কে প্রতিনিধিত্ব করে। | ||||||||||
exp | মেয়াদ শেষ হওয়ার সময় দাবি: এই ক্ষেত্রটি অন্তর্ভুক্ত করবেন না , কারণ এই বিজ্ঞপ্তির ফলে ইভেন্টটি ইতিমধ্যেই ঘটেছে৷ | ||||||||||
events |
|
ক্ষেত্রের ধরন এবং বিন্যাস সম্পর্কে আরও তথ্যের জন্য, JSON ওয়েব টোকেন (JWT) দেখুন।