Использование собственного аутентификатора конечной точки с App Engine и Guice - PullRequest
0 голосов
/ 09 апреля 2019

Я пытаюсь создать пользовательский Аутентификатор для конечной точки App Engine V2.Я планировал использовать собственный аутентификатор для проверки клиентских идентификаторов API, которые будут храниться в хранилище данных.

API работает, но код аутентификатора не выполняется.

Код Api выглядит следующим образом:

@Api(
    name = "test",
    version = "v1",
    authenticators = {ClientIdAuthenticator.class}
)
public class TestEndpoint {

  @ApiMethod(name = "test", path = "test", httpMethod = HttpMethod.GET)
  public String test() {
    return "Test Api!!";
  }

}

На данный момент ClientIdAuthenticator является просто проходом, который выполняет некоторую регистрацию для проверки того, что он выполняется, а это не так.

public class ClientIdAuthenticator implements Authenticator {

  @Override
  public User authenticate(HttpServletRequest request) {
    // Doing some logging and returning User object
  }
}

В настоящее время я использую Guice в качестве структуры DI, но я вижу ту же проблему при попытке использовать аутентификатор клиента за пределами Guice.

Не хватает дополнительной конфигурации в аннотациях?Я знаю, что мог бы сделать ту же логику с пользовательским фильтром, но я хотел бы использовать аннотации, чтобы решить, какие конечные точки получают, какие механизмы аутентификации.

...