[Gridsphere-users] Gridsphere / Vine - Myproxy auto-authentication
Michael Russell
russell at man.poznan.pl
Wed May 14 23:04:55 PDT 2008
Hi Mircea,
Thanks for your interest in our new project!
Firstly, we have fixed most of the issues that prevented a full 1.0
release last Friday and intend to put out a 1.0 Release Candidate
(RC) 1 tomorrow.
Second, you should know that Vine, unlike GridPortlets, will only
deploy Domain.xml once. So after your initial install, you will need
to edit Domain.xml in:
$CATALINA_HOME/webapps/vine/WEB-INF/vine/resources/Domain.xml
You can edit this file directly or use the Resource Manager Portlet
to edit it online.
However, like GridPortlets, Vine provides a handy uninstall feature.
So invoking "ant uninstall" will cleanly remove Vine from Apache
Tomcat and GridSphere, including Domain.xml.
Third, Vine has a different set of "resource tags" from GridPortlets.
We decided to use a format that is more consistent with the current
recommended practices for XML. The general pattern for a resource tag
is like so:
"<resource-name-in-lower-case>Resource"
So whereas GridPortlets had "myproxy-resource", Vine has
"myproxyResource", and so on. One other difference between Vine and
GridPortlets is that the "hardware-resource" tag has been changed to
"hostResource".
Now I do my best to answer below.
On May 14, 2008, at 10:28 PM, Mircea Deaconu wrote:
> Hello everyone,
>
> 1. I'm trying to configure Gridsphere 3.0 / Vine 1.0 Beta to
> authenticate with Myproxy right from the login portlet (the sparse
> documentation available regarding this subject indicates that this
> is something that can be done :) ) using the gridsphere username
> and the password used to store the proxy. I know it can be done, I
> know it must be pretty simple, I'm going pretty mad. If someone
> knows how to configure the Vine's Domain.xml file or Gridsphere's
> configs (in detail) to do that I would be forever thankfull.
Configuring Domain.xml to support MyProxy involves 2 steps:
a. Activate the Credential Repository Authentication Module:
<authenticationModule key="CredentialRepositoryAuthModule"/>
Vine has several different "authentication modules" you can use to
configure Vine security. Vine's security mechanisms are divorced from
GridSphere's to support the ability to deploy Vine to other portal
environments, as well as for use as its own web application or in
standalone apps. This is just one of several included in the "Grid
Vine" project (as Vine consists of multiple projects). You should
also have one more Authentication Module registered with your
Domain.xml, the Portlet Authentication Module:
<authenticationModule key="PortletAuthModule"/>
Registering this after Credential Repository Auth Module will insure
that if authentication fails with the Credential Repository Auth
Module, then Vine will allow you to authenticate if you successfully
authenticate with the GridSphere portlet container's own
authentication mechanisms. This means you can easily integrate Vine
with other web apps that have their own authentication modules and
even GridPortlets.
b. Register a credential repository with Vine. Currently, MyProxy is
the only supported credential repository. Here is an example straight
from our GT4 installer:
<!-- Your MyProxy host -->
<hostResource hostname="rage1.man.poznan.pl"
label="PSNC GT4 Resource"
description="PSNC GT4 Demonstration Resource">
<!-- MyProxy -->
<myproxyResource label="PSNC (MyProxy)"
useCredential="false"
checkConnection="true"
timeoutMiliseconds="2000"/>
</hostResource>
MyProxy is a "Service Resource" in the Vine world and all services
resources are hosted on a "Host Resource", therefore you must
register "myProxyResource" as a child of some "hostResource" in
Domain.xml. Moreover, MyProxy can be configured in various ways. If
your MyProxy does not require your portal to have its own credential
to be authorized to delegate credentials on behalf of users, then you
can use the "useCredential=false" attribute, as in the example above.
So with these 2 items, a Credential Repository Auth Module and a
MyProxy Resource entry, you will have authentication support with
MyProxy.
I've included a full Domain.xml example at the end of this message.
>
> 2. Is there a globus integration for new gridsphere users creation
> that adds users into gridmap files and maybe also creates the user
> certificates automatically?
Yes, Vine does support this feature. In fact, I've never liked
MyProxy since it is not even remotely close to being a true "single
sign-on" solution. The fact that users are required to possess a
separate client for periodically delegating their credentials to
MyProxy, the fact that the MyProxy command requires 2 password
entries and the fact you have to then separately login to the
portal... well, I don't see how the designers of MyProxy consider
this to be a "single" anything! Moreover, it exposes end-users to
security mechanisms they are likely not going to understand or even
care to understand. Finally, I think a securely firewalled portal is
a much better and safer means of managing user credentials then
relying on end-users to manage their own credentials. Who knows where
and what end-users will do with their certificates and private keys.
Vine has the features of GAMA and more, in fact, but we are still in
the process of documenting what Vine can do. So please try getting
the MyProxy to work first. We will be launching a public
demonstration portal in the near future that will show how to use
Vine to manage user accounts, manage their credentials, auto-register
them with target compute resources and more. We will then post news
about how you can do the same with your Vine distributions.
Regards,
Michael
....
<domain name="gt4" label="Globus Toolkit 4" description="Globus
Toolkit 4">
<!-- Credential repository authentication (For use with
"myproxyResource") -->
<authenticationModule key="CredentialRepositoryAuthModule"/>
<!-- Portlet authentication -->
<authenticationModule key="PortletAuthModule"/>
<!-- Portal -->
<hostResource hostname="localhost"
label="Portal"
description="Portal">
<!-- Portal file system (Do not remove!) -->
<portalFileSystem label="Portal File System"
description="Portal File System"/>
</hostResource>
<!-- Rage1 Cluster -->
<hostResource hostname="rage1.man.poznan.pl"
label="PSNC GT4 Resource"
description="PSNC GT4 Demonstration Resource">
<!-- MyProxy -->
<myproxyResource label="PSNC (MyProxy)"
useCredential="false"
checkConnection="true"
timeoutMiliseconds="2000"/>
<!-- GridFtp -->
<gridftpResource label="PSNC (Grid-FTP)"/>
<!-- WS-GRAM -->
<wsGramResource label="PSNC (WS-GRAM)" port="8443">
<!-- possible values: FORK, LSF, PBS, MULTI, CONDOR -->
<resourceAttribute name="factoryType" value="FORK"/>
<resourceAttribute name="WsrfResource.AuthorizationType"
value="host"/>
<resourceAttribute name="WsrfResource.DelegationEnabled"
value="true"/>
<resourceAttribute
name="WsrfResource.MessageProtectionType" value="2"/>
</wsGramResource>
<!--WS MDS-->
<wsMdsResource label="PSNC (WS-MDS)"/>
</hostResource>
</domain>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.gridsphere.org/pipermail/gridsphere-users/attachments/20080515/58735265/attachment-0001.html
More information about the Gridsphere-users
mailing list