문제

내가 찾는 건물에서는 API 를 고려 oauth 관리하기 위한 api 를 통하여 수집된 데이터는 수집하지만,내가 무엇을 하의 b2b 시스템을 수 있도록 기업에 액세스하는 데이터를 통합으로 자신의 사이트입니다.내가 없 b2c 시작합니다.

그래서 oauth 처럼 보이지 않는 올바른 도구,나를 위해 찾고있는 소스에 대한 건물의 핵심 기반 시스템,하지만 오지 않는 걸 아무것도.

은 뭔가가 사용할 수 밖에 이미?그것은 최고의 사용자 해시의 일부 사용자 데이터를 전송하거나 무언가를 좋아하는가?

도움이 되었습니까?

해결책

필요한 것은 사용자를 고유하게 식별하는 것입니다 ... UUID 또는 어쩌면 UUID 해시를 사용하십시오.

이 ID가 안전한 채널을 통해 전달되는지 확인하십시오. 불안정한 채널을 통과하는 경우 HTTP Digest Auth와 유사한 ID를 보호하는 방법을 구현해야 할 수도 있습니다.

다른 팁

거의 모든 웹 2.0 사이트/서비스를 살펴보십시오. 그들은 모두 API 키를 관리하고 관리하는 수준을 가지고 있습니다. Flickr, Twitter, Github 등

요구조건에 따라,세계에서의 웹 api 의하여 파트너/개발자는 API 키(id)및 로그인이 필요한 통화(인증)은 매우 표준입니다.가하는 방법은 많이 사양의 서명이 있습니다.매우 일반적인 중 하나 이러한 일;모든 params 의 호출이,타임스탬프(+/-5min 호기심),공유 비밀,그리고 해시 사용하여 SHA-1 또는 MD5(SHA-1 더 낫다).

당신이 할 수 있는 구현이 직접 또는 파트너를 찾을(있다 몇)을 당신을 위해 그것을 할 수 있습니다.

일반적인 접근 방식되고 여기에 제안합니다(해시를 포함하는 API 키와 현재 시간)모두 좋은보다 확실히 더 나은 포함하여""비밀번호에 메시지입니다.

그러나,암호화 표준의"녹두"라는 작업 HMAC.잘 가치가있는 경우에 당신이 원하는 무언가가 더 기준/견고하고 안전합니다.

마지막으로 있는 분명"gold standard"에서 보안 옵션-디지털 인증서를 사용하여 로그인 하거나 모든 요청(계산 비용이 많이 소요될 수 있습)거나 로그인할 때 사용하는 처음으로 요청하는 다음을 생성합 limitted 사용 세션 키(예:하나의 API 만으로,유효 후 60 분)입니다.

또는 사용할 수 있습 2-는 방법에 대해 SSL 을 전송 계층과 단순히 신뢰하는 내 응용 프로그램/API 를 사용합니다.

정말 어떻게 하느냐에 달려 보안 당신이 원하는...:]

API 키가 추측 할 수있는 상황을 만들 수 있기 때문에 사용자 제출 데이터 만 사용하지 않습니다. 일반적으로 사용자가 생성 한 일부 데이터를 가져간 다음 비교적 고유 한 일부 데이터 (예 : 현재 시스템 시간) 및 SHA-1을 사용하는 해시와 결합하여 아마도 내가하지 않으면 표현을 변경합니다. 분명히 SHA-1 해시가되기를 원한 다음 키로 사용하십시오.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top