用Kerberos为J2ME应用程序上锁,第2部分 - 生成一个Kerberos票据请求 - 编程入门网
器的策略 发布具有标准失效时间的票据。因此,我总是发送硬编码的日期(1970 年 1 月 1 日)作为 till 字段 的值。我所选择的日期是过去日期,这表明我不希望为请求的票据指定一个失效时间。
till 字段为 KerberosTime 类型,它遵循 GeneralizedTime 通用数据类型。生成 KerberosTime 结 构的过程是首先调用 getGeneralizedTimeBytes() 方法并与方法调用同时传递时间字符串。例如, etGeneralizedTimeBytes(new String("19700101000000Z") 方法调用会返回 1970 年 1 月 1 日的 GeneralizedTime 结构。 有了 GeneralizedTime 字节数组后,我可以将它传递给 getTagAndLengthbytes() 方法调用,它会生 成 till 参数的完整字节数组。清单 12 中 getTicketResponse() 方法的 byte till[] = getTagAndLengthBytes (ASN1DataTypes.Context_Specific, 5, getGeneralizedTimeBytes (new String("19700101000000Z").getBytes())); 这一行生成完整的 till 结构。 下面,需要生成 nonce 字段,它包装了一个随机数作为一个整数。我首先生成一个随机数,然后生成 这个随机数的字节数组表达,最后调用 getTagAndLengthBytes() 方法,它生成 nonce 字段的完整结构 。 在 req-body 字段中,还必须生成的最后一个结构是 etype 字段,这是一个 INTEGER 序列。 SEQUENCE 中的每个 INTEGER 指定客户机支持的。 |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |