Error when sending email with attachment using SQL Server login
As per books online:


  Database Mail uses the Microsoft Windows security context of the
  current user to control access to files. Therefore, users who are
  authenticated with SQL Server Authentication cannot attach files using
  @file_attachments. Windows does not allow SQL Server to provide
  credentials from a remote computer to another remote computer.
  Therefore, Database Mail may not be able to attach files from a
  network share in cases where the command is run from a computer other
  than the computer that SQL Server runs on.


I was able to reproduce this using my AD account.  While running following code remotely I get the error.  Running the same code by logging into the host was successful.

EXEC msdb.dbo.sp_send_dbmail 
@recipients = 'taiob.ali@company.com', 
@file_attachments = 'd:\FailedLogins_0_131397600848650000.xel', 
@subject = 'testing file attachment' 

Msg 229, Level 14, State 5, Procedure sp_send_dbmail, Line 1 [Batch Start Line 0]
    The EXECUTE permission was denied on the object 'sp_send_dbmail', database 'msdb', schema 'dbo'.


Now if that is not your case (meaning the file is on a network share) CREDENTIAL should work.

According to this CREDENTIAL did not work. But the 2nd answer did work though it poses security risk.

There is a connect item about this and here is a comment by Aaron Bertrand which supports the answer I refered above.


  If it is indeed a case of reduced privileges, you can work around this
  by routing mail through a wrapper procedure that uses EXECUTE AS (or
  is signed). Personally, I think that all of your send mail calls
  should go through a single wrapper procedure anyway (makes
  modifications, profile changes, etc. much easier to propagate).