On Wed, Oct 28, 2009 at 04:52:28PM -0400, Wyllys Ingersoll wrote:
>  Will Fiveash wrote:
> > On Wed, Oct 28, 2009 at 04:03:07PM -0400, Wyllys Ingersoll wrote:
> >>  Will Fiveash wrote:
> >>> When I run:
> >>> pktool list objtype=cert:public
> >>> I see:
> >>> Enter PIN for Sun Software PKCS#11 softtoken:
> >>> Given this is a public object, why am I prompted for my PIN?
> >>  Because some tokens require login even for access to public objects.
> >>  The SCA6000 tokens, for example.
> > The PKCS#11 v2.20 spec states:
> >     Further classification defines access requirements. Applications are
> >     not required to log into the token to view ?public objects?;
> >     however, to view ?private objects?, a user must be authenticated to
> >     the token by a PIN or some other token-dependent method (for
> >     example, a biometric device).
> > Why doesn't the softtoken support this?  The current implementation
> > appears to violate the spec, no?
> 
> 
>  The problem is that when you query the token and check the flags,
>  the token has no way to know if you want to read the private or
>  public areas so it cannot have any logic to indicate whether or
>  not to set the login bitfield in the flags.  pktool defaults to the safest 
>  method, which is to prompt always (we ran into trouble
>  when we did not do this on some devices other than softtoken).

Looking at the spec there is support for different session types
including the default of CKS_RO_PUBLIC_SESSION.  Why can't the token use
this to determine what the app wants to read and whether login is
necessary?

-- 
Will Fiveash
Sun Microsystems               Office x64079/512-401-1079
Austin, TX, 78727              (TZ=CST6CDT), USA
Internal Solaris Kerberos/GSS/SASL website: http://kerberos.sfbay.sun.com
http://opensolaris.org/os/project/kerberos/

Reply via email to