Ich programmiere eine Android-App in Java, und ein Teil der App sendet eine E-Mail von meinem E-Mail-Konto an ein anderes E-Mail-Konto. Ich benutze JavaMail, um dies zu erreichen.Wie kann ich verhindern, dass Benutzer eine Variable in Java lesen?
Es funktioniert alles sehr gut, außer dass mein Passwort für das E-Mail-Konto, aus dem ich sende, in eine Variable in meinem Programm fest codiert ist. Ich möchte keinen Benutzer, um auf diese Variable zugreifen zu können. Muss ich es verschlüsseln? Wie würde ich das machen? Gibt es eine Möglichkeit JavaMail zu konfigurieren, damit ich mein Passwort nicht irgendwo auf dem Gerät speichern muss?
Hier ist der Code, den ich verwende, um die E-Mail und das Passwort zu speichern. Es sind nur statische Variablen in ihrer eigenen Klasse:
public class Config {
public static final String EMAIL ="[email]@gmail.com";
public static final String PASSWORD ="[password]";
}
Ich habe versucht, Zwei-Faktor-Authentifizierung auf dem Konto aktivieren, aber JavaMail schlägt in diesem Fall fehl.
Ich möchte nicht auf die Besonderheiten der App eingehen, aber niemand außerhalb meiner Heimatstadt hätte einen Grund, diese App jemals herunterzuladen. Es ist für einen ganz lokalen Zweck. Es ist ein Passwort, das ich nirgendwo anders benutzt habe, und es ist ein E-Mail-Konto, das ich speziell für diese Anwendung erstellt habe, also gehe ich hier kein großes Risiko ein. Ich möchte immer noch so sicher wie möglich sein.
Muss es eine E-Mail sein? Sie könnten beispielsweise in eine Google-Tabelle schreiben. Oder wenn Sie die Ressourcen haben einen dedizierten Webserver. – BCartolo
Es muss von einer bestimmten E-Mail-Adresse empfangen werden. Die Methode der Ausführung spielt keine Rolle, obwohl ein Webserver in dieser Situation möglicherweise nicht möglich ist. Ist es möglich, ein Google-Formular im Kontext meiner Aktivität zu verwenden? Ich habe es recherchiert, aber ich habe noch keinen Weg gefunden. – austin
Sie können eine Umfrage in Google Spreadsheet erstellen und dort alle Daten veröffentlichen. Dann können Sie die Antworten sehen, vielleicht können Sie sogar per E-Mail benachrichtigt werden, wenn jemand etwas postet. – BCartolo