Custom Authenticator and Login Moduleのサンプル コードとJava SQL Adapterの UserAdapter を使用しています。
認証後にユーザー一覧を取得したい。
authenticationConfig.xml
ファイルの構成
<realms>
<realm loginModule="CustomLoginModule" name="CustomAuthenticatorRealm">
<className>com.mypackage.MyCustomAuthenticator</className>
</realm>
</realms>
<loginModules>
<loginModule name="CustomLoginModule">
<className>com.mypackage.MyCustomLoginModule</className>
</loginModule>
</loginModules>
Java アダプター、UserAdapterResource.java
ファイルの構成
@GET
@Produces("application/json")
@OAuthSecurity(scope="CustomAuthenticatorRealm")
public Response getAllUsers() throws SQLException{
JSONArray results = new JSONArray();
Connection con = ds.getConnection();
PreparedStatement getAllUsers = con.prepareStatement("SELECT * FROM users");
ResultSet data = getAllUsers.executeQuery();
while(data.next()){
JSONObject item = new JSONObject();
item.put("userId", data.getString("userId"));
item.put("firstName", data.getString("firstName"));
item.put("lastName", data.getString("lastName"));
item.put("password", data.getString("password"));
results.add(item);
}
getAllUsers.close();
con.close();
return Response.ok(results).build();
}
しかし、クライアント側で上記の手順を呼び出すと、認証を必要とせずに応答を返しますが、ログインモジュールを表示する必要があります