2015-08-05 38 views
5

Mam program Java tylko dla klienta, który wykonuje połączenia z serwerami API Github. Jak być może wiesz, Github ma limit dostępu API do 60 połączeń na godzinę dla nieuwierzytelnionych użytkowników. Chcę użyć klucza klienta i tajnego klucza klienta, aby zwiększyć ten limit do 5000 połączeń na godzinę, ale jak mogę uniemożliwić innym użytkownikom, którzy używają mojej aplikacji po stronie klienta, dekompilowanie kodu i uzyskanie sekretu klienta?Jak zapobiec nadużyciu tajemnicy klienta w programie Java tylko po stronie klienta?

Należy pamiętać, że aplikacja wymaga dostępu do rzeczywistego klucza klienta i klucza, ale muszę je ukryć przed użytkownikiem.

+2

[To jest również użyteczne i użyteczne] (http://stackoverflow.com/questions/442862/how-can-i-protect-mysql-username-and-password-from-decompiling?rq=1) – durron597

+0

You żargon. Nie publikuj tajnych informacji. – erickson

Odpowiedz

0

Rozwiązałem go, używając klucza dostępu Github, z jedynym przywilejem dostępu do repozytoriów publicznych. Jeszcze jedno: czy ktoś wie, czy wybranie pola wyboru w menu osobistych zakresów klawiszowych włącza lub wyłącza dostęp do tego obszaru? Na przykład, jeśli zaznaczono prywatne repos, czy to oznacza, że ​​mogę lub nie mogę uzyskać do nich dostępu?