1LWP::Authen::Negotiate(U3s)er Contributed Perl DocumentatLiWoPn::Authen::Negotiate(3)
2
3
4
6 LWP::Authen::Negotiate - GSSAPI based Authentication Plugin for LWP
7
9 #! /usr/bin/perl -w
10
11 use strict;
12 require LWP::UserAgent;
13
14 # uncomment if you want see what is going wrong messages
15 #
16 #use LWP::Debug qw(+);
17
18 my $ua = LWP::UserAgent->new;
19 my $response = $ua->get('http://testwurst.grolmsnet.lan:8090/geheim/');
20 if ($response->is_success) {
21 print $response->content; # or whatever
22 }
23 else {
24 die $response->status_line;
25 }
26
27 just install LWP::Authen::Negotiate, LWP uses it as authentication
28 plugin. Use your LWP::UserAgent Scripts as usual. Authentication is
29 done transparent based on your GSSAPI installation (MIT Kerberos or
30 Heimdal)
31
32 WWW-Negotiate Webservers are IIS or Apache with mod_auth_kerb for
33 example.
34
36 To see what ist going on add
37
38 use LWP::Debug qw(+);
39
40 to yor LWP using Scripts.
41
42 (e.g. too see what is going wrong with GSSAPI...)
43
45 To see what ist going on (and going wrong) add
46
47 use LWP::Debug qw(+);
48
49 to yor LWP using Scripts.
50
51 (e.g. too see what is going wrong with GSSAPI...)
52
53 the output will look like this:
54
55 LWP::UserAgent::new: ()
56 LWP::UserAgent::request: ()
57 LWP::UserAgent::send_request: GET http://testwurst.grolmsnet.lan:8090/geheim/
58 LWP::UserAgent::_need_proxy: Not proxied
59 LWP::Protocol::http::request: ()
60 LWP::Protocol::collect: read 478 bytes
61 LWP::UserAgent::request: Simple response: Unauthorized
62 LWP::Authen::Negotiate::authenticate: authenticate() called
63 LWP::Authen::Negotiate::authenticate: target hostname testwurst.grolmsnet.lan
64 LWP::Authen::Negotiate::authenticate: GSSAPI servicename HTTP/moerbsen.grolmsnet.lan@GROLMSNET.LAN
65 LWP::Authen::Negotiate::authenticate: Miscellaneous failure (see text)
66 LWP::Authen::Negotiate::authenticate: open(/tmp/krb5cc_1000): file not found
67
68 In this case the credentials cache was empty. Run kinit first ;-)
69
71 LWP_AUTHEN_NEGOTIATE_DELEGATE
72 Define to enable ticket forwarding to webserver.
73
75 http://www.kerberosprotocols.org/index.php/Draft-brezak-spnego-http-03.txt
76 Description of WWW-Negotiate protol
77
78 http://modauthkerb.sourceforge.net/
79 the Kerberos and SPNEGO Authentication module for Apache
80 mod_auth_kerb
81
82 http://perlgssapi.sourceforge.net/
83 Module Homepage
84
85 http://www.kerberosprotocols.org/index.php/Web
86 Sofware and APIs related to WWW-Negotiate
87
88 http://www.grolmsnet.de/kerbtut/
89 describes how to let mod_auth_kerb play together with Internet
90 Explorer and Windows2003 Server
91
93 As default Kerberos 5 is selected as GSSAPI mechanism. a later veriosn
94 will make that configureable.
95
97 Achim Grolms, <achim@grolmsnet.de>
98
99 http://perlgssapi.sourceforge.net/
100
101 Thanks to
102
103 Leif Johansson
104 who has conributed a lot of code from his implementation of the
105 module and send a lot of input, ideas and feedback
106
107 Harald Joerg
108 helped with Kerberos knowledge and does testing on cygwin against
109 IIS and mod_auth_kerb
110
111 Christopher Odenbach
112 does a lot of testing on Linux and Solaris
113
114 Dax Kelson
115 does a lot of testing on Linux
116
117 Karsten Kuenne
118 helped with advice
119
121 Copyright (C) 2006 by Achim Grolms <perl@grolmsnet.de>
122
123 This library is free software; you can redistribute it and/or modify it
124 under the same terms as Perl itself, either Perl version 5.8.4 or, at
125 your option, any later version of Perl 5 you may have available.
126
127
128
129perl v5.28.0 2009-10-29 LWP::Authen::Negotiate(3)