2017-03-11 3 views
0

내가비밀 데이터/파이썬 스크립트의 키

내가 그 코드를 내 응용 프로그램을 배포 할 계획
token="sdfdsfsdfdsfsf" 
dbx = dropbox.Dropbox(token) 

같은 코드에서 계정 액세스 토큰 보관 용 API를 통해 내 보관 용 계정으로 작동하는 몇 가지 코드를 가지고 있지만, 나도 모르겠다, 보호하는 방법 token 값 - 파이썬 스크립트는 쉽게 디 컴파일 될 수 있고 다른 사람들은 내 토큰을 볼 수있다.

코드에서 토큰을 보호하는 방법은 무엇입니까?

감사합니다.

+0

해당 토큰으로 인증해야하는 경우 아마도 배포해야합니다. 아마도 프로그램 사용자를위한 권한만을 가진 토큰을 생성 할 수 있습니까?그렇지 않으면 자신의 API를 통해 키를 보호 할 수 있습니다. 여기에는 API에 토큰이 있으며 기본적으로 원래 API에서 선택한 명령 만 표시되므로 토큰 및 관련 권한이 보호됩니다. – Tristan

답변

2

이것은 참으로 논의 할 가치가있는 질문입니다.

app_key 또는 token을 소스 코드에서 보호하는 방법에 대해 항상 이야기합니다. 실제로이 작업을 수행하는 것은 매우 어렵습니다. 특히 소스 코드에서 어떤 경우 에든 프로그램이 디 컴파일되는 경우를 의미합니다. 앱이 노출 될 것입니다. app_key 또는 token을 암호화 한 경우 그 역할이 그다지 크지 않습니다.

내 조언은 입니다. 실제 app_key를 소스 코드에 넣지 마십시오. 문제의 핵심은 인증하는 방법입니다.

여기 serveral 계획입니다

  • 할 수 있습니다 외부 파일에 암호화 키를 저장하고, 서버 또는 다른 VPS에 넣어, 그리고 런타임 국지적 프로그램에서로드 암호화 된 키를 프로그램에서 해독합니다.

  • 은 program.Which 당신이 당신의 dropbox app_key 최대의 범위 내에서 가능한 보호됩니다 customers.This 열쇠를 줄 수있는 당신이 당신의 API 키 시스템을 구축해야 의미에 대한 권한이있는 고유 한 토큰을 생성합니다.

  • IP 허용 목록 고객의 서버에 프로그램을 배포하는 경우. 그러나 사용자가 상대적으로 고정되어 있다는 전제가 있습니다. 고객이 비즈니스 사용자이거나 그렇지 않으면 휴대 전화 사용자 인 경우 유용합니다. 그것은 나쁜 생각 일 것입니다.

  • SSL을 사용하여 해커가 패킷을 캡처하지 못하도록합니다. 사용자가 직접 인증 확인 시스템을 구축하려는 경우. 이는 어느 정도 인터페이스를 효과적으로 보호 할 수 있습니다.

  • 은 자신의 몇 가지 방법에 의해 A A 임시 토큰를 생성, 어쩌면 당신은이 임시 토큰이 특권을 함께 app_keytimestamps을 결합 할 수 있지만, 그것은 아주 짧은 시간에 단지 특권입니다.

그런데 서비스 제공 업체에 문의하십시오. 이미 계획을 세웠을 것입니다.

희망이 도움이됩니다.