.\" Automatically generated by Pod::Man 2.28 (Pod::Simple 3.29) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' . ds C` . ds C' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .\" .\" Avoid warning from groff about undefined register 'F'. .de IX .. .nr rF 0 .if \n(.g .if rF .nr rF 1 .if (\n(rF:(\n(.g==0)) \{ . if \nF \{ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . if !\nF==2 \{ . nr % 0 . nr F 2 . \} . \} .\} .rr rF .\" ======================================================================== .\" .IX Title "Net::OpenID::VerifiedIdentity 3pm" .TH Net::OpenID::VerifiedIdentity 3pm "2016-02-13" "perl v5.22.1" "User Contributed Perl Documentation" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" Net::OpenID::VerifiedIdentity \- Object representing a verified OpenID identity .SH "VERSION" .IX Header "VERSION" version 1.18 .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 5 \& use Net::OpenID::Consumer; \& my $csr = Net::OpenID::Consumer\->new; \& .... \& my $vident = $csr\->verified_identity \& or die $csr\->err; \& \& my $url = $vident\->url; .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" After Net::OpenID::Consumer verifies a user's identity and does the signature checks, it gives you this Net::OpenID::VerifiedIdentity object, from which you can learn more about the user. .SH "METHODS" .IX Header "METHODS" .ie n .IP "$vident\->\fBurl\fR" 4 .el .IP "\f(CW$vident\fR\->\fBurl\fR" 4 .IX Item "$vident->url" Returns the \s-1URL \s0(as a scalar) that was verified. (Remember, an OpenID is just a \s-1URL.\s0) .ie n .IP "$vident\->\fBdisplay\fR" 4 .el .IP "\f(CW$vident\fR\->\fBdisplay\fR" 4 .IX Item "$vident->display" Returns the a short \*(L"display form\*(R" of the verified \s-1URL\s0 using a couple brain-dead patterns. For instance, the identity \&\*(L"http://www.foo.com/~bob/\*(R" will map to \*(L"bob [foo.com]\*(R" The www. prefix is removed, as well as http, and a username is looked for, in either the tilde form, or \*(L"/users/USERNAME\*(R" or \*(L"/members/USERNAME\*(R". If the path component is empty or just \*(L"/\*(R", then the display form is just the hostname, so \*(L"http://myblog.com/\*(R" is just \*(L"myblog.com\*(R". .Sp Suggestions for improving this function are welcome, but you'll probably get more satisfying results if you make use of the data returned by the Simple Registration (\s-1SREG\s0) extension, which allows the user to choose a preferred nickname to use on your site. .ie n .IP "$vident\->\fBextension_fields\fR($ns_uri)" 4 .el .IP "\f(CW$vident\fR\->\fBextension_fields\fR($ns_uri)" 4 .IX Item "$vident->extension_fields($ns_uri)" Return the fields from the given extension namespace, if any, that were included in the assertion request. The fields are returned in a hashref. .Sp In most cases you'll probably want to use \fBsigned_extension_fields\fR instead, to avoid attacks where a man-in-the-middle alters the extension fields in transit. .Sp Note that for OpenID 1.1 transactions only Simple Registration (\s-1SREG\s0) 1.1 is supported. .ie n .IP "$vident\->\fBsigned_extension_fields\fR($ns_uri)" 4 .el .IP "\f(CW$vident\fR\->\fBsigned_extension_fields\fR($ns_uri)" 4 .IX Item "$vident->signed_extension_fields($ns_uri)" The same as \fBextension_fields\fR except that only fields that were signed as part of the assertion are included in the returned hashref. For example, if you included a Simple Registration request in your initial message, you might fetch the results (if any) like this: .Sp .Vb 3 \& $sreg = $vident\->signed_extension_fields( \& \*(Aqhttp://openid.net/extensions/sreg/1.1\*(Aq, \& ); .Ve .Sp An important gotcha to bear in mind is that for OpenID 2.0 responses no extension fields can be considered signed unless the corresponding extension namespace declaration is also signed. If that is not the case, this method will behave as if no extension fields for that \s-1URI\s0 were signed. .ie n .IP "$vident\->\fBrss\fR" 4 .el .IP "\f(CW$vident\fR\->\fBrss\fR" 4 .IX Item "$vident->rss" .PD 0 .ie n .IP "$vident\->\fBatom\fR" 4 .el .IP "\f(CW$vident\fR\->\fBatom\fR" 4 .IX Item "$vident->atom" .ie n .IP "$vident\->\fBfoaf\fR" 4 .el .IP "\f(CW$vident\fR\->\fBfoaf\fR" 4 .IX Item "$vident->foaf" .ie n .IP "$vident\->\fBdeclared_rss\fR" 4 .el .IP "\f(CW$vident\fR\->\fBdeclared_rss\fR" 4 .IX Item "$vident->declared_rss" .ie n .IP "$vident\->\fBdeclared_atom\fR" 4 .el .IP "\f(CW$vident\fR\->\fBdeclared_atom\fR" 4 .IX Item "$vident->declared_atom" .ie n .IP "$vident\->\fBdeclared_foaf\fR" 4 .el .IP "\f(CW$vident\fR\->\fBdeclared_foaf\fR" 4 .IX Item "$vident->declared_foaf" .PD Returns the absolute URLs (as scalars) of the user's \s-1RSS,\s0 Atom, and \&\s-1FOAF XML\s0 documents that were also found in their \s-1HTML\s0's section. The short versions will only return a \s-1URL\s0 if they're below the root \s-1URL\s0 that was verified. If you want to get at the user's declared rss/atom/foaf, even if it's on a different host or parent directory, use the declared_* versions, which don't have the additional checks. .Sp 2005\-05\-24: A future module will take a Net::OpenID::VerifiedIdentity object and create an OpenID profile object so you don't have to manually parse all those documents to get profile information. .ie n .IP "$vident\->\fBfoafmaker\fR" 4 .el .IP "\f(CW$vident\fR\->\fBfoafmaker\fR" 4 .IX Item "$vident->foafmaker" Returns the value of the \f(CW\*(C`foaf:maker\*(C'\fR meta tag, if declared. .SH "COPYRIGHT, WARRANTY, AUTHOR" .IX Header "COPYRIGHT, WARRANTY, AUTHOR" See Net::OpenID::Consumer for author, copyrignt and licensing information. .SH "SEE ALSO" .IX Header "SEE ALSO" Net::OpenID::Consumer .PP Net::OpenID::ClaimedIdentity .PP Net::OpenID::Server .PP Website: