2012-05-04 58 views
0

我在AppEngine上部署了GWT應用程序。我想限制只有管理員對應用程序的訪問。在AppEngine上保護GWT應用程序

我想使用web.xml中的內置安全約束設置,但我無法知道如何讓我的應用在/ myapp/admin url中響應而不是/ myapp 我正在使用RequestFactory進行通信在服務器上,我希望/ gwtRequest處於相同的約束下。

謝謝, 伊多。

回答

1

我不知道我是否理解你的問題正確。

如果只想擁有管理員權限,你可以配置你的應用像以下:

<security-constraint> 
    <web-resource-collection> 
     <url-pattern>/*</url-pattern> 
    </web-resource-collection> 
    <auth-constraint> 
     <role-name>admin</role-name> 
    </auth-constraint> 
</security-constraint> 

<security-constraint> 
    <web-resource-collection> 
     <url-pattern>/loginpage</url-pattern> 
    </web-resource-collection> 
    <auth-constraint> 
     <role-name>*</role-name> 
    </auth-constraint> 
</security-constraint> 

現在你只有管理員訪問權限的每一頁,但你仍然需要有對登錄 - 公共訪問頁。 (您必須替換URL「loginpage」到您的登錄頁面)

如果你只想讓你gwtRequest下管理員訪問使這樣的:

<security-constraint> 
    <web-resource-collection> 
     <url-pattern>/gwtRequest/*</url-pattern> 
    </web-resource-collection> 
    <auth-constraint> 
     <role-name>admin</role-name> 
    </auth-constraint> 
</security-constraint> 

對不起我不知道它的/ gwtRequest/或/ gwtRequest

+0

謝謝。你解釋清楚。實際上我不需要公共頁面,除了我的情況下登錄 –