Can u check this without witness ? to narrow down to any issue with the witness . Also , make sure you use the same user (preferably , AD account) at both the primary and secondary SQL servers as service accounts and they have appropriate permissions.