클라우드 환경에서 보안 API 디자인을 만드는 방법?

출처: 인터넷
작성자: 사용자

  

클라우드 컴퓨팅 환경에서 보안 API 디자인 건물 어려운 작업 이다. 이 문서에서는 보안 연구 전문가 데얀 Lukan 기업 보안 Api를 개발할 때 기억해 야 하는 것 들의 숫자를 설명 합니다.

응용 프로그램 프로그래밍 인터페이스 (API)는 프로그래밍 방식으로 상호 작용 하는 사용자를 위해 일반적으로 실행 중인 응용 프로그램의 단순한 확장 이다.

Api를 사용 하는 이유는 다양 한, 스크립팅 프로그램 또는 프로그램을 사용 하 여 자동화 된 방식으로 응용 프로그램과 상호 작용 하는 사용자는 데이터베이스, 데이터 저장 및 전송 데이터베이스에서 데이터를 추출 하 고 큐, 하지만 그들의 주된 목적은 작업 추진 등. 없는 API 지원 가상 환경에서 작업할 때 사용자가 각 단계를 수동으로 호출 해야 합니다. 시스템에 가상 컴퓨터의 수천이 있다, 그것은 생각할 수 있는 각 작업의 결과 각 가상 컴퓨터에 개별적으로 사용자에 의해 수동으로 수행 해야 합니다 그. 이 과정은 느리고 지루한 것이이에 적용 되는 API의 값은, 즉, 그들은 어떤 수동 작업을 수행 하지 않고 응용 프로그램와 자동화 된 상호 작용으로 사용자를 제공할 수 있습니다.

이 문서에서는, 우리 Api 종류, 그들의 특정 역할을 포함 하 여 클라우드 컴퓨팅 환경에서 작동 하는 방법 볼 것 이다 그리고 보안 개발에 대 한 유용한 Api에 클라우드 컴퓨팅.

Api의 종류

API를 설계할 때 그것은 어느 정도의 시력을 유지 하는 것이 중요입니다. 통신 채널을 통해 메시지를 보낼 때마다 메시지 프로토콜 (규칙을 이미 알고 있는 보낸 사람 및 수신기의 그룹)에 따라 적절히 처리 됩니다. 인터넷을 통해 API 메시지의 보안을 최대화 하기 위해서는 우리 보안 프로토콜을 사용 해야 합니다. 메시지를 서버에 네트워크를 통해 전송 하기 전에 보안 프로토콜 클라이언트에 보내는 데이터를 암호화 하 고 메시지를 보내면 보안 프로토콜 받은 메시지 데이터의 암호를 해독 서버 쪽에서 다음 처리를 수행 합니다. 여기에 일부 프로토콜 HTTPS, POP, Imaps, Smtps, LDAPS, Xmpps, 등 인터넷을 통해 안전 하 게 메시지를 보내는 데 사용 될 수 있습니다.

데이터 형식 보낼 메시지는 보안 영향을 사용 하기 때문에 여러 가지 형식에서 메시지에 데이터를 표현할 수 있습니다. 일반적으로, 메시지에 대 한 데이터 형식은 XML, JSON 또는 HTML (Zaproxy의 경우 사용 하는 세 가지 형식 이다), 그래서는 응용 프로그램과 상호 작용 하는 경우 최종 사용자가 선택을 할 수 있습니다. 하나는 가장 중요 한 API 응용 프로그램에 확장 가능 하 고 다양 한 프로그래밍 언어에 대 한 사용할 수 다는 것 이다. 그래서 적절 한 프로토콜을 사용 하는 경우 사용자가 쉽게 사용할 수 있는 프로그래밍 언어 Api와 상호 작용 하는 프로그램을 작성 하. 잘 지원 되 고 많은 년에 대 한 실제 사용을 통해 검증 된 응용 프로그램와 쉽게 상호 작용으로는 적절 한 프로토콜을 구현할 수 있습니다. 잘 알려진 예는 HTTP 프로토콜입니다. 일반적으로 인터넷 메시지 교환에 사용 되는 일부 API 형식 나머지, SOAP, XML-RPC 및 JSON-RPC 포함 됩니다.

클라우드 컴퓨팅 응용 프로그램에 대 한 완전히 새로운 응용 프로그램 프로그래밍 인터페이스를 개발할 때 새로운 API를 개발, 다음 문제를 해결 하는 것이 필수적입니다: 정체성: 먼저 클라우드 컴퓨팅 서비스를 식별 해야 하므로 사용 하는 사용자를 서버에서 자동으로 식별 하지 않습니다. 일반적으로, 사용자를 고유 하 게 식별 하는 사용자 ID 또는 공개 키를 제공 하는 사용자를 필요 합니다. 불행 하 게도, 사용자가 제공 하는 정보 이므로, 공격자는 종종 특정 사용자로 분류 하지만 그들은 결정적으로 이것을 증명할 수 없습니다.

유효성 검사: 사용자의 id를 증명 하기 위해 서버 자동 생성 유효성 검사 문제를 합니다. 이 유효성 검사 질문에 대답은 사용자 아는 것만 암호, 키, 토큰, 또는 뭔가 다른 될 수 있는.

인증: 사용자는 그 혹은 그녀의 신원을 증명, 일단 특정 응용 프로그램 액세스를 요청 합니다. 그런 다음 응용 프로그램 사용자 수는 요청된 된 리소스에 액세스 하거나 사용자 액세스 권한을 가져옵니다 전에 요청한 작업을 수행할 경우를 확인 합니다.

인식 기술

응용 프로그램 식별 하 고 사용자 id를 인증 기술의 숫자를 사용할 수 있습니다: 사용자 이름 및 암호: 사용자 이름 및 암호 쌍 기본 또는 다이제스트 인증을 통해 사용자 인증을 제공할 수 있습니다. 사용 하는 두 가지 방법 중 필요한 경우 HTTPS와 같은 보안 통신 채널을 사용할 수 있습니다 그래서 HTTP 요청에서 전송 되는 암호 암호화 되지 않습니다.

세션: 사용자 이름 및 암호는 응용 프로그램에 전송 하는 경우 응용 프로그램 쿠키를 응답 하 고 쿠키 모든 후속 인식 요청에 전송 됩니다.

인증서: 공용 또는 개인 키 인프라는 사용자 인증을 사용할 수 있습니다. 이 서버와 클라이언트 인증서의 적법성을 확립 하는 유효한 기관에서 발급 한 인증서가 필요 합니다.

오픈 라이선스: 하나의 응용 프로그램 사용자를 나타내는 또 다른 응용 프로그램에서는 OAuth 일반적으로 사용 됩니다. 예를 들어 응용 프로그램을 일반적으로 "트위터 공유" 버튼 OAuth를 사용 합니다. 이 메서드는 응용 프로그램의 암호를 공개 하지 않고 트위터 API에 액세스 하는 응용 프로그램 권한을 부여 합니다.

사용자 지정 인증 체계: 식별 전용된 프로토콜을 통해 사용자를 인증 하는 사용자 지정 인증 체계를 사용할 수 있습니다. 독점 프로토콜이 아니다 종종 좋은 선택 때문에 한 응용 프로그램에만 사용 됩니다. 알려진된 프로토콜은 사용자가 그들과 함께 잘 알고 있으며 그들은 학습 시간을 최소화할 수 있습니다 때문에 일반적으로 더 나은. 사용자 지정 유효성 검사 체계는 복잡 하 고 오류가 프로세스 이기 때문에 최상위 보안 팀에 의해 구현 되어야 합니다.

API 키: API 키 처음으로 서버와 세션을 요청 하기 전에 설립 되지 않았습니다 때 사용자의 id 및 인증에 사용할 수 있습니다. 즉, API 키를 서버 쪽에서 실행 중인 응용 프로그램에 알려진만 긴 토큰 이며 클라이언트 API 요청에서 API 키를 보냅니다. API 키 방법은 사용자 이름 암호의 그것 보다 더 전 높은 정보 엔트로피는, 때문에 그것은 고 수 있습니다 해커 공격 으로부터 시스템을 보호 누출 중요 한 정보를 제한.

결론

클라우드 컴퓨팅 공급자의 API를 사용 하는 경우에 이러한 기술 개발 또는 보안 Api, 사용자 지정 API를 개발 하는 경우에 특히의 근간.

클라우드 컴퓨팅 서비스 공급자 (CSP)를 선택할 때 Api를 제공할 수 있는지 여부를 결정 합니다. 그 후, API 구현 자동화 또는 스크립팅 프로그램의 가치를 증명할 것 이다. CSP는 적절 한 문서 및 보안 테스트 결과 API 설계 및 보안의 적법성을 입증 하는 데 있어야 한다.

사용자 지정 Api를 사용 하 여 보안 관리자를 고용 하는 것이 중요 하 또는 침투 테스터 정기적으로 API를 테스트 하 고 API 전에 API를 테스트 하는 공식적으로 입력 생산 단계에 중요 한 코드가 출시 때마다. 취약점을 제거 도움이 될 것입니다 이렇게 API 응용 프로그램의 사용자의 보안을 저하 하는 악의적인 공격에 대 한 사용 됩니다.

연락처

이 페이지의 내용은 인터넷에서 가져온 것이므로 Alibaba Cloud의 공식 의견이 아닙니다.이 페이지에서 언급 된 제품 및 서비스는 Alibaba Cloud와는 관련이 없으므로이 페이지의 내용이 골칫거리 인 경우 저희에게 알려주십시오. 우리는 5 일 근무일 이내에 이메일을 처리 할 것입니다.

커뮤니티에서 표절 사례를 발견한 경우 info-contact@alibabacloud.com 으로 관련 증거를 첨부하여 이메일을 보내주시기 바랍니다. 당사 직원이 영업일 기준 5일 내에 연락 드리도록 하겠습니다.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.