2013-04-12 3 views
1

기본 인증을 사용하여 서비스 호출을 인증하고 권한을 부여하는 응용 프로그램이 있습니다. 별도의 서버에 WSO2 API Manager를 설정하고 있지만 API 관리자에서 base64 암호화를 내 응용 프로그램으로 전달하여 특정 서비스 호출을 인증하는 방법을 잘 모르겠습니다.WSO2 API 관리자 인증

이 정보는 설명서에서 쉽게 찾을 수 없으므로 지원되지 않을 수도 있습니다.

누구든지 이것을 사용 했습니까?이를 달성하는 방법을 알고 있습니까?

답변

0

게시자에서 API를 만들 때 자격 증명을 제공 할 수 있습니다. WSO2 documentation about adding an API을 확인할 수 있습니다. 게시자의 "끝점 유형"에 대해 Secured을 선택하고 username/password을 제공해야합니다.

+0

감사합니다. Ratha,하지만 내가 성취하려고하는 것은 이것입니다. 플랫폼상의 각 사용자는 사용자 이름과 암호를 사용하여 식별됩니다. 따라서 API를 현재 호출하면 인증 된 사용자 "친구"의 목록을 가져올 수 있습니다. 이 정보를 API에 넣으려면 지정된 끝점에 대한 모든 호출이 "끝점 유형"에 세부 정보가 포함 된 "사용자"로부터 오는 것으로 인증된다는 것을 의미합니다. 모든 서비스 요청시이 정보를 전달하려고합니다. – emilio

+0

여전히 나에게 명확하지 않다. 사용자 집합을 갖고 있으며 API에 대해서만 액세스 할 수 있도록 허용하고 있습니까? – Ratha

+0

예. 내 서버에 기본 인증 헤더로 사용하는 각 사용자의 고유 한 사용자 이름과 암호를 전달해야합니다. WSO2 API 관리자는 이러한 자격 증명을 캡처하여 내 서버로 전달할 수 있습니까? – emilio

1

고유 한 인증 메커니즘을 제공하려는 경우 org.wso2.carbon.apimgt.gateway.handlers.security.Authenticator을 구현하고이를 인증 처리기 체인에 설정하여 매우 쉽게 수행 할 수 있습니다.

참조 용으로 org.wso2.carbon.apimgt.gateway.handlers.security.oauth.OAuthAuthenticator을 참조 할 수 있습니다.

0

인증은 API 시퀀스 정의 (/ repository/deployment/server/synapse-configs/default/api)에 정의 된 처리기 중 하나 인 APIAuthenticationHandler을 통해 API 관리자에서 발생합니다. 특정 API에 대한 인증을 사용하지 않으려면 (API 관리자가 기본 인증 자체를 처리하므로) 처리기를 제거하거나 주석 처리하십시오. 그런 다음 API 관리자 토큰이 아닌 백엔드 서비스에 필요한 기본 인증을 제공해야합니다. 더 이상 인증이 필요하지 않기 때문입니다.