OAuth 2.0: "gmail.send" scope failed to authenticate smtp.gmail.com server - oauth2-playground

I have tried to authenticate smtp.gmail.com server using OAuth 2.0 Authentication mechanism. When I select scope as "https://mail.gmail.com",I was able to successfully authenticate and send a mail. But my email client is just for sending a mail, so I tried to use the scope "https://www.googleapis.com/auth/gmail.send", but it resulted in the below error,
< 334 eyJzdGF0dXMiOiJpbnZhbGlkX3JlcXVlc3QiLCJzY29wZSI6Imh0dHBzOi8vbWFpbC5nb29nbGUuY29tLyJ9
AQ==
< 535-5.7.8 Username and Password not accepted. Learn more at
We used OAuth 2.0 playground to get the access token.
Please help me to resolve this.
Thanks

Related

Sendgrid setup on SQL Database Mail

I have been trying to setup sendgrid on SQL Database Mail but all the time it says Cannot send mail to mail server.
This is what i have done.
I have sendgrid accound with abc#mydomain.com and created api key and SG.xxxx password.
As this is prod setup instance, i had done domain level authentication and my webmaster updated CNAME as requested by sendgrid.
Tested using TELNET smtp.sendgrid.net 587 and authenticated with SG.xxxx password Base64 encoded and this was able to send email from abc#mydomain.com to xyz#mydomain.com
I setup profile with abc#mydomoain.com as SQL notification Profile and selected Basic Authentication and provided 'apikey' as username and 'SG.xxx' as password in Database Mail - 'Configure Database Mail' option in SQL SSMS. Unchecked - 'The server requires secure authentication (SSL) connection' Port 587
I tried to 'Send Test Mail' with 'abc#domain.com' to 'xyz#mydomain.com' but the Database Mail reflects as below screenshot error
I have tried using abc#mydomain.com and sendgrid account password in Database Mail Config wizard for Basic authentication, but sendgrid suggested they don't accept Basic authentication. Please help how and where should i pass the api key if not under Basic Authentication ?
I tried updating with msdb.dbo.sysmail_add_account_sp nad updating records but it too didn't resolve and send email from Database mail.
Any help/ guidance would be greatly appreciated or if you had faced this how have you resolved it.
Hi the solution is as follows
Create a dbmail profile
server name: smtp.sendgrid.net
port : 25
SMTP Authentication
Basic Auth
User name: apikey
Password: : {the api-key for your sendgrid account}
Thats it. Send a test email.
If it still doesn't work, if you are on AWS EC2 ensure that security group allows outbound port:25
Here is the link from sendgrid about apikey authentication.
https://docs.sendgrid.com/for-developers/sending-email/upgrade-your-authentication-method-to-api-keys

Jenkins SMTP Configuration - 535 Authentication Failed

I'm trying to configure Jenkins email notification via Mailer plugin 1.21.
I'm using secureserver.net as a mailing server.
I have a problem with "SMTP Authentication", the "Test configuration" is reporting 535 Authentication:
Failed to send out e-mail
javax.mail.AuthenticationFailedException: 535 Authentication Failed
for jenkins#xxxx.com
at
com.sun.mail.smtp.SMTPTransport$Authenticator.authenticate(SMTPTransport.java:809)
at
com.sun.mail.smtp.SMTPTransport.authenticate(SMTPTransport.java:752)
at
com.sun.mail.smtp.SMTPTransport.protocolConnect(SMTPTransport.java:669)
at javax.mail.Service.connect(Service.java:317) at
javax.mail.Service.connect(Service.java:176) at
javax.mail.Service.connect(Service.java:125) at
javax.mail.Transport.send0(Transport.java:194) at
javax.mail.Transport.send(Transport.java:124)
My settings are as follows:
SMTP server: smtpout.secureserver.net
Use SMTP Authentication: yes
User Name: jenkins#xxxx.com
Password: ******
Use SSL - yes
SMTP Port - 465
Charset - UTF-8
I'm using the same credentials to connect via webmail: https://email11.secureserver.net/webmail.php. I don't have a connection problem.
Do you have any explanation why jenkins refuse to authenticate?
As google doesn't allow login from less secure apps you have do the following steps:
1. Login to "https://myaccount.google.com/security"
2. Enable "Allow less secure apps" to "ON"
Then check the "Test configuration" in jenkins.
From https://products.secureserver.net/email/email_outlook.htm:
NOTE: "smtpout.secureserver.net" is an SMTP relay server. In order to
use this server to send e-mails, you must first activate SMTP relay on
your e-mail account. Log on to your Manage Email Accounts page to set
up SMTP relay.
Did you do this?
I solved similar issue by creating a new SMTP credential from AWS SES.
But I am still amazed why old credentials didn't work with jenkins even if it was working with other applications.

Meteor send email without authentification

I try to send an email from my METEOR server as described:
https://docs.meteor.com/api/email.html
But i want to send emails without authentication. I have no username and password. If i try MAIL_URL=smtp://#relay.xy.xxxxx.com:578 without username and password i get the error:
unable to verify the first certificate.
Is it possible to set a parameter like "SMTPAuth=false" as in PHP?
Try removing the # in the URL, that might help.
You are specifying port 578, which is a secure port, so it's probably trying to establish a TLS session with your server, which might not have a legitimate SSL certificate, which is likely to be causing this error message.
You know that if you have an email server that will accept unauthorised send requests, that a bot will find it, and then pour spam through it?

SwiftMailer not send mail with Google App account

I'm using Symfony and I'm trying to send an email with swiftmailer. I have an account set up with google app (produccion#mydomain.com) and when I try to send shows me the following error:
Failed to authenticate on SMTP server with username
"produccion#mydomain.com" using 2 possible authenticators
I tried it with my personal gmail account and send the message correctly with the same settings. Just change the username and password.
# Swiftmailer Configuration
swiftmailer:
transport: smtp
host: smtp.gmail.com
username: produccion#mydomain.com #email#gmail.com
password: google_app_password #gmail_password
auth_mode: login
port: 587
encryption: tls
I've been searching the internet and I've found this page from Google, where I can change the access to less secure applications.
https://www.google.com/settings/security/lesssecureapps
In my gmail account this option is active, but if I turn shows me the same error when sending email.
I've been trying to change this setting in google app account but it tells me that this option is not available for google app.
Any idea to send emails from this account by google app? I have to set something else?
EDIT
It seems Gmail prefers OAuth, Swiftmailer supports this authentication mech but its not really documented.
https://developers.google.com/gmail/xoauth2_protocol
https://github.com/swiftmailer/swiftmailer/blob/5.x/lib/classes/Swift/Transport/Esmtp/Auth/XOAuth2Authenticator.php
Any idea how I use it in Symfony?
Have you tried setting the transport parameter to gmail as mentioned in the cookbook? http://symfony.com/doc/current/cookbook/email/gmail.html
# Swiftmailer Configuration
swiftmailer:
transport: gmail
username: your_gmail_username
password: your_gmail_password

Failed to authenticate on SMTP server with username "email#example.com" using 2 possible authenticators

I'm trying to connect to our internal MS Exchange server in order to send out emails from our Laravel application.
In the mail.php config I have the following settings:
Driver = smtp
Host = Our exchange IP address which is correct
Port = 25
Encryption = tls
The user credentials are correct but I still receive the following error:
Failed to authenticate on SMTP server with username "email#example.com" using 2 possible authenticators
We are using the full email as the username, as if we don't then SwiftMailer complains, and I receive:
Undefined offset: 1
This occurs in the getDomainAndUsername($name) method, as it's trying to explode the username using the # symbol.
Any ideas what might be going on here? Has anyone dealt with using SwiftMailer in Laravel connecting to an MS Exchange server?