1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
|
#!/usr/bin/php
<?php
if(!extension_loaded('lasso')) {
dl('lasso.' . PHP_SHLIB_SUFFIX);
}
$module = 'lasso';
$functions = get_extension_funcs($module);
echo "Functions available in the lasso extension:<br>\n";
foreach($functions as $func) {
echo $func."<br>\n";
}
echo "\n";
lasso_init();
print lasso_version() . "\n";
$identity = lasso_identity_new();
var_dump($identity);
$dump = lasso_identity_dump($identity);
var_dump($identity);
$server = lasso_server_new("./sp.xml", "./rsapub.pem", "./rsakey.pem", "./rsacert.pem", lassoSignatureMethodRsaSha1);
lasso_server_add_provider($server, "./idp.xml", "", "");
var_dump($server);
$dump = lasso_server_dump($server);
print $dump;
lasso_server_destroy($server);
var_dump($server);
$new_server = lasso_server_new_from_dump($dump);
var_dump($new_server);
$spsession = lasso_login_new($new_server);
var_dump($spsession);
lasso_login_init_authn_request($spsession,
"https://identity-provider:2003/liberty-alliance/metadata");
$profile = lasso_cast_to_profile($spsession);
var_dump($profile);
$node = lasso_profile_get_request($profile);
var_dump($node);
$lib_authn_request = lasso_cast_to_lib_authn_request($node);
var_dump($lib_authn_request);
lasso_lib_authn_request_set_consent($lib_authn_request, lassoLibConsentObtained);
lasso_lib_authn_request_set_ispassive($lib_authn_request, FALSE);
lasso_lib_authn_request_set_forceauthn($lib_authn_request, TRUE);
lasso_lib_authn_request_set_nameidpolicy($lib_authn_request, lassoLibNameIDPolicyTypeFederated);
lasso_lib_authn_request_set_relaystate($lib_authn_request, "fake");
lasso_lib_authn_request_set_protocolprofile($lib_authn_request, lassoLibProtocolProfileBrwsArt);
lasso_login_build_authn_request_msg($spsession);
$ret = lasso_login_init_authn_request($spsession, "https://identity-provider:1998/liberty-alliance/metadata");
if (!$ret) {
print("lasso_login_init_authn_request failed");
}
/* $dump = lasso_user_dump($user);
print ($dump);
$identity = lasso_identity_new("http://remote-provider-id.com");
var_dump($identity);
lasso_login_destroy($spsession); */
lasso_shutdown();
?>
|