หมายเหตุ
การเข้าถึงหน้านี้ต้องได้รับการอนุญาต คุณสามารถลอง ลงชื่อเข้าใช้หรือเปลี่ยนไดเรกทอรีได้
การเข้าถึงหน้านี้ต้องได้รับการอนุญาต คุณสามารถลองเปลี่ยนไดเรกทอรีได้
ถ้าสคริปต์ของคุณใช้บริการของ Google เช่น Google ไดรฟ์ แผ่นงาน และจดหมาย คุณจําเป็นต้องรับข้อมูลประจําตัว มีตัวเลือกสองสามตัวเลือกสําหรับการรับข้อมูลประจําตัว:
- ตัวเลือกที่ 1 — ทําตามได้ง่ายและใช้เวลาน้อยกว่า แต่คุณต้องทําซ้ําทุกๆ ชั่วโมงเมื่อโทเค็นการเข้าถึงหมดอายุ
- ตัวเลือกที่ 2 — ซับซ้อนมากขึ้นเล็กน้อย แต่คุณเพียงต้องทําซ้ําหากโทเค็นรีเฟรชไม่ถูกต้องเท่านั้น
- ตัวเลือกที่ 3 — ซับซ้อนขึ้นเล็กน้อย (ใช้สคริปต์ PowerShell ที่ให้มา) แต่คุณเพียงต้องทําซ้ําหากโทเค็นรีเฟรชไม่ถูกต้อง
ตัวเลือกที่ 1 - การรับโทเค็นการเข้าถึงจาก Google OAuth Playground
- ไปที่ Google OAuth Playground
- ใน ป้อนขอบเขตของคุณเอง ให้วาง https://www.googleapis.com/auth/drivehttps://www.googleapis.com/auth/gmail.send
- เลือก API การอนุญาต
- หลังจากที่ API ได้รับอนุญาตแล้ว ให้เลือก รหัสการตรวจสอบ Exchange สําหรับโทเค็น
- คัดลอกค่าของ access_token จากการตอบกลับ
- ในโซลูชัน เช่น การค้นหาโฆษณาที่ไม่ได้รับอนุมัติ ซึ่งเข้าถึงบริการของ Google ให้ตั้งค่าเขตข้อมูลของ
accessTokenวัตถุข้อมูลประจําตัวเป็นโทเค็นการเข้าถึงที่คัดลอกไว้ในขั้นตอนที่ 5
หมายเหตุ
เนื่องจากโทเค็นการเข้าถึงจะหมดอายุใน 1 ชั่วโมง คุณจะต้องทําขั้นตอนเหล่านี้ซ้ําทุกชั่วโมง
ตัวเลือกที่ 2 - รับโทเค็นรีเฟรชจาก Google OAuth Playground
- ไปที่คอนโซลนักพัฒนา Google แดชบอร์ด API
- เลือก สร้างโครงการ เพื่อสร้างโครงการใหม่ หรือเลือกโครงการที่มีอยู่
- ถ้าคุณสร้างโครงการใหม่ ให้ใส่ชื่อโครงการของคุณใน ชื่อโครงการ ตัวอย่างเช่น สคริปต์
- เลือก สร้าง
- บน แดชบอร์ด ให้เลือก เปิดใช้งาน API และบริการ
- ในกล่องค้นหา ให้ป้อนชีตและเลือกGoogle Sheets API จากนั้นเลือก เปิดใช้งาน
- กลับไปที่แดชบอร์ด (เลือก API & บริการ) แล้วทําซ้ําขั้นตอนที่ 3 และ 4 สําหรับ Google Drive API
- กลับไปที่แดชบอร์ด (เลือก API & Services) แล้วทําซ้ําขั้นตอนที่ 3 และ 4 สําหรับ Gmail API
- บนแดชบอร์ด ให้เลือกข้อมูลประจําตัวในบานหน้าต่างนําทางด้านซ้าย แล้วเลือกกําหนดค่าหน้าจอความยินยอม หากระบบขอให้เลือก ประเภทผู้ใช้ ให้เลือก ภายนอก จากนั้นเลือก สร้าง
- ใส่ชื่อแอปพลิเคชันของคุณในเขตข้อมูล ชื่อแอปพลิเคชัน (ตัวอย่างเช่น ไคลเอ็นต์สคริปต์) แล้วใส่อีเมลของคุณในเขตข้อมูลที่ต้องการ จากนั้นเลือก บันทึกและดําเนินการต่อ
- เลือก เพิ่มหรือนําขอบเขตออก แล้วเลือก .. /auth/drive และ . /auth/gmail.send แล้วเลือก อัปเดต
- เลือก บันทึกและดําเนินการต่อ
- เลือก เพิ่มผู้ใช้ ใส่อีเมล Google ของคุณ แล้วเลือก เพิ่ม
- บน แดชบอร์ด ให้เลือก ข้อมูลประจําตัวใน บานหน้าต่างนําทางด้านซ้าย จากนั้นเลือก สร้างข้อมูลประจําตัว แล้วเลือก ID ไคลเอ็นต์ Oauth
- เลือกชนิดแอปพลิเคชันเว็บ ถัดไป ให้ใส่ชื่อ เช่น สคริปต์เว็บแอปในเขตข้อมูลชื่อ จากนั้นเพิ่มhttps://developers.google.com/oauthplaygroundไปยัง URI การเปลี่ยนเส้นทางที่ได้รับอนุญาต สุดท้าย ให้เลือก สร้าง
- คัดลอก ID ไคลเอ็นต์และข้อมูลเคร็คไคลเอ็นต์ของคุณเพื่อใช้ในขั้นตอนที่ 18, 19 และ 24 จากนั้นเลือก ตกลง
- ไปที่ Google OAuth Playground
- เลือกไอคอนการกําหนดค่า OAuth 2.0 (ไอคอนรูปเฟืองที่มุมขวาบน)
- เลือกกล่อง ใช้ข้อมูลประจําตัว OAuth ของคุณเอง
- วาง ID ไคลเอ็นต์ของคุณลงใน ID ไคลเอ็นต์ OAuth
- วางลับไคลเอ็นต์ของคุณลงใน ลับไคลเอ็นต์ OAuth
- ใน ป้อนขอบเขตของคุณเอง ให้วาง https://www.googleapis.com/auth/drivehttps://www.googleapis.com/auth/gmail.send
- เลือก API ที่ได้รับอนุญาต และทําตามพร้อมท์เพื่อให้ความยินยอม
หมายเหตุ
เมื่ออนุญาต API ใน Playground หากคุณเห็นกล่องโต้ตอบที่ระบุว่า "แอปนี้ไม่ได้รับการตรวจสอบ" ให้เลือก ขั้นสูง จากนั้นไปที่ [ชื่อแอป] (ไม่ปลอดภัย)
- หลังจากที่ API ได้รับอนุญาตแล้ว ให้เลือก รหัสการตรวจสอบ Exchange สําหรับโทเค็น
- คัดลอกโทเค็นจาก รีเฟรชโทเค็น เพื่อใช้ในขั้นตอนที่ 24
- ในโซลูชัน เช่น การค้นหาโฆษณาที่ไม่ได้รับอนุมัติ ซึ่งเข้าถึงบริการของ Google ให้ตั้งค่าวัตถุ
clientId,clientSecret, และrefreshTokenเขตข้อมูลของข้อมูลประจําตัวเป็นค่าที่คุณได้รับในขั้นตอนที่ 13 และ 22
ตัวเลือกที่ 3 - รับโทเค็นรีเฟรชโดยใช้สคริปต์ PowerShell
- ไปที่คอนโซลนักพัฒนา Google แดชบอร์ด API
- เลือก สร้างโครงการ เพื่อสร้างโครงการใหม่ หรือเลือกโครงการที่มีอยู่
- ถ้าคุณสร้างโครงการใหม่ ให้ใส่ชื่อโครงการของคุณใน ชื่อโครงการ ตัวอย่างเช่น สคริปต์
- เลือก สร้าง
- บน แดชบอร์ด ให้เลือก เปิดใช้งาน API และบริการ
- ในกล่องค้นหา ให้ป้อนชีตและเลือกGoogle Sheets API จากนั้นเลือก เปิดใช้งาน
- กลับไปที่แดชบอร์ด (เลือก API & บริการ) แล้วทําซ้ําขั้นตอนที่ 3 และ 4 สําหรับ Google Drive API
- กลับไปที่แดชบอร์ด (เลือก API & Services) แล้วทําซ้ําขั้นตอนที่ 3 และ 4 สําหรับ Gmail API
- บนแดชบอร์ด ให้เลือกข้อมูลประจําตัวในบานหน้าต่างนําทางด้านซ้าย แล้วเลือกกําหนดค่าหน้าจอความยินยอม หากระบบขอให้เลือก ประเภทผู้ใช้ ให้เลือก ภายนอก จากนั้นเลือก สร้าง
- ใส่ชื่อแอปพลิเคชันของคุณในเขตข้อมูล ชื่อแอปพลิเคชัน (ตัวอย่างเช่น ไคลเอ็นต์สคริปต์) แล้วใส่อีเมลของคุณในเขตข้อมูลที่ต้องการ จากนั้นเลือก บันทึกและดําเนินการต่อ
- เลือก เพิ่มหรือนําขอบเขตออก แล้วเลือก .. /auth/drive และ . /auth/gmail.send แล้วเลือก อัปเดต
- เลือก บันทึกและดําเนินการต่อ
- เลือก เพิ่มผู้ใช้ ใส่อีเมล Google ของคุณ แล้วเลือก เพิ่ม
- บน แดชบอร์ด ให้เลือก ข้อมูลประจําตัวใน บานหน้าต่างนําทางด้านซ้าย จากนั้นเลือก สร้างข้อมูลประจําตัว แล้วเลือก ID ไคลเอ็นต์ Oauth
- เลือกชนิดแอปพลิเคชัน แอปเดสก์ท็อป ใส่ชื่อ (ตัวอย่างเช่น สคริปต์ไคลเอ็นต์ creds) แล้วเลือก สร้าง
- คัดลอก ID ไคลเอ็นต์และข้อมูลเคร็คไคลเอ็นต์ของคุณเพื่อใช้ในขั้นตอนที่ 15 และ 16 จากนั้นเลือก ตกลง
- สร้างสคริปต์ PowerShell เพื่อรับความยินยอมจากผู้ใช้และโทเค็นรีเฟรช
การรับโทเค็นการเข้าถึงต้องได้รับความยินยอมจากผู้ใช้ เว้นแต่ว่าคุณจะมีโทเค็นรีเฟรช แต่เนื่องจากสคริปต์ไม่สนับสนุนคอมโพเนนต์ UI คุณจะต้องขอความยินยอมด้วยวิธีอื่น PowerShell นี้มีตัวเลือกสําหรับการรับความยินยอมและโทเค็นรีเฟรช
เปิดแผ่นจดบันทึกหรือตัวแก้ไขที่คุณชื่นชอบ แล้วคัดลอกสคริปต์ PowerShell ไปยังตัวแก้ไข ตั้งค่า $clientId และ $clientSecret ID ไคลเอ็นต์และข้อมูลลับที่คุณได้รับเมื่อลงทะเบียนแอป (ดูขั้นตอนที่ 13)
$clientId = "your-client-id"
$clientSecret = "your-client-secret"
$scopes = "https://www.googleapis.com/auth/drive", "https://www.googleapis.com/auth/gmail.send"
Start-Process "https://accounts.google.com/o/oauth2/v2/auth?client_id=$clientId&scope=$([string]::Join("%20", $scopes))&access_type=offline&response_type=code&redirect_uri=urn:ietf:wg:oauth:2.0:oob"
$code = Read-Host "Please enter the code"
$response = Invoke-WebRequest https://www.googleapis.com/oauth2/v4/token -ContentType application/x-www-form-urlencoded -Method POST -Body "client_id=$clientid&client_secret=$clientSecret&redirect_uri=urn:ietf:wg:oauth:2.0:oob&code=$code&grant_type=authorization_code"
Write-Output "Refresh token: " ($response.Content | ConvertFrom-Json).refresh_token
บันทึกไฟล์และตั้งชื่อเป็น GetTokens.ps1 (คุณสามารถตั้งชื่ออะไรก็ได้ที่คุณต้องการ แต่ต้อง .ps1 นามสกุล)
ตอนนี้ ให้เปิดหน้าต่างคอนโซล หากต้องการเปิดหน้าต่างคอนโซลบน Microsoft Windows ให้ป้อนคําสั่งเรียกใช้ของ Windows ต่อไปนี้ (<ปุ่ม> Windows+r):
cmd.exe
ที่พร้อมท์คําสั่ง ให้นําทางไปยังโฟลเดอร์ที่คุณบันทึก GetTokens.ps1 แล้วใส่คําสั่งต่อไปนี้
powershell.exe -File .\GetTokens.ps1
เมื่อสคริปต์ PowerShell ทํางานสําเร็จ จะเริ่มเซสชันของเบราว์เซอร์ที่คุณใส่ข้อมูลประจําตัวของ Google ของคุณ หลังจากให้ความยินยอมแล้ว เว็บเพจจะมีรหัสการให้สิทธิ์ (ดู โปรดคัดลอกรหัสนี้...)
คัดลอกรหัสการให้สิทธิ์และป้อนรหัสในหน้าต่างคอนโซลที่พร้อมท์ จากนั้นสคริปต์ PowerShell จะส่งกลับโทเค็นรีเฟรช คัดลอกโทเค็นรีเฟรช คุณควรปฏิบัติต่อโทเค็นรีเฟรชเหมือนกับที่คุณใช้รหัสผ่าน ถ้ามีคนได้รับ พวกเขาจะสามารถเข้าถึงทรัพยากรของคุณได้
- ในโซลูชัน เช่น การค้นหาโฆษณาที่ไม่ได้รับอนุมัติ ซึ่งเข้าถึงบริการของ Google ให้ตั้งค่าวัตถุ
clientId,clientSecret, และrefreshTokenเขตข้อมูลของข้อมูลประจําตัวเป็นค่าที่คุณได้รับในขั้นตอนที่ 13 และ 14