2017-03-06 11 views
1
기본적으로

나는이 (Python)를 수행하고 싶지만 비약에 :Elixir (또는 Erlang)을 사용하여 Kerberos 보호 사이트에 HTTP GET 요청을하는 방법은 무엇입니까?

import requests 
from requests_kerberos import HTTPKerberosAuth, OPTIONAL 
kerberos_auth = HTTPKerberosAuth(mutual_authentication=OPTIONAL) 
r = requests.get("http://example.org", auth=kerberos_auth) 

나는 I can just do 알고

HTTPotion.get "http://example.org" 

하지만 (HTTPotion 또는 다른 비약 라이브러리) 예를 찾을 수 Elicir (또는 Erlang)에 대한 kerberos 협상을 지원합니다.

curl만의 명령 줄 호출을 앞으로 만들 수 있습니까?

+0

왜 이미 구현 될 것으로 기대하십니까? 'HTTPotion'은 http 백엔드로 ['ibrowse'] (https://github.com/cmullaparthi/ibrowse)를 가지고 있으며 후자는'Basic', AFAIK 이외의 인증을 지원하지 않습니다. – mudasobwa

+0

나는 HTTPottion을 가질 것으로는 기대하지 않는다. 그러나 내가 사용할 수있는 일종의 해결책이있을 것이라고 기대한다. (어쩌면 Elixir 또는 Erlang을 사용할 수있는 다른 http 클라이언트와 함께 할 것인가?) – Luxspes

+0

curl의 명령 행 호출은 진정으로 유일한 것이다. elixir/erlang에서 완전히 기능을 갖춘 http 클라이언트를 갖는 방법은? https://gist.github.com/wolves/3b13903ef8c8322b191c3510334cff90 – Luxspes

답변

1

이 라이브러리는 kerberos 기반 http에 필요한 SPNEGO를 지원한다고 주장합니다. 나는 그것이 실제로 얼마나 잘 작동하는지 전혀 모른다.

https://github.com/mikma/egssapi

는 꽤 오래된, 그러나 SPNEGO 및 Kerberos API 년대는 지난 7 년 동안 많이 변경되지 않았습니다.

일반적으로 웹 연결을 실행하는 기본 라이브러리가 libcurl 인 경우가 아니면 대부분의 언어에서 SPNEGO가 제대로 지원되지 않습니다. Java와 C는 강력한 kerberos 구현에 있어서는 꽤 유용합니다. 언어가 라이브러리와 더 쉽게 상호 작용할수록 kerberos 지원이 더 많이 가능해질 것입니다.