pengembangan-web-mp-pd.com

Bagaimana saya bisa menghindari server email google meminta saya untuk masuk melalui browser?

Saya mencoba untuk mengirim email dari Django menggunakan email yang dikonfigurasi oleh Google Apps, konfigurasi saya di file settings.py terlihat seperti ini:

EMAIL_Host = 'smtp.gmail.com'
EMAIL_Host_USER = '[email protected]'
EMAIL_Host_PASSWORD = 'password'
EMAIL_PORT = 587
EMAIL_USE_TLS = True

Ketika saya mencoba mengirim email menggunakan:

from Django.core.mail import send_mail

send_mail("Happy new year", "We wish you the best for 3001",
    "[email protected]", ["[email protected]"])

Saya mendapatkan kesalahan berikut:

SMTPAuthenticationError: 
(535, '5.7.1 Please log in with your web browser and then try again. 
 Learn more at
 5.7.1 https://support.google.com/mail/bin/answer.py?answer=78754 k2sm758604obl.14')

Karena saya bekerja pada server jarak jauh tanpa antarmuka pengguna grafis, saya bahkan tidak bisa mencoba masuk dari browser.

Buka saja https://accounts.google.com/DisplayUnlockCaptcha Dan klik "lanjutkan" Ini akan memungkinkan akses dari server lain.

38

Saya telah mengacaukan ini selama beberapa jam dalam tes ketimun/capybara/Selenium - menemukan sesuatu yang bodoh yang akan memperbaiki kesalahan ini untuk selamanya, dijamin

Kesalahan yang terlalu umum:

Please log in via your web browser: https://support.google.com/mail/accounts/answer/78754 (Failure) (Net::IMAP::NoResponseError)

Ternyata, ada DUA "Izinkan Aplikasi Kurang Aman" matikan yang perlu diubah untuk memungkinkan login dari perangkat yang tidak dikenal/IMAP.

Satu di sini: https://myaccount.google.com/security?pli=1#connectedapps (di bawah halaman)

Dan satu di sini: https://www.google.com/settings/security/lesssecureapps

KEDUA GODFORSAKEN TOGGLES INI perlu diubah untuk menyingkirkan pesan kesalahan ini.

sunting: dari pengguna Milothicus ( https://stackoverflow.com/users/3538026/milothicus ): di myaccount.google.com, di bawah 'Masuk & Keamanan', pilih 'Aplikasi & situs terhubung'. ini juga memiliki opsi untuk 'Izinkan aplikasi yang kurang aman'. setelah mengaktifkan ini, server saya sekarang dapat mengirim saya email otomatis.

30
etusm

Ketika saya mencoba mengakses akun saya, saya dikirimi email ini yang berisi tautan ini . https://www.google.com/settings/security/lesssecureapps

Anda dapat mengaktifkan kemudian mematikannya setelah melakukan pengujian.

13
jasxir

Saya mendapat respons berikut dari dukungan Google Apps:

Anda harus menghidupkan relai Keluar Anda. Untuk melakukan ini:

  1. Masuk ke akun Anda di google.com/a/domainanda.com
  2. Klik tab Pengaturan dan kemudian pilih Email di kolom kiri.
  3. Di bagian Relai keluar, pilih Izinkan pengguna untuk mengirim email melalui SMTP eksternal saat mengonfigurasi alamat "dari" yang dihosting di luar domain Anda.
  4. Klik Simpan perubahan.

Mereka juga menyediakan tautan bantuan: http://support.google.com/a/bin/answer.py?hl=id&answer=176054

Setelah mengaktifkan relai Outbound dan menggunakan proxy untuk masuk ke webmail sekali lagi (terima kasih kepada @DaniloBargen dan @joshcartme) masalah ini teratasi. Saya telah membaca tautan yang menjelaskan apa itu Outbound relay dan saya tidak begitu yakin mengapa saya membutuhkannya (saya tidak percaya saya menggunakan server SMTP eksternal).

Karena saya tidak begitu yakin ini yang menyelesaikan masalah, saya tidak akan menandai respons yang diterima sampai saya mendapatkan konfirmasi.

Siapkan terowongan ssh ke server yang dimaksud sehingga Anda bisa, dari komputer di rumah, masuk ke klien web gmail menggunakan IP server. Anda mungkin perlu tunnel port 80 dan port 443, mungkin hanya 443. Setelah masuk melalui klien web masalahnya harus hilang sesuai dengan artikel basis pengetahuan yang tercantum dalam SMTPAuthenticationError.

Berikut adalah contoh cara mengatur terowongan: http://www.noah.org/wiki/SSH_tunnel#simple_port_forwarding_.28SSH_tunneling.29

5
joshcartme

Opsi # 1 (ini bekerja untuk saya):

Setelah mendapatkan kesalahan Please log in with your web browser and then try again. Learn more etc. ketika mencoba mengirim email dari aplikasi web saya, saya login ke email melalui browser dari komputer lokal saya.

Setelah saya login, ada bilah notifikasi kuning di atas yang menanyakan apakah saya ingin mengizinkan aplikasi eksternal mengakses email saya. Saya mengkonfirmasi ini dan Google meminta saya untuk masuk ke akun dari aplikasi dalam 10 menit berikutnya. Ini akan membuat daftar putih aplikasi.

Pilihan 2:

Jika Opsi # 1 tidak bekerja untuk Anda, coba ini: http://www.rocketideas.com/2012/05/gmail-error-password-not-accepted-from-server-solved/

5
finspin

etusm menyediakan dua lokasi untuk menghidupkan aplikasi yang kurang aman:

Satu di sini: https://myaccount.google.com/security?pli=1#connectedapps (bawah halaman)

Dan satu di sini: https://www.google.com/settings/security/lesssecureapps

keduanya dihidupkan, tetapi server tanpa kepala saya masih tidak dapat mengirim saya email. berdasarkan rekomendasi Google + JohnPang, saya menemukan lokasi ketiga di mana saya harus mengizinkan akses ke aplikasi yang kurang aman:

di myaccount.google.com, di bawah 'Masuk & Keamanan', pilih 'Aplikasi & situs yang terhubung'. ini juga memiliki opsi untuk 'Izinkan aplikasi yang kurang aman'. setelah mengaktifkan ini, server saya sekarang dapat mengirim saya email otomatis.

4
Milothicus

Saya menemukan solusinya di: https://support.google.com/accounts/answer/185833?hl=id dan akhirnya https://security.google.com/settings/security/apppasswords

Jika Anda menguji proyek Anda pada mesin lokal, Anda harus pergi ke tautan yang terakhir, dan mengaktifkan "Akses untuk aplikasi yang kurang aman".

2
1man

Semua hal di atas tidak membantu dalam kasus saya (aneh). Tetapi tautan ini mungkin membantu Anda:

https://security.google.com/settings/security/activity

Anda dapat mengaksesnya melalui Google Plus

  1. Buka Google+
  2. Pilih "Keamanan" dari atas
  3. Di bawah "Aktivitas terbaru" klik "Lihat semua acara"
  4. Anda akan melihat daftar "Aktivitas Tidak Biasa"
  5. Ini menunjukkan "Upaya masuk aplikasi/perangkat Singapura (dicegah)" karena saya menggunakan AWS dari Singapura
  6. Klik "Ubah"> "Ya, itu aku!"
  7. Coba lagi. Selesai!
1
John Pang

Apakah Anda memiliki otentikasi dua faktor yang diaktifkan untuk akun aplikasi? Maka Anda mungkin perlu menggunakan kata sandi khusus aplikasi untuk aplikasi itu. 

1
Christer B

Sampai sekarang (lihat tanggal posting saya) hanya ada satu "Izinkan aplikasi yang kurang aman" untuk beralih di UI admin akun Gmail: https://myaccount.google.com/u/0/security#connectedapps

Ini akan bekerja dari komputer lokal Anda (Mac atau PC) setelah itu. 

Untuk mengizinkan akses dari Amazon EC2 (dan saya curiga host lain yang berlokasi di Cloud), masih ada bendera lain untuk dipasang dalam pertempuran Google yang tidak pernah berakhir dengan spammer: https://accounts.google.com/b/0/DisplayUnlockCaptcha

0
Alex Rogachevsky