Spring FrameworkとCurl ORBを用いたアプリケーション開発
ユーザ認証とアクセス制御
第3回
ログインサービス
ここでは、ユーザーIDとパスワードを渡し、成功か否かを結果として返す簡単なサンプルを紹介します(実際のプロジェクトでは、ここに認証のロジックをコーディングしてください。また、暗号化などにも考慮してください)。以下は、ログインサービスとユーザー情報のサンプルです。
package sample;
import javax.annotation.Resource;
import org.springframework.stereotype.Service;
import com.curlap.orb.security.RemoteService;
/* ログインサービス */
@RemoteService
@Service("login")
public class LoginService {
@Resource
private UserInfo userInfo;
/* ログインメソッド */
public boolean login(String userId, String password) {
if (userId.equals("user01") && password.equals("pass")) {
userInfo.setUserId(userId);
userInfo.setHasLogined(true); //trueをセット
return userInfo.isHasLogined();
}
return false;
}
}
package sample;
import java.io.Serializable;
/* ユーザー情報 */
public class UserInfo implements Serializable{
private static final long serialVersionUID = 1L;
private String userId;
private boolean hasLogined;
public String getUserId() {
return userId;
}
public void setUserId(String userId) {
this.userId = userId;
}
public boolean isHasLogined() {
return hasLogined;
}
public void setHasLogined(boolean hasLogined) {
this.hasLogined = hasLogined;
}
}
このサンプルの認証ロジックは、単純にユーザーID:user01、パスワード:passであればtrueを返すものとなっています。ログインに成功した場合、LoginServiceのフィールドであるUserInfoのhasLoginedにtrueをセットします。また、このUserInfoはセッションごとに作成されるようにするため、Springの設定ファイル(applicationContext.xml)に以下の行を追加し、スコープをsessionとして管理できるようにします。
<bean id="userInfo" class="sample.UserInfo" scope="session">
<aop:scoped-proxy/>
</bean>
この記事は参考になりましたか?
- Spring FrameworkとCurl ORBを用いたアプリケーション開発連載記事一覧
-
- Spring FrameworkとCurl ORBを用いたアプリケーション開発 ユーザ認証...
- Spring FrameworkとCurl ORBを用いたアプリケーション開発 サンプルア...
- この記事の著者
-
岡田 一志(オカダ ヒトシ)
大企業向けSI開発、IT基盤設計/構築やiDC設立プロジェクトの企画/開発/運用など幅広く活躍し、2006年にCurlに参画する。米Curl社(マサチューセッツ)にてCurl Core RTEの設計・開発に従事した後、現在は株式会社カールにて、Innovation Centerのオペレーションおよび...
※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です
【AD】本記事の内容は記事掲載開始時点のものです 企画・制作 株式会社翔泳社
この記事は参考になりましたか?
この記事をシェア
