<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Let's go inside

    this blog is deprecated as a result of laziness.
    posts - 59, comments - 2, trackbacks - 0, articles - 0

    TrailBlazer第14天--Security

    Posted on 2006-07-28 19:19 Earth 閱讀(210) 評論(0)  編輯  收藏 所屬分類: JavaEE5/EJB3

    The password files? 密碼文件

    在任何的安全配置中,首先你得告訴應(yīng)用程序在哪里可以找到用戶名和密碼以及角色。你可以使用LDAP服務(wù)器和數(shù)據(jù)庫服務(wù)器來存儲這類的信息。最簡單的情況是在應(yīng)用的classpath中使用簡單的文本文件。下面是一個user.properties文件,它存儲的是用戶和密碼對。在這個例子中有兩個賬號分別為admin和user.

    admin=jboss
    user=ejb3
    下面是一個roles.properties文件。它存儲了用戶和角色之間的關(guān)系。每一個用戶都可以擁有多個角色。比如用戶admin就同時擁有AdminUser和RegularUser兩種角色。
    admin=AdminUser,RegularUser
    user=RegularUser

    The sample application? 示例程序
    ?作為一個例子,讓我們試著做一個有密碼保護功能的投資計算器程序。為了使用這個計算器,你需要用user或者admin的身份登陸。我建議你此時還是使用user登陸(密碼是ejb3)

    RegularUser可以使用計算器,只有AdminUser有權(quán)增加更多的funds和investor profiles。所以,如果使用user登陸并嘗試運行下面的兩個程序,你將遭遇安全異常。然后你可以試著以admin的身份再嘗試一遍(密碼是jboss)
    ?
    Security annotations? 安全標(biāo)注
    ?在EJB 3.0中, 你可以使用安全標(biāo)注來指定在哪里可以找到密碼/角色的列表,并且還可以指定哪種角色的用戶允許訪問這個方法。在下面的例子中,@SecurityDomain("other")表示在當(dāng)前classpath下的.properties文件 是用來認證(authentication)的。@RolesAllowed表示哪些角色可以訪問這種方法。用@PermitAll標(biāo)注的方法則不受安全約束。

    @Stateless
    @SecurityDomain(
    " other " )
    public ? class ?SecureCalculator? implements ?Calculator?{
    ??@RolesAllowed({
    " AdminUser " })
    ??
    public ? void ?addFund?(String?name,? double ?growthrate)?{
    ????
    // ??
    ??}
    ??@RolesAllowed({
    " AdminUser " })
    ??
    public ? void ?addInvestor?(String?name,? int ?start,? int ?end)?{
    ????
    // ??
    ??}
    ??@PermitAll
    ??
    public ?Collection? < Fund > ?getFunds?()?{
    ????
    // ??
    ??}
    ??
    // ??
    ??@RolesAllowed({ " RegularUser " })
    ??
    public ? double ?calculate?( int ?fundId,? int ?investorId,?
    ???????????????????????????????????????
    double ?saving)?{
    ????
    // ??
    ??}
    }

    The web layer configuration? web層的配置
    ?如果你是通過web頁面登陸到系統(tǒng),你的身份則會被應(yīng)用的web層捕獲,然后傳遞到EJB 3.0的中間層。你不得不配置web.xml文件來聲明哪些頁面受密碼保護以及這些頁面允許哪些角色訪問。下面就是web.xml文件的內(nèi)容。

    < web-app >
    ??
    < display-name > EJB3Trail </ display-name >

    ??
    < security-constraint >
    ??????
    < web-resource-collection >
    ?????????
    < web-resource-name >
    ????????????The?Protected?Calculator
    ?????????
    </ web-resource-name >
    ?????????
    < url-pattern > services/security/addfund.jsp </ url-pattern >
    ?????????
    < url-pattern > services/security/addinvestor.jsp </ url-pattern >
    ?????????
    < url-pattern > services/security/calculator.jsp </ url-pattern >
    ??????
    </ web-resource-collection >

    ??????
    < auth-constraint >
    ?????????
    < role-name > AdminUser </ role-name >
    ?????????
    < role-name > RegularUser </ role-name >
    ??????
    </ auth-constraint >

    ??????
    < user-data-constraint >
    ?????????
    < transport-guarantee > NONE </ transport-guarantee >
    ??????
    </ user-data-constraint >
    ???
    </ security-constraint >

    ???
    < security-role >
    ??????
    < description > Authorized?to?access?everything. </ description >
    ??????
    < role-name > AdminUser </ role-name >
    ???
    </ security-role >
    ???
    < security-role >
    ??????
    < description > Authorized?to?limited?access. </ description >
    ??????
    < role-name > RegularUser </ role-name >
    ???
    </ security-role >

    ???
    < login-config >
    ??????
    < auth-method > FORM </ auth-method >
    ??????
    < form-login-config >
    ?????????
    < form-login-page > security/login.html </ form-login-page >
    ?????????
    < form-error-page > security/loginFailed.html </ form-error-page >
    ??????
    </ form-login-config >
    ???
    </ login-config >

    </ web-app >
    主站蜘蛛池模板: 亚洲日韩VA无码中文字幕| 亚洲综合伊人久久大杳蕉| 亚洲国产二区三区久久| 无码天堂va亚洲va在线va| 亚洲精品视频免费看| 在线亚洲97se亚洲综合在线| 亚洲美国产亚洲AV| 中文字幕免费在线| 国产伦精品一区二区三区免费迷| 亚洲高清在线观看| 特级毛片aaaa免费观看| 成人免费男女视频网站慢动作| 亚洲久本草在线中文字幕| 一出一进一爽一粗一大视频免费的| 成人毛片免费观看| 亚洲男人天堂影院| 精品一区二区三区免费| 亚洲综合区小说区激情区| 国产精品久久久久久亚洲影视| 无码区日韩特区永久免费系列| 久久精品夜色国产亚洲av| 伊人久久国产免费观看视频| 看全色黄大色大片免费久久| 91嫩草亚洲精品| 99久久精品免费视频| 亚洲精品国产美女久久久| 一级毛片成人免费看a| 免费观看国产小粉嫩喷水| 亚洲精品美女久久7777777| **俄罗斯毛片免费| 亚洲国产综合专区电影在线| 两个人看的www高清免费观看| 亚洲高清无码在线观看| 亚洲色大成网站www永久男同| 免费国产黄网站在线观看视频| 亚洲一区二区三区无码中文字幕| 一边摸一边桶一边脱免费视频| 免费永久在线观看黄网站| 亚洲国产精品99久久久久久 | 十八禁在线观看视频播放免费| 亚洲日本中文字幕天堂网|