คำถามติดแท็ก access-token

14
เหตุใด OAuth v2 จึงมีทั้งโทเค็นการเข้าถึงและรีเฟรช
ส่วน 4.2 ของร่างโปรโตคอล OAuth 2.0 ระบุว่าเซิร์ฟเวอร์การอนุญาตสามารถส่งคืนทั้งสองได้ access_token (ซึ่งใช้ในการตรวจสอบสิทธิ์ของตัวเองด้วยทรัพยากร) เช่นเดียวกับ a refresh_tokenซึ่งใช้เพื่อสร้างใหม่อย่างแท้จริงaccess_token: https://tools.ietf.org/html/rfc6749#section-4.2 ทำไมถึงมีทั้งคู่? ทำไมไม่เพียงแค่ทำให้access_tokenครั้งสุดท้ายตราบเท่าที่refresh_tokenและไม่มีrefresh_token?

14
ไม่ได้รับโทเค็นการรีเฟรชของ Google OAuth
ฉันต้องการรับโทเค็นการเข้าถึงจาก Google Google API บอกว่าจะได้รับโทเค็นการเข้าถึงส่งรหัสและพารามิเตอร์อื่น ๆ ไปยังหน้าการสร้างโทเค็นและการตอบสนองจะเป็นวัตถุ JSON เช่น: { "access_token" : "ya29.AHES6ZTtm7SuokEB-RGtbBty9IIlNiP9-eNMMQKtXdMP3sfjL1Fc", "token_type" : "Bearer", "expires_in" : 3600, "refresh_token" : "1/HKSmLFXzqP0leUihZp2xUt3-5wkU7Gmu2Os_eBnzw74" } อย่างไรก็ตามฉันไม่ได้รับโทเค็นการรีเฟรช การตอบสนองในกรณีของฉันคือ: { "access_token" : "ya29.sddsdsdsdsds_h9v_nF0IR7XcwDK8XFB2EbvtxmgvB-4oZ8oU", "token_type" : "Bearer", "expires_in" : 3600 }

4
เกิดอะไรขึ้นถ้า JWT ถูกขโมย?
ฉันพยายามใช้การพิสูจน์ตัวตนแบบไร้รัฐกับ JWT สำหรับ RESTful API ของฉัน AFAIK, JWT นั้นเป็นสตริงเข้ารหัสที่ส่งผ่านเป็นส่วนหัว HTTP ในระหว่างการเรียกใช้ REST แต่ถ้ามีคนดักฟังที่เห็นคำขอและขโมยโทเค็นล่ะ? จากนั้นเขาจะสามารถปลอมแปลงคำขอด้วยตัวตนของฉันได้อย่างไร อันที่จริงความกังวลนี้ใช้กับทุกการตรวจสอบ token-based จะป้องกันได้อย่างไร ช่องทางที่ปลอดภัยเช่น HTTPS

4
การรับรองความถูกต้องโดยใช้โทเค็นใน ASP.NET Core
ฉันทำงานกับแอปพลิเคชัน ASP.NET Core ฉันกำลังพยายามใช้การรับรองความถูกต้องโดยใช้ Token แต่ไม่สามารถหาวิธีใช้ระบบรักษาความปลอดภัยใหม่สำหรับกรณีของฉันได้ ฉันดูตัวอย่างแล้วแต่พวกเขาก็ไม่ได้ช่วยอะไรมากพวกเขาใช้การตรวจสอบความถูกต้องคุกกี้หรือการตรวจสอบภายนอก (GitHub, Microsoft, Twitter) สถานการณ์ของฉันคืออะไร: แอปพลิเคชัน angularjs ควรขอ/tokenชื่อผู้ใช้และรหัสผ่าน URL ที่ผ่าน WebApi ควรอนุญาตผู้ใช้และส่งคืนaccess_tokenซึ่งแอป angularjs จะใช้ในคำขอต่อไปนี้ ฉันได้พบบทความที่ยอดเยี่ยมเกี่ยวกับการใช้สิ่งที่ฉันต้องการใน ASP.NET - Token Based Authentication โดยใช้ ASP.NET Web API 2, Owin และ Identityรุ่นปัจจุบัน แต่ไม่ชัดเจนสำหรับฉันว่าจะทำสิ่งเดียวกันใน ASP.NET Core ได้อย่างไร คำถามของฉันคือ: วิธีการกำหนดค่าแอปพลิเคชัน ASP.NET Core WebApi ให้ทำงานกับการตรวจสอบความถูกต้องด้วยโทเค็น

9
การส่งโทเค็นผู้ถือด้วย axios
ในแอปตอบกลับของฉันฉันใช้axiosเพื่อดำเนินการร้องขอ REST api แต่ไม่สามารถส่งส่วนหัวการให้สิทธิ์พร้อมคำขอได้ นี่คือรหัสของฉัน: tokenPayload() { let config = { headers: { 'Authorization': 'Bearer ' + validToken() } } Axios.post( 'http://localhost:8000/api/v1/get_token_payloads', config ) .then( ( response ) => { console.log( response ) } ) .catch() } นี่คือvalidToken()วิธีการก็จะกลับมาจากการจัดเก็บโทเค็นเบราว์เซอร์ คำขอทั้งหมดมีการตอบสนองข้อผิดพลาด 500 รายการโดยแจ้งว่า ไม่สามารถแยกวิเคราะห์โทเค็นจากคำขอได้ จากด้านหลัง จะส่งส่วนหัวการให้สิทธิ์กับแต่ละคำขอได้อย่างไร คุณจะแนะนำโมดูลอื่น ๆ ที่มีปฏิกิริยาหรือไม่?

3
Facebook Access Token สำหรับเพจ
ฉันมีหน้า Facebook ที่ฉันต้องการได้รับบางสิ่งบางอย่างจากมัน สิ่งแรกคือฟีดและจากสิ่งที่ฉันอ่านมันเป็นแบบสาธารณะ (ไม่จำเป็นต้องใช้ access_token) แต่ฉันต้องการรับกิจกรรม ... และพวกเขาไม่ได้เป็นสาธารณะและต้องการ access_token ฉันไม่ต้องการให้ผู้ใช้ล็อกอินใน Facebook หรืออะไรทำนองนั้น ฉันแค่ต้องการส่งข้อมูลทั้งหมดที่ทำได้จากหน้านี้เท่านั้น นั่นเป็นเหตุผลที่ผมทิ้งแล้วหลายตัวอย่างที่ผมพบได้ที่นี่และเป็นหนึ่งในhttps://developers.facebook.com/blog/post/500/เพราะพวกเขาต้องการให้ผู้ใช้เข้าสู่ระบบหรือต้องมีการกระทำของผู้ใช้บางอย่างผมไม่ได้ interessed สิ่งที่ฉันต้องการคือแอปพลิเคชัน Facebook ของฉันมีการอนุญาตอย่างสมบูรณ์และ access_token เพื่อผลักดันข้อมูลจากหน้า Facebook ที่ฉันเป็นเจ้าของ (ผู้ดูแลระบบ) เป็นไปได้หรือไม่ ฉันลองมาหลายอย่างแล้ว แต่ดูเหมือนจะไม่ได้ผล ฉันลองคลิกที่: https://www.facebook.com/dialog/oauth?client_id=150635421702954&redirect_uri=http://MY_URL/&scope=manage_pages&response_type=token&fields=access_token - เปลี่ยน MY_URL เป็นไซต์ของฉันและขอการอนุญาตในการแก้ไขทุกๆ เพจฉันเป็นเจ้าของ แม้จะไม่เป็นสิ่งที่ฉันต้องการฉันก็คลิก แต่ไม่มี access_token ตอบแทน ...

7
การตรวจสอบสิทธิ์พื้นฐาน HTTP และผู้ถือโทเค็น
ฉันกำลังพัฒนา REST-API ซึ่ง HTTP-Basic ได้รับการป้องกันสำหรับสภาพแวดล้อมการพัฒนา เนื่องจากการตรวจสอบความถูกต้องจริงผ่านโทเค็นฉันยังคงพยายามหาวิธีส่งส่วนหัวการอนุญาตสองรายการ ฉันได้ลองสิ่งนี้แล้ว: curl -i http://dev.myapp.com/api/users \ -H "Authorization: Basic Ym9zY236Ym9zY28=" \ -H "Authorization: Bearer mytoken123" ตัวอย่างเช่นฉันสามารถปิดใช้งาน HTTP-Authentication สำหรับ IP ของฉันได้ แต่เนื่องจากโดยปกติแล้วฉันจะทำงานในสภาพแวดล้อมที่แตกต่างกันด้วยไดนามิก IPs นี่ไม่ใช่ทางออกที่ดี ฉันขาดอะไรไปหรือเปล่า?

8
โทเค็นการรีเฟรชของ Google จะหมดอายุหรือไม่
ฉันใช้โทเค็นการรีเฟรชหลายครั้งในช่วงเวลาสั้น ๆ เพื่อการทดสอบ แต่ฉันสงสัยว่าโทเค็นการรีเฟรชของ Google จะหมดอายุหรือไม่ ฉันสามารถใช้โทเค็นการรีเฟรชเดียวกันเพื่อรับโทเค็นการเข้าถึงใหม่ครั้งแล้วครั้งเล่าเป็นเวลานาน (หนึ่งสัปดาห์หรือหลายเดือน) ได้หรือไม่

4
จุดประสงค์ของ“ Refresh Token” คืออะไร?
ฉันมีโปรแกรมที่ทำงานร่วมกับ YouTube Live Streaming API มันทำงานบนตัวจับเวลาดังนั้นมันจึงค่อนข้างง่ายสำหรับฉันที่จะตั้งโปรแกรมเพื่อดึง Access Token ใหม่ทุกๆ 50 นาทีด้วย Refresh Token คำถามของฉันคือทำไม? เมื่อฉันตรวจสอบสิทธิ์กับ YouTube มันให้ Refresh Token แก่ฉัน จากนั้นฉันใช้โทเค็นการรีเฟรชนี้เพื่อรับโทเค็นการเข้าถึงใหม่ประมาณชั่วโมงละครั้ง หากฉันมี Refresh Token ฉันสามารถใช้สิ่งนี้เพื่อรับโทเค็นการเข้าถึงใหม่ได้ตลอดเวลาเนื่องจากไม่มีวันหมดอายุ ดังนั้นฉันจึงไม่เห็นว่าสิ่งนี้ปลอดภัยไปกว่าการให้ Access Token ตั้งแต่เริ่มต้นและไม่ต้องกังวลกับระบบ Refresh Token ทั้งหมด

17
จะรีเฟรชโทเค็นด้วยไคลเอนต์ Google API ได้อย่างไร
ฉันได้เล่นกับ Google Analytics API (V3) และพบข้อผิดพลาดบางอย่าง ประการแรกทุกอย่างตั้งค่าถูกต้องและทำงานร่วมกับบัญชีทดสอบของฉัน แต่เมื่อฉันต้องการดึงข้อมูลจากรหัสโปรไฟล์อื่น (บัญชี Google Accont / GA เดียวกัน) ฉันได้รับข้อผิดพลาด 403 สิ่งที่แปลกคือข้อมูลจากบัญชี GA บางบัญชีจะส่งคืนข้อมูลในขณะที่อีกบัญชีสร้างข้อผิดพลาดนี้ ฉันได้เพิกถอนโทเค็นและตรวจสอบสิทธิ์อีกครั้งและตอนนี้ดูเหมือนว่าฉันสามารถดึงข้อมูลจากบัญชีทั้งหมดของฉันได้ แก้ไขปัญหา? ไม่. เนื่องจากคีย์การเข้าถึงจะหมดอายุฉันจะพบปัญหาเดิมอีกครั้ง หากฉันเข้าใจสิ่งต่างๆถูกต้องเราสามารถใช้ resfreshToken เพื่อรับการรับรองความถูกต้องใหม่ได้ ปัญหาคือเมื่อฉันเรียกใช้: $client->refreshToken(refresh_token_key) ข้อผิดพลาดต่อไปนี้จะถูกส่งกลับ: Error refreshing the OAuth2 token, message: '{ "error" : "invalid_grant" }' ฉันได้ตรวจสอบโค้ดหลังเมธอด refreshToken และติดตามคำขอกลับไปที่ไฟล์“ apiOAuth2.php” พารามิเตอร์ทั้งหมดถูกส่งอย่างถูกต้อง Grant_type ถูกเข้ารหัสอย่างหนักเป็น 'refresh_token' ภายในวิธีการดังนั้นจึงยากสำหรับฉันที่จะเข้าใจว่ามีอะไรผิดพลาด อาร์เรย์พารามิเตอร์มีลักษณะดังนี้: …
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.