summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJérôme Schneider <jschneider@entrouvert.com>2013-06-07 10:19:28 (GMT)
committerJérôme Schneider <jschneider@entrouvert.com>2013-06-07 10:19:28 (GMT)
commit148696b03f7679dbb4d10caf1c03b40b00294bc6 (patch)
tree099a7906d27653c9bb31dfc8accd768285f75395
parentbf196f5d5d1b87bab633394aca23d77b43621d4e (diff)
downloadspip-saml-148696b03f7679dbb4d10caf1c03b40b00294bc6.zip
spip-saml-148696b03f7679dbb4d10caf1c03b40b00294bc6.tar.gz
spip-saml-148696b03f7679dbb4d10caf1c03b40b00294bc6.tar.bz2
include simplesamlphp and fix sso
-rw-r--r--balise/login_saml.php30
-rw-r--r--inc/simplesamlphp/COPYING511
-rw-r--r--inc/simplesamlphp/attributemap/addurnprefix.php22
-rw-r--r--inc/simplesamlphp/attributemap/facebook2name.php21
-rw-r--r--inc/simplesamlphp/attributemap/feide-oid.php41
-rw-r--r--inc/simplesamlphp/attributemap/linkedin2name.php19
-rw-r--r--inc/simplesamlphp/attributemap/myspace2name.php18
-rw-r--r--inc/simplesamlphp/attributemap/name2oid.php166
-rw-r--r--inc/simplesamlphp/attributemap/name2urn.php163
-rw-r--r--inc/simplesamlphp/attributemap/oid-feide.php14
-rw-r--r--inc/simplesamlphp/attributemap/oid2name.php145
-rw-r--r--inc/simplesamlphp/attributemap/oid2urn.php142
-rw-r--r--inc/simplesamlphp/attributemap/openid2name.php40
-rw-r--r--inc/simplesamlphp/attributemap/removeurnprefix.php22
-rw-r--r--inc/simplesamlphp/attributemap/test.php40
-rw-r--r--inc/simplesamlphp/attributemap/twitter2name.php17
-rw-r--r--inc/simplesamlphp/attributemap/urn2name.php163
-rw-r--r--inc/simplesamlphp/attributemap/urn2oid.php163
-rw-r--r--inc/simplesamlphp/attributemap/windowslive2name.php16
-rwxr-xr-xinc/simplesamlphp/bin/build-release.sh34
-rwxr-xr-xinc/simplesamlphp/bin/ldapattrschemaparser.pl102
-rwxr-xr-xinc/simplesamlphp/bin/memcacheSync.php165
-rwxr-xr-xinc/simplesamlphp/bin/pack.php77
-rwxr-xr-xinc/simplesamlphp/bin/pwgen.php48
-rwxr-xr-xinc/simplesamlphp/bin/translation.php192
-rw-r--r--inc/simplesamlphp/cert/server.crt16
-rw-r--r--inc/simplesamlphp/cert/server.pem15
-rw-r--r--inc/simplesamlphp/config-templates/acl.php61
-rw-r--r--inc/simplesamlphp/config-templates/authmemcookie.php86
-rw-r--r--inc/simplesamlphp/config-templates/authsources.php347
-rw-r--r--inc/simplesamlphp/config-templates/cas-ldap.php39
-rw-r--r--inc/simplesamlphp/config-templates/config-login-auto.php68
-rw-r--r--inc/simplesamlphp/config-templates/config-login-feide.php39
-rw-r--r--inc/simplesamlphp/config-templates/config.php638
-rw-r--r--inc/simplesamlphp/config-templates/ldap.php46
-rw-r--r--inc/simplesamlphp/config-templates/ldapmulti.php34
-rw-r--r--inc/simplesamlphp/config-templates/translation.php17
-rw-r--r--inc/simplesamlphp/config/acl.php61
-rw-r--r--inc/simplesamlphp/config/authmemcookie.php86
-rw-r--r--inc/simplesamlphp/config/authsources.php350
-rw-r--r--inc/simplesamlphp/config/cas-ldap.php39
-rw-r--r--inc/simplesamlphp/config/config-login-auto.php68
-rw-r--r--inc/simplesamlphp/config/config-login-feide.php39
-rw-r--r--inc/simplesamlphp/config/config.php645
-rw-r--r--inc/simplesamlphp/config/ldap.php46
-rw-r--r--inc/simplesamlphp/config/ldapmulti.php34
-rw-r--r--inc/simplesamlphp/config/translation.php17
-rw-r--r--inc/simplesamlphp/dictionaries/admin.definition.json143
-rw-r--r--inc/simplesamlphp/dictionaries/admin.translation.json1297
-rw-r--r--inc/simplesamlphp/dictionaries/attributes.definition.json140
-rw-r--r--inc/simplesamlphp/dictionaries/attributes.translation.json1420
-rw-r--r--inc/simplesamlphp/dictionaries/disco.definition.json23
-rw-r--r--inc/simplesamlphp/dictionaries/disco.translation.json207
-rw-r--r--inc/simplesamlphp/dictionaries/errors.definition.json221
-rw-r--r--inc/simplesamlphp/dictionaries/errors.translation.json2089
-rw-r--r--inc/simplesamlphp/dictionaries/login.definition.json62
-rw-r--r--inc/simplesamlphp/dictionaries/login.translation.json588
-rw-r--r--inc/simplesamlphp/dictionaries/logout.definition.json56
-rw-r--r--inc/simplesamlphp/dictionaries/logout.translation.json517
-rw-r--r--inc/simplesamlphp/dictionaries/status.definition.json32
-rw-r--r--inc/simplesamlphp/dictionaries/status.translation.json295
-rw-r--r--inc/simplesamlphp/docs/README17
-rw-r--r--inc/simplesamlphp/docs/index.txt68
-rw-r--r--inc/simplesamlphp/docs/pack.txt149
-rw-r--r--inc/simplesamlphp/docs/resources/simplesamlphp-googleapps/googleapps-cert.pngbin0 -> 128115 bytes
-rw-r--r--inc/simplesamlphp/docs/resources/simplesamlphp-googleapps/googleapps-menu.pngbin0 -> 9363 bytes
-rw-r--r--inc/simplesamlphp/docs/resources/simplesamlphp-googleapps/googleapps-sso.pngbin0 -> 13672 bytes
-rw-r--r--inc/simplesamlphp/docs/resources/simplesamlphp-googleapps/googleapps-ssoconfig.pngbin0 -> 67447 bytes
-rw-r--r--inc/simplesamlphp/docs/resources/simplesamlphp-sp/screenshot-example.pngbin0 -> 113380 bytes
-rw-r--r--inc/simplesamlphp/docs/simplesamlphp-advancedfeatures.txt191
-rw-r--r--inc/simplesamlphp/docs/simplesamlphp-artifact-idp.txt94
-rw-r--r--inc/simplesamlphp/docs/simplesamlphp-artifact-sp.txt29
-rw-r--r--inc/simplesamlphp/docs/simplesamlphp-authproc.txt173
-rw-r--r--inc/simplesamlphp/docs/simplesamlphp-authsource.txt107
-rw-r--r--inc/simplesamlphp/docs/simplesamlphp-automated_metadata.txt231
-rw-r--r--inc/simplesamlphp/docs/simplesamlphp-changelog.txt1018
-rw-r--r--inc/simplesamlphp/docs/simplesamlphp-customauth.txt350
-rw-r--r--inc/simplesamlphp/docs/simplesamlphp-errorhandling.txt243
-rw-r--r--inc/simplesamlphp/docs/simplesamlphp-features.txt77
-rw-r--r--inc/simplesamlphp/docs/simplesamlphp-googleapps.txt250
-rw-r--r--inc/simplesamlphp/docs/simplesamlphp-hok-idp.txt77
-rw-r--r--inc/simplesamlphp/docs/simplesamlphp-hok-sp.txt38
-rw-r--r--inc/simplesamlphp/docs/simplesamlphp-idp-more.txt90
-rw-r--r--inc/simplesamlphp/docs/simplesamlphp-idp.txt268
-rw-r--r--inc/simplesamlphp/docs/simplesamlphp-install.txt325
-rw-r--r--inc/simplesamlphp/docs/simplesamlphp-maintenance.txt211
-rw-r--r--inc/simplesamlphp/docs/simplesamlphp-metadata-endpoints.txt70
-rw-r--r--inc/simplesamlphp/docs/simplesamlphp-metadata-extensions-attributes.txt113
-rw-r--r--inc/simplesamlphp/docs/simplesamlphp-metadata-extensions-ui.txt265
-rw-r--r--inc/simplesamlphp/docs/simplesamlphp-modules.txt179
-rw-r--r--inc/simplesamlphp/docs/simplesamlphp-reference-idp-hosted.txt339
-rw-r--r--inc/simplesamlphp/docs/simplesamlphp-reference-idp-remote.txt232
-rw-r--r--inc/simplesamlphp/docs/simplesamlphp-reference-sp-hosted.txt218
-rw-r--r--inc/simplesamlphp/docs/simplesamlphp-reference-sp-remote.txt389
-rw-r--r--inc/simplesamlphp/docs/simplesamlphp-scoping.txt104
-rw-r--r--inc/simplesamlphp/docs/simplesamlphp-sp-api.txt270
-rw-r--r--inc/simplesamlphp/docs/simplesamlphp-sp-migration.txt283
-rw-r--r--inc/simplesamlphp/docs/simplesamlphp-sp.txt202
-rw-r--r--inc/simplesamlphp/docs/simplesamlphp-subversion.txt31
-rw-r--r--inc/simplesamlphp/docs/simplesamlphp-theming.txt99
-rw-r--r--inc/simplesamlphp/docs/simplesamlphp-translation.txt197
-rw-r--r--inc/simplesamlphp/docs/simplesamlphp-ukaccess.txt195
-rw-r--r--inc/simplesamlphp/docs/simplesamlphp-upgrade-notes-1.10.txt4
-rw-r--r--inc/simplesamlphp/docs/simplesamlphp-upgrade-notes-1.5.txt23
-rw-r--r--inc/simplesamlphp/docs/simplesamlphp-upgrade-notes-1.6.txt22
-rw-r--r--inc/simplesamlphp/docs/simplesamlphp-upgrade-notes-1.7.txt12
-rw-r--r--inc/simplesamlphp/docs/simplesamlphp-upgrade-notes-1.8.txt9
-rw-r--r--inc/simplesamlphp/docs/simplesamlphp-upgrade-notes-1.9.txt11
-rw-r--r--inc/simplesamlphp/extra/auth_memcookie.conf38
-rw-r--r--inc/simplesamlphp/lib/Auth/OpenID.php563
-rw-r--r--inc/simplesamlphp/lib/Auth/OpenID/AX.php1022
-rw-r--r--inc/simplesamlphp/lib/Auth/OpenID/Association.php610
-rw-r--r--inc/simplesamlphp/lib/Auth/OpenID/BigMath.php451
-rw-r--r--inc/simplesamlphp/lib/Auth/OpenID/Consumer.php2234
-rw-r--r--inc/simplesamlphp/lib/Auth/OpenID/CryptUtil.php122
-rw-r--r--inc/simplesamlphp/lib/Auth/OpenID/DatabaseConnection.php130
-rw-r--r--inc/simplesamlphp/lib/Auth/OpenID/DiffieHellman.php113
-rw-r--r--inc/simplesamlphp/lib/Auth/OpenID/Discover.php606
-rw-r--r--inc/simplesamlphp/lib/Auth/OpenID/DumbStore.php99
-rw-r--r--inc/simplesamlphp/lib/Auth/OpenID/Extension.php61
-rw-r--r--inc/simplesamlphp/lib/Auth/OpenID/FileStore.php618
-rw-r--r--inc/simplesamlphp/lib/Auth/OpenID/HMAC.php105
-rw-r--r--inc/simplesamlphp/lib/Auth/OpenID/Interface.php196
-rw-r--r--inc/simplesamlphp/lib/Auth/OpenID/KVForm.php111
-rw-r--r--inc/simplesamlphp/lib/Auth/OpenID/MDB2Store.php413
-rw-r--r--inc/simplesamlphp/lib/Auth/OpenID/MemcachedStore.php207
-rw-r--r--inc/simplesamlphp/lib/Auth/OpenID/Message.php920
-rw-r--r--inc/simplesamlphp/lib/Auth/OpenID/MySQLStore.php77
-rw-r--r--inc/simplesamlphp/lib/Auth/OpenID/Nonce.php108
-rw-r--r--inc/simplesamlphp/lib/Auth/OpenID/PAPE.php300
-rw-r--r--inc/simplesamlphp/lib/Auth/OpenID/Parse.php377
-rw-r--r--inc/simplesamlphp/lib/Auth/OpenID/PostgreSQLStore.php112
-rw-r--r--inc/simplesamlphp/lib/Auth/OpenID/SQLStore.php557
-rw-r--r--inc/simplesamlphp/lib/Auth/OpenID/SQLiteStore.php70
-rw-r--r--inc/simplesamlphp/lib/Auth/OpenID/SReg.php521
-rw-r--r--inc/simplesamlphp/lib/Auth/OpenID/Server.php1765
-rw-r--r--inc/simplesamlphp/lib/Auth/OpenID/ServerRequest.php36
-rw-r--r--inc/simplesamlphp/lib/Auth/OpenID/TrustRoot.php461
-rw-r--r--inc/simplesamlphp/lib/Auth/OpenID/URINorm.php249
-rw-r--r--inc/simplesamlphp/lib/Auth/Yadis/HTTPFetcher.php174
-rw-r--r--inc/simplesamlphp/lib/Auth/Yadis/Manager.php521
-rw-r--r--inc/simplesamlphp/lib/Auth/Yadis/Misc.php58
-rw-r--r--inc/simplesamlphp/lib/Auth/Yadis/ParanoidHTTPFetcher.php245
-rw-r--r--inc/simplesamlphp/lib/Auth/Yadis/ParseHTML.php258
-rw-r--r--inc/simplesamlphp/lib/Auth/Yadis/PlainHTTPFetcher.php248
-rw-r--r--inc/simplesamlphp/lib/Auth/Yadis/XML.php352
-rw-r--r--inc/simplesamlphp/lib/Auth/Yadis/XRDS.php478
-rw-r--r--inc/simplesamlphp/lib/Auth/Yadis/XRI.php234
-rw-r--r--inc/simplesamlphp/lib/Auth/Yadis/XRIRes.php72
-rw-r--r--inc/simplesamlphp/lib/Auth/Yadis/Yadis.php382
-rw-r--r--inc/simplesamlphp/lib/SAML2/ArtifactResolve.php65
-rw-r--r--inc/simplesamlphp/lib/SAML2/ArtifactResponse.php71
-rw-r--r--inc/simplesamlphp/lib/SAML2/Assertion.php1322
-rw-r--r--inc/simplesamlphp/lib/SAML2/AttributeQuery.php176
-rw-r--r--inc/simplesamlphp/lib/SAML2/AuthnRequest.php494
-rw-r--r--inc/simplesamlphp/lib/SAML2/Binding.php147
-rw-r--r--inc/simplesamlphp/lib/SAML2/Const.php160
-rw-r--r--inc/simplesamlphp/lib/SAML2/EncryptedAssertion.php120
-rw-r--r--inc/simplesamlphp/lib/SAML2/HTTPArtifact.php155
-rw-r--r--inc/simplesamlphp/lib/SAML2/HTTPPost.php87
-rw-r--r--inc/simplesamlphp/lib/SAML2/HTTPRedirect.php235
-rw-r--r--inc/simplesamlphp/lib/SAML2/LogoutRequest.php282
-rw-r--r--inc/simplesamlphp/lib/SAML2/LogoutResponse.php25
-rw-r--r--inc/simplesamlphp/lib/SAML2/Message.php484
-rw-r--r--inc/simplesamlphp/lib/SAML2/Request.php17
-rw-r--r--inc/simplesamlphp/lib/SAML2/Response.php84
-rw-r--r--inc/simplesamlphp/lib/SAML2/SOAP.php57
-rw-r--r--inc/simplesamlphp/lib/SAML2/SOAPClient.php223
-rw-r--r--inc/simplesamlphp/lib/SAML2/SignedElement.php58
-rw-r--r--inc/simplesamlphp/lib/SAML2/SignedElementHelper.php220
-rw-r--r--inc/simplesamlphp/lib/SAML2/StatusResponse.php193
-rw-r--r--inc/simplesamlphp/lib/SAML2/SubjectQuery.php116
-rw-r--r--inc/simplesamlphp/lib/SAML2/Utils.php620
-rw-r--r--inc/simplesamlphp/lib/SAML2/XML/Chunk.php104
-rw-r--r--inc/simplesamlphp/lib/SAML2/XML/ds/KeyInfo.php94
-rw-r--r--inc/simplesamlphp/lib/SAML2/XML/ds/KeyName.php45
-rw-r--r--inc/simplesamlphp/lib/SAML2/XML/ds/X509Certificate.php45
-rw-r--r--inc/simplesamlphp/lib/SAML2/XML/ds/X509Data.php74
-rw-r--r--inc/simplesamlphp/lib/SAML2/XML/md/AdditionalMetadataLocation.php62
-rw-r--r--inc/simplesamlphp/lib/SAML2/XML/md/AffiliationDescriptor.php162
-rw-r--r--inc/simplesamlphp/lib/SAML2/XML/md/AttributeAuthorityDescriptor.php128
-rw-r--r--inc/simplesamlphp/lib/SAML2/XML/md/AttributeConsumingService.php124
-rw-r--r--inc/simplesamlphp/lib/SAML2/XML/md/AuthnAuthorityDescriptor.php94
-rw-r--r--inc/simplesamlphp/lib/SAML2/XML/md/ContactPerson.php182
-rw-r--r--inc/simplesamlphp/lib/SAML2/XML/md/EndpointType.php187
-rw-r--r--inc/simplesamlphp/lib/SAML2/XML/md/EntitiesDescriptor.php142
-rw-r--r--inc/simplesamlphp/lib/SAML2/XML/md/EntityDescriptor.php252
-rw-r--r--inc/simplesamlphp/lib/SAML2/XML/md/Extensions.php60
-rw-r--r--inc/simplesamlphp/lib/SAML2/XML/md/IDPSSODescriptor.php145
-rw-r--r--inc/simplesamlphp/lib/SAML2/XML/md/IndexedEndpointType.php71
-rw-r--r--inc/simplesamlphp/lib/SAML2/XML/md/KeyDescriptor.php97
-rw-r--r--inc/simplesamlphp/lib/SAML2/XML/md/Organization.php105
-rw-r--r--inc/simplesamlphp/lib/SAML2/XML/md/PDPDescriptor.php94
-rw-r--r--inc/simplesamlphp/lib/SAML2/XML/md/RequestedAttribute.php54
-rw-r--r--inc/simplesamlphp/lib/SAML2/XML/md/RoleDescriptor.php208
-rw-r--r--inc/simplesamlphp/lib/SAML2/XML/md/SPSSODescriptor.php107
-rw-r--r--inc/simplesamlphp/lib/SAML2/XML/md/SSODescriptorType.php114
-rw-r--r--inc/simplesamlphp/lib/SAML2/XML/md/UnknownRoleDescriptor.php41
-rw-r--r--inc/simplesamlphp/lib/SAML2/XML/mdattr/EntityAttributes.php72
-rw-r--r--inc/simplesamlphp/lib/SAML2/XML/mdrpi/Common.php14
-rw-r--r--inc/simplesamlphp/lib/SAML2/XML/mdrpi/PublicationInfo.php102
-rw-r--r--inc/simplesamlphp/lib/SAML2/XML/mdui/DiscoHints.php106
-rw-r--r--inc/simplesamlphp/lib/SAML2/XML/mdui/Keywords.php79
-rw-r--r--inc/simplesamlphp/lib/SAML2/XML/mdui/Logo.php94
-rw-r--r--inc/simplesamlphp/lib/SAML2/XML/mdui/UIInfo.php154
-rw-r--r--inc/simplesamlphp/lib/SAML2/XML/saml/Attribute.php121
-rw-r--r--inc/simplesamlphp/lib/SAML2/XML/saml/AttributeValue.php99
-rw-r--r--inc/simplesamlphp/lib/SAML2/XML/saml/NameID.php125
-rw-r--r--inc/simplesamlphp/lib/SAML2/XML/saml/SubjectConfirmation.php93
-rw-r--r--inc/simplesamlphp/lib/SAML2/XML/saml/SubjectConfirmationData.php146
-rw-r--r--inc/simplesamlphp/lib/SAML2/XML/samlp/Extensions.php48
-rw-r--r--inc/simplesamlphp/lib/SAML2/XML/shibmd/Scope.php74
-rw-r--r--inc/simplesamlphp/lib/SimpleSAML/Auth/BWC.php162
-rw-r--r--inc/simplesamlphp/lib/SimpleSAML/Auth/Default.php259
-rw-r--r--inc/simplesamlphp/lib/SimpleSAML/Auth/LDAP.php684
-rw-r--r--inc/simplesamlphp/lib/SimpleSAML/Auth/ProcessingChain.php355
-rw-r--r--inc/simplesamlphp/lib/SimpleSAML/Auth/ProcessingFilter.php69
-rw-r--r--inc/simplesamlphp/lib/SimpleSAML/Auth/Simple.php334
-rw-r--r--inc/simplesamlphp/lib/SimpleSAML/Auth/Source.php354
-rw-r--r--inc/simplesamlphp/lib/SimpleSAML/Auth/State.php349
-rw-r--r--inc/simplesamlphp/lib/SimpleSAML/Auth/TimeLimitedToken.php86
-rw-r--r--inc/simplesamlphp/lib/SimpleSAML/AuthMemCookie.php169
-rw-r--r--inc/simplesamlphp/lib/SimpleSAML/Bindings/Shib13/Artifact.php178
-rw-r--r--inc/simplesamlphp/lib/SimpleSAML/Bindings/Shib13/HTTPPost.php123
-rw-r--r--inc/simplesamlphp/lib/SimpleSAML/Configuration.php1127
-rw-r--r--inc/simplesamlphp/lib/SimpleSAML/Error/Assertion.php82
-rw-r--r--inc/simplesamlphp/lib/SimpleSAML/Error/AuthSource.php69
-rw-r--r--inc/simplesamlphp/lib/SimpleSAML/Error/BadRequest.php56
-rw-r--r--inc/simplesamlphp/lib/SimpleSAML/Error/BadUserInnput.php14
-rw-r--r--inc/simplesamlphp/lib/SimpleSAML/Error/Error.php259
-rw-r--r--inc/simplesamlphp/lib/SimpleSAML/Error/Exception.php249
-rw-r--r--inc/simplesamlphp/lib/SimpleSAML/Error/InvalidCredential.php14
-rw-r--r--inc/simplesamlphp/lib/SimpleSAML/Error/MetadataNotFound.php27
-rw-r--r--inc/simplesamlphp/lib/SimpleSAML/Error/NoPassive.php8
-rw-r--r--inc/simplesamlphp/lib/SimpleSAML/Error/NoState.php21
-rw-r--r--inc/simplesamlphp/lib/SimpleSAML/Error/NotFound.php64
-rw-r--r--inc/simplesamlphp/lib/SimpleSAML/Error/ProxyCountExceeded.php8
-rw-r--r--inc/simplesamlphp/lib/SimpleSAML/Error/UnserializableException.php56
-rw-r--r--inc/simplesamlphp/lib/SimpleSAML/Error/User.php16
-rw-r--r--inc/simplesamlphp/lib/SimpleSAML/Error/UserAborted.php20
-rw-r--r--inc/simplesamlphp/lib/SimpleSAML/Error/UserNotFound.php15
-rw-r--r--inc/simplesamlphp/lib/SimpleSAML/IdP.php536
-rw-r--r--inc/simplesamlphp/lib/SimpleSAML/IdP/LogoutHandler.php56
-rw-r--r--inc/simplesamlphp/lib/SimpleSAML/IdP/LogoutIFrame.php94
-rw-r--r--inc/simplesamlphp/lib/SimpleSAML/IdP/LogoutTraditional.php93
-rw-r--r--inc/simplesamlphp/lib/SimpleSAML/Logger.php228
-rw-r--r--inc/simplesamlphp/lib/SimpleSAML/Logger/LoggingHandlerErrorLog.php44
-rw-r--r--inc/simplesamlphp/lib/SimpleSAML/Logger/LoggingHandlerFile.php66
-rw-r--r--inc/simplesamlphp/lib/SimpleSAML/Logger/LoggingHandlerSyslog.php47
-rw-r--r--inc/simplesamlphp/lib/SimpleSAML/Memcache.php426
-rw-r--r--inc/simplesamlphp/lib/SimpleSAML/MemcacheStore.php91
-rw-r--r--inc/simplesamlphp/lib/SimpleSAML/Metadata/MetaDataStorageHandler.php344
-rw-r--r--inc/simplesamlphp/lib/SimpleSAML/Metadata/MetaDataStorageHandlerDynamicXML.php260
-rw-r--r--inc/simplesamlphp/lib/SimpleSAML/Metadata/MetaDataStorageHandlerFlatFile.php142
-rw-r--r--inc/simplesamlphp/lib/SimpleSAML/Metadata/MetaDataStorageHandlerSerialize.php259
-rw-r--r--inc/simplesamlphp/lib/SimpleSAML/Metadata/MetaDataStorageHandlerXML.php105
-rw-r--r--inc/simplesamlphp/lib/SimpleSAML/Metadata/MetaDataStorageSource.php229
-rw-r--r--inc/simplesamlphp/lib/SimpleSAML/Metadata/SAMLBuilder.php684
-rw-r--r--inc/simplesamlphp/lib/SimpleSAML/Metadata/SAMLParser.php1282
-rw-r--r--inc/simplesamlphp/lib/SimpleSAML/Metadata/Signer.php197
-rw-r--r--inc/simplesamlphp/lib/SimpleSAML/Module.php190
-rw-r--r--inc/simplesamlphp/lib/SimpleSAML/Session.php1297
-rw-r--r--inc/simplesamlphp/lib/SimpleSAML/SessionHandler.php158
-rw-r--r--inc/simplesamlphp/lib/SimpleSAML/SessionHandlerCookie.php119
-rw-r--r--inc/simplesamlphp/lib/SimpleSAML/SessionHandlerPHP.php178
-rw-r--r--inc/simplesamlphp/lib/SimpleSAML/SessionHandlerStore.php85
-rw-r--r--inc/simplesamlphp/lib/SimpleSAML/Stats.php92
-rw-r--r--inc/simplesamlphp/lib/SimpleSAML/Stats/Output.php28
-rw-r--r--inc/simplesamlphp/lib/SimpleSAML/Store.php92
-rw-r--r--inc/simplesamlphp/lib/SimpleSAML/Store/Memcache.php67
-rw-r--r--inc/simplesamlphp/lib/SimpleSAML/Store/SQL.php323
-rw-r--r--inc/simplesamlphp/lib/SimpleSAML/Utilities.php2291
-rw-r--r--inc/simplesamlphp/lib/SimpleSAML/Utils/Crypto.php143
-rw-r--r--inc/simplesamlphp/lib/SimpleSAML/XHTML/EMail.php102
-rw-r--r--inc/simplesamlphp/lib/SimpleSAML/XHTML/IdPDisco.php531
-rw-r--r--inc/simplesamlphp/lib/SimpleSAML/XHTML/Template.php704
-rw-r--r--inc/simplesamlphp/lib/SimpleSAML/XML/Errors.php135
-rw-r--r--inc/simplesamlphp/lib/SimpleSAML/XML/Parser.php70
-rw-r--r--inc/simplesamlphp/lib/SimpleSAML/XML/Shib13/AuthnRequest.php53
-rw-r--r--inc/simplesamlphp/lib/SimpleSAML/XML/Shib13/AuthnResponse.php433
-rw-r--r--inc/simplesamlphp/lib/SimpleSAML/XML/Signer.php271
-rw-r--r--inc/simplesamlphp/lib/SimpleSAML/XML/Validator.php298
-rw-r--r--inc/simplesamlphp/lib/_autoload.php70
-rw-r--r--inc/simplesamlphp/lib/xmlseclibs.php1740
-rw-r--r--inc/simplesamlphp/log/_placeholder.php3
-rw-r--r--inc/simplesamlphp/metadata-templates/adfs-idp-hosted.php10
-rw-r--r--inc/simplesamlphp/metadata-templates/adfs-sp-remote.php14
-rw-r--r--inc/simplesamlphp/metadata-templates/saml20-idp-hosted.php35
-rw-r--r--inc/simplesamlphp/metadata-templates/saml20-idp-remote.php91
-rw-r--r--inc/simplesamlphp/metadata-templates/saml20-sp-remote.php27
-rw-r--r--inc/simplesamlphp/metadata-templates/shib13-idp-hosted.php26
-rw-r--r--inc/simplesamlphp/metadata-templates/shib13-idp-remote.php15
-rw-r--r--inc/simplesamlphp/metadata-templates/shib13-sp-hosted.php13
-rw-r--r--inc/simplesamlphp/metadata-templates/shib13-sp-remote.php24
-rw-r--r--inc/simplesamlphp/metadata-templates/wsfed-idp-remote.php9
-rw-r--r--inc/simplesamlphp/metadata-templates/wsfed-sp-hosted.php11
-rw-r--r--inc/simplesamlphp/metadata/saml20-idp-remote.php77
-rw-r--r--inc/simplesamlphp/modules/InfoCard/config-template/config-login-infocard.php203
-rw-r--r--inc/simplesamlphp/modules/InfoCard/default-disable3
-rw-r--r--inc/simplesamlphp/modules/InfoCard/dictionaries/dict-InfoCard.definition.json74
-rw-r--r--inc/simplesamlphp/modules/InfoCard/dictionaries/dict-InfoCard.php456
-rw-r--r--inc/simplesamlphp/modules/InfoCard/dictionaries/dict-InfoCard.translation.json0
-rw-r--r--inc/simplesamlphp/modules/InfoCard/docs/CHANGELOG24
-rw-r--r--inc/simplesamlphp/modules/InfoCard/docs/usage.txt101
-rw-r--r--inc/simplesamlphp/modules/InfoCard/lib/Auth/Source/ICAuth.php95
-rw-r--r--inc/simplesamlphp/modules/InfoCard/lib/RP/InfoCard.php349
-rw-r--r--inc/simplesamlphp/modules/InfoCard/lib/RP/LICENSE.txt27
-rw-r--r--inc/simplesamlphp/modules/InfoCard/lib/RP/Zend_InfoCard_Claims.php304
-rw-r--r--inc/simplesamlphp/modules/InfoCard/lib/RP/Zend_InfoCard_Xml_Assertion_Saml.php272
-rw-r--r--inc/simplesamlphp/modules/InfoCard/lib/RP/Zend_InfoCard_Xml_Security.php326
-rw-r--r--inc/simplesamlphp/modules/InfoCard/lib/RP/Zend_InfoCard_Xml_Security_Transform.php113
-rw-r--r--inc/simplesamlphp/modules/InfoCard/lib/RP/Zend_InfoCard_Xml_Security_Transform_EnvelopedSignature.php55
-rw-r--r--inc/simplesamlphp/modules/InfoCard/lib/RP/Zend_InfoCard_Xml_Security_Transform_XmlExcC14N.php55
-rw-r--r--inc/simplesamlphp/modules/InfoCard/lib/STS.php384
-rw-r--r--inc/simplesamlphp/modules/InfoCard/lib/UserFunctions.php113
-rw-r--r--inc/simplesamlphp/modules/InfoCard/lib/Utils.php108
-rw-r--r--inc/simplesamlphp/modules/InfoCard/templates/temp-getcardform.php69
-rw-r--r--inc/simplesamlphp/modules/InfoCard/templates/temp-login.php82
-rw-r--r--inc/simplesamlphp/modules/InfoCard/www/STS_card_issuer.php288
-rw-r--r--inc/simplesamlphp/modules/InfoCard/www/crt/CA.crt21
-rw-r--r--inc/simplesamlphp/modules/InfoCard/www/crt/idp.crt16
-rw-r--r--inc/simplesamlphp/modules/InfoCard/www/crt/sts.crt16
-rw-r--r--inc/simplesamlphp/modules/InfoCard/www/getcardform.php153
-rw-r--r--inc/simplesamlphp/modules/InfoCard/www/login-infocard.php64
-rw-r--r--inc/simplesamlphp/modules/InfoCard/www/mex.php257
-rw-r--r--inc/simplesamlphp/modules/InfoCard/www/prueba.php162
-rw-r--r--inc/simplesamlphp/modules/InfoCard/www/resources/demoimage.pngbin0 -> 15871 bytes
-rw-r--r--inc/simplesamlphp/modules/InfoCard/www/resources/infocard_114x80.pngbin0 -> 3821 bytes
-rw-r--r--inc/simplesamlphp/modules/InfoCard/www/resources/infocard_self_114x80.pngbin0 -> 9302 bytes
-rw-r--r--inc/simplesamlphp/modules/InfoCard/www/tokenservice.php139
-rw-r--r--inc/simplesamlphp/modules/InfoCard/www/x509.php6
-rw-r--r--inc/simplesamlphp/modules/adfs/default-disable3
-rw-r--r--inc/simplesamlphp/modules/adfs/lib/IdP/ADFS.php199
-rw-r--r--inc/simplesamlphp/modules/adfs/www/idp/prp.php31
-rwxr-xr-xinc/simplesamlphp/modules/aggregator/bin/get.php24
-rw-r--r--inc/simplesamlphp/modules/aggregator/config-templates/module_aggregator.php45
-rw-r--r--inc/simplesamlphp/modules/aggregator/default-disable3
-rw-r--r--inc/simplesamlphp/modules/aggregator/dictionaries/aggregator.definition.json14
-rw-r--r--inc/simplesamlphp/modules/aggregator/dictionaries/aggregator.translation.json98
-rw-r--r--inc/simplesamlphp/modules/aggregator/docs/aggregator.txt90
-rw-r--r--inc/simplesamlphp/modules/aggregator/hooks/hook_frontpage.php17
-rw-r--r--inc/simplesamlphp/modules/aggregator/lib/ARP.php107
-rw-r--r--inc/simplesamlphp/modules/aggregator/lib/Aggregator.php250
-rw-r--r--inc/simplesamlphp/modules/aggregator/templates/list.php27
-rw-r--r--inc/simplesamlphp/modules/aggregator/www/arp.php77
-rw-r--r--inc/simplesamlphp/modules/aggregator/www/index.php48
-rwxr-xr-xinc/simplesamlphp/modules/aggregator2/bin/update.php16
-rw-r--r--inc/simplesamlphp/modules/aggregator2/config-templates/module_aggregator2.php113
-rw-r--r--inc/simplesamlphp/modules/aggregator2/default-disable3
-rw-r--r--inc/simplesamlphp/modules/aggregator2/docs/aggregator2.txt113
-rw-r--r--inc/simplesamlphp/modules/aggregator2/hooks/hook_cron.php33
-rw-r--r--inc/simplesamlphp/modules/aggregator2/lib/Aggregator.php453
-rw-r--r--inc/simplesamlphp/modules/aggregator2/lib/EntitySource.php260
-rw-r--r--inc/simplesamlphp/modules/aggregator2/www/get.php14
-rw-r--r--inc/simplesamlphp/modules/aselect/default-disable3
-rw-r--r--inc/simplesamlphp/modules/aselect/docs/aselect.txt44
-rw-r--r--inc/simplesamlphp/modules/aselect/lib/Auth/Source/aselect.php203
-rw-r--r--inc/simplesamlphp/modules/aselect/www/credentials.php47
-rw-r--r--inc/simplesamlphp/modules/aselect/www/linkback.php0
-rw-r--r--inc/simplesamlphp/modules/authX509/default-disable0
-rw-r--r--inc/simplesamlphp/modules/authX509/dictionaries/X509error.definition.json8
-rw-r--r--inc/simplesamlphp/modules/authX509/dictionaries/X509error.translation.json50
-rw-r--r--inc/simplesamlphp/modules/authX509/docs/authX509.txt106
-rw-r--r--inc/simplesamlphp/modules/authX509/lib/Auth/Source/X509userCert.php230
-rw-r--r--inc/simplesamlphp/modules/authX509/templates/X509error.php42
-rw-r--r--inc/simplesamlphp/modules/authYubiKey/default-disable3
-rw-r--r--inc/simplesamlphp/modules/authYubiKey/dictionaries/yubikey.definition.json8
-rw-r--r--inc/simplesamlphp/modules/authYubiKey/dictionaries/yubikey.translation.json58
-rw-r--r--inc/simplesamlphp/modules/authYubiKey/lib/Auth/Process/OTP2YubiPrefix.php78
-rw-r--r--inc/simplesamlphp/modules/authYubiKey/lib/Auth/Source/YubiKey.php206
-rw-r--r--inc/simplesamlphp/modules/authYubiKey/libextinc/Yubico.php163
-rw-r--r--inc/simplesamlphp/modules/authYubiKey/templates/yubikeylogin.php48
-rw-r--r--inc/simplesamlphp/modules/authYubiKey/www/resources/logo.jpgbin0 -> 7737 bytes
-rw-r--r--inc/simplesamlphp/modules/authYubiKey/www/resources/yubikey.jpgbin0 -> 3318 bytes
-rw-r--r--inc/simplesamlphp/modules/authYubiKey/www/yubikeylogin.php39
-rw-r--r--inc/simplesamlphp/modules/authcrypt/default-disable3
-rw-r--r--inc/simplesamlphp/modules/authcrypt/docs/authcrypt.txt73
-rw-r--r--inc/simplesamlphp/modules/authcrypt/lib/Auth/Source/Hash.php96
-rw-r--r--inc/simplesamlphp/modules/authcrypt/lib/Auth/Source/Htpasswd.php97
-rw-r--r--inc/simplesamlphp/modules/authfacebook/default-disable3
-rw-r--r--inc/simplesamlphp/modules/authfacebook/docs/authfacebook.txt13
-rw-r--r--inc/simplesamlphp/modules/authfacebook/extlibinc/base_facebook.php1143
-rw-r--r--inc/simplesamlphp/modules/authfacebook/extlibinc/fb_ca_chain_bundle.crt121
-rw-r--r--inc/simplesamlphp/modules/authfacebook/lib/Auth/Source/Facebook.php130
-rw-r--r--inc/simplesamlphp/modules/authfacebook/lib/Facebook.php85
-rw-r--r--inc/simplesamlphp/modules/authfacebook/www/linkback.php39
-rw-r--r--inc/simplesamlphp/modules/authlinkedin/default-disable3
-rw-r--r--inc/simplesamlphp/modules/authlinkedin/docs/oauthlinkedin.txt26
-rw-r--r--inc/simplesamlphp/modules/authlinkedin/lib/Auth/Source/LinkedIn.php122
-rw-r--r--inc/simplesamlphp/modules/authlinkedin/www/linkback.php34
-rw-r--r--inc/simplesamlphp/modules/authmyspace/default-disable3
-rw-r--r--inc/simplesamlphp/modules/authmyspace/docs/oauthmyspace.txt25
-rw-r--r--inc/simplesamlphp/modules/authmyspace/lib/Auth/Source/MySpace.php141
-rw-r--r--inc/simplesamlphp/modules/authmyspace/www/linkback.php45
-rw-r--r--inc/simplesamlphp/modules/authorize/default-enable3
-rw-r--r--inc/simplesamlphp/modules/authorize/dictionaries/Authorize.definition.json8
-rw-r--r--inc/simplesamlphp/modules/authorize/dictionaries/Authorize.translation.json55
-rw-r--r--inc/simplesamlphp/modules/authorize/docs/authorize.txt84
-rw-r--r--inc/simplesamlphp/modules/authorize/lib/Auth/Process/Authorize.php136
-rw-r--r--inc/simplesamlphp/modules/authorize/templates/authorize_403.php23
-rw-r--r--inc/simplesamlphp/modules/authorize/www/authorize_403.php22
-rw-r--r--inc/simplesamlphp/modules/authtwitter/default-disable3
-rw-r--r--inc/simplesamlphp/modules/authtwitter/docs/oauthtwitter.txt35
-rw-r--r--inc/simplesamlphp/modules/authtwitter/lib/Auth/Source/Twitter.php118
-rw-r--r--inc/simplesamlphp/modules/authtwitter/www/linkback.php37
-rw-r--r--inc/simplesamlphp/modules/authwindowslive/default-disable3
-rw-r--r--inc/simplesamlphp/modules/authwindowslive/docs/windowsliveid.txt20
-rw-r--r--inc/simplesamlphp/modules/authwindowslive/lib/Auth/Source/LiveID.php140
-rw-r--r--inc/simplesamlphp/modules/authwindowslive/www/linkback.php47
-rw-r--r--inc/simplesamlphp/modules/autotest/default-disable3
-rw-r--r--inc/simplesamlphp/modules/autotest/docs/test.txt19
-rw-r--r--inc/simplesamlphp/modules/autotest/www/attributes.php31
-rw-r--r--inc/simplesamlphp/modules/autotest/www/login.php20
-rw-r--r--inc/simplesamlphp/modules/autotest/www/logout.php24
-rw-r--r--inc/simplesamlphp/modules/cas/default-disable3
-rw-r--r--inc/simplesamlphp/modules/cas/docs/cas.txt36
-rw-r--r--inc/simplesamlphp/modules/cas/lib/Auth/Source/CAS.php236
-rw-r--r--inc/simplesamlphp/modules/cas/www/linkback.php30
-rw-r--r--inc/simplesamlphp/modules/casserver/config-templates/module_casserver.php25
-rw-r--r--inc/simplesamlphp/modules/casserver/default-disable3
-rw-r--r--inc/simplesamlphp/modules/casserver/www/cas.php36
-rw-r--r--inc/simplesamlphp/modules/casserver/www/login.php57
-rw-r--r--inc/simplesamlphp/modules/casserver/www/proxy.php55
-rw-r--r--inc/simplesamlphp/modules/casserver/www/serviceValidate.php101
-rw-r--r--inc/simplesamlphp/modules/casserver/www/tickets.php43
-rw-r--r--inc/simplesamlphp/modules/casserver/www/validate.php4
-rw-r--r--inc/simplesamlphp/modules/cdc/config-templates/module_cdc.php24
-rw-r--r--inc/simplesamlphp/modules/cdc/default-disable3
-rw-r--r--inc/simplesamlphp/modules/cdc/lib/Auth/Process/CDC.php72
-rw-r--r--inc/simplesamlphp/modules/cdc/lib/Client.php67
-rw-r--r--inc/simplesamlphp/modules/cdc/lib/Server.php404
-rw-r--r--inc/simplesamlphp/modules/cdc/www/resume.php22
-rw-r--r--inc/simplesamlphp/modules/cdc/www/server.php3
-rw-r--r--inc/simplesamlphp/modules/consent/default-enable3
-rw-r--r--inc/simplesamlphp/modules/consent/dictionaries/consent.definition.json65
-rw-r--r--inc/simplesamlphp/modules/consent/dictionaries/consent.php391
-rw-r--r--inc/simplesamlphp/modules/consent/dictionaries/consent.translation.json623
-rw-r--r--inc/simplesamlphp/modules/consent/docs/consent.txt293
-rw-r--r--inc/simplesamlphp/modules/consent/lib/Auth/Process/Consent.php321
-rw-r--r--inc/simplesamlphp/modules/consent/lib/Consent/Store/Cookie.php291
-rw-r--r--inc/simplesamlphp/modules/consent/lib/Consent/Store/Database.php497
-rw-r--r--inc/simplesamlphp/modules/consent/lib/Store.php138
-rw-r--r--inc/simplesamlphp/modules/consent/templates/consentform.php228
-rw-r--r--inc/simplesamlphp/modules/consent/templates/noconsent.php20
-rw-r--r--inc/simplesamlphp/modules/consent/www/getconsent.php155
-rw-r--r--inc/simplesamlphp/modules/consent/www/noconsent.php39
-rw-r--r--inc/simplesamlphp/modules/consent/www/style.css35
-rw-r--r--inc/simplesamlphp/modules/consentAdmin/config-templates/module_consentAdmin.php33
-rw-r--r--inc/simplesamlphp/modules/consentAdmin/default-disable3
-rw-r--r--inc/simplesamlphp/modules/consentAdmin/dictionaries/consentadmin.definition.json65
-rw-r--r--inc/simplesamlphp/modules/consentAdmin/dictionaries/consentadmin.translation.json505
-rw-r--r--inc/simplesamlphp/modules/consentAdmin/docs/ConsentDocs.txt.old128
-rw-r--r--inc/simplesamlphp/modules/consentAdmin/docs/consentAdmin.txt75
-rw-r--r--inc/simplesamlphp/modules/consentAdmin/hooks/hook_frontpage.php16
-rw-r--r--inc/simplesamlphp/modules/consentAdmin/templates/consentadmin.php137
-rw-r--r--inc/simplesamlphp/modules/consentAdmin/templates/consentadminajax.php3
-rw-r--r--inc/simplesamlphp/modules/consentAdmin/www/consentAdmin.php266
-rw-r--r--inc/simplesamlphp/modules/consentAdmin/www/includes/consentSimpleAjax.js70
-rw-r--r--inc/simplesamlphp/modules/consentSimpleAdmin/config-templates/module_consentSimpleAdmin.php16
-rw-r--r--inc/simplesamlphp/modules/consentSimpleAdmin/default-disable3
-rw-r--r--inc/simplesamlphp/modules/consentSimpleAdmin/dictionaries/consentsimpleadmin.definition.json26
-rw-r--r--inc/simplesamlphp/modules/consentSimpleAdmin/dictionaries/consentsimpleadmin.translation.json202
-rw-r--r--inc/simplesamlphp/modules/consentSimpleAdmin/hooks/hook_frontpage.php23
-rw-r--r--inc/simplesamlphp/modules/consentSimpleAdmin/hooks/hook_sanitycheck.php27
-rw-r--r--inc/simplesamlphp/modules/consentSimpleAdmin/templates/consentadmin.php34
-rw-r--r--inc/simplesamlphp/modules/consentSimpleAdmin/templates/consentstats.php20
-rw-r--r--inc/simplesamlphp/modules/consentSimpleAdmin/www/consentAdmin.php93
-rw-r--r--inc/simplesamlphp/modules/consentSimpleAdmin/www/consentStats.php33
-rw-r--r--inc/simplesamlphp/modules/core/default-enable3
-rw-r--r--inc/simplesamlphp/modules/core/dictionaries/frontpage.definition.json146
-rw-r--r--inc/simplesamlphp/modules/core/dictionaries/frontpage.translation.json1423
-rw-r--r--inc/simplesamlphp/modules/core/dictionaries/no_cookie.definition.json11
-rw-r--r--inc/simplesamlphp/modules/core/dictionaries/no_cookie.translation.json78
-rw-r--r--inc/simplesamlphp/modules/core/dictionaries/no_metadata.definition.json17
-rw-r--r--inc/simplesamlphp/modules/core/dictionaries/no_metadata.translation.json127
-rw-r--r--inc/simplesamlphp/modules/core/dictionaries/no_state.definition.json35
-rw-r--r--inc/simplesamlphp/modules/core/dictionaries/no_state.translation.json255
-rw-r--r--inc/simplesamlphp/modules/core/dictionaries/short_sso_interval.definition.json11
-rw-r--r--inc/simplesamlphp/modules/core/dictionaries/short_sso_interval.translation.json77
-rw-r--r--inc/simplesamlphp/modules/core/docs/authproc_attributeadd.txt49
-rw-r--r--inc/simplesamlphp/modules/core/docs/authproc_attributealter.txt85
-rw-r--r--inc/simplesamlphp/modules/core/docs/authproc_attributelimit.txt53
-rw-r--r--inc/simplesamlphp/modules/core/docs/authproc_attributemap.txt34
-rw-r--r--inc/simplesamlphp/modules/core/docs/authproc_attributerealm.txt29
-rw-r--r--inc/simplesamlphp/modules/core/docs/authproc_generategroups.txt51
-rw-r--r--inc/simplesamlphp/modules/core/docs/authproc_languageadaptor.txt42
-rw-r--r--inc/simplesamlphp/modules/core/docs/authproc_php.txt46
-rw-r--r--inc/simplesamlphp/modules/core/docs/authproc_scopeattribute.txt40
-rw-r--r--inc/simplesamlphp/modules/core/docs/authproc_scopefromattribute.txt31
-rw-r--r--inc/simplesamlphp/modules/core/docs/authproc_statisticswithattribute.txt26
-rw-r--r--inc/simplesamlphp/modules/core/docs/authproc_targetedid.txt63
-rw-r--r--inc/simplesamlphp/modules/core/docs/authproc_warnshortssointerval.txt16
-rw-r--r--inc/simplesamlphp/modules/core/hooks/hook_frontpage.php33
-rw-r--r--inc/simplesamlphp/modules/core/hooks/hook_sanitycheck.php52
-rw-r--r--inc/simplesamlphp/modules/core/lib/ACL.php307
-rw-r--r--inc/simplesamlphp/modules/core/lib/Auth/Process/AttributeAdd.php92
-rw-r--r--inc/simplesamlphp/modules/core/lib/Auth/Process/AttributeAlter.php133
-rw-r--r--inc/simplesamlphp/modules/core/lib/Auth/Process/AttributeCopy.php73
-rw-r--r--inc/simplesamlphp/modules/core/lib/Auth/Process/AttributeLimit.php109
-rw-r--r--inc/simplesamlphp/modules/core/lib/Auth/Process/AttributeMap.php100
-rw-r--r--inc/simplesamlphp/modules/core/lib/Auth/Process/AttributeRealm.php57
-rw-r--r--inc/simplesamlphp/modules/core/lib/Auth/Process/GenerateGroups.php147
-rw-r--r--inc/simplesamlphp/modules/core/lib/Auth/Process/LanguageAdaptor.php67
-rw-r--r--inc/simplesamlphp/modules/core/lib/Auth/Process/PHP.php51
-rw-r--r--inc/simplesamlphp/modules/core/lib/Auth/Process/ScopeAttribute.php97
-rw-r--r--inc/simplesamlphp/modules/core/lib/Auth/Process/ScopeFromAttribute.php89
-rw-r--r--inc/simplesamlphp/modules/core/lib/Auth/Process/StatisticsWithAttribute.php86
-rw-r--r--inc/simplesamlphp/modules/core/lib/Auth/Process/TargetedID.php181
-rw-r--r--inc/simplesamlphp/modules/core/lib/Auth/Process/WarnShortSSOInterval.php55
-rw-r--r--inc/simplesamlphp/modules/core/lib/Auth/Source/AdminPassword.php68
-rw-r--r--inc/simplesamlphp/modules/core/lib/Auth/UserPassBase.php237
-rw-r--r--inc/simplesamlphp/modules/core/lib/Auth/UserPassOrgBase.php285
-rw-r--r--inc/simplesamlphp/modules/core/lib/ModuleDefinition.php129
-rw-r--r--inc/simplesamlphp/modules/core/lib/ModuleInstaller.php195
-rw-r--r--inc/simplesamlphp/modules/core/lib/Stats/Output/File.php98
-rw-r--r--inc/simplesamlphp/modules/core/lib/Stats/Output/Log.php43
-rw-r--r--inc/simplesamlphp/modules/core/lib/Storage/SQLPermanentStorage.php211
-rw-r--r--inc/simplesamlphp/modules/core/templates/authsource_list.tpl.php21
-rw-r--r--inc/simplesamlphp/modules/core/templates/frontpage_auth.tpl.php34
-rw-r--r--inc/simplesamlphp/modules/core/templates/frontpage_config.tpl.php97
-rw-r--r--inc/simplesamlphp/modules/core/templates/frontpage_federation.tpl.php162
-rw-r--r--inc/simplesamlphp/modules/core/templates/frontpage_welcome.tpl.php36
-rw-r--r--inc/simplesamlphp/modules/core/templates/loginuserpass.php143
-rw-r--r--inc/simplesamlphp/modules/core/templates/logout-iframe-wrapper.php28
-rw-r--r--inc/simplesamlphp/modules/core/templates/logout-iframe.php212
-rw-r--r--inc/simplesamlphp/modules/core/templates/no_cookie.tpl.php22
-rw-r--r--inc/simplesamlphp/modules/core/templates/no_metadata.tpl.php9
-rw-r--r--inc/simplesamlphp/modules/core/templates/no_state.tpl.php15
-rw-r--r--inc/simplesamlphp/modules/core/templates/short_sso_interval.php37
-rw-r--r--inc/simplesamlphp/modules/core/templates/show_metadata.tpl.php18
-rw-r--r--inc/simplesamlphp/modules/core/www/as_login.php38
-rw-r--r--inc/simplesamlphp/modules/core/www/as_logout.php19
-rw-r--r--inc/simplesamlphp/modules/core/www/authenticate.php56
-rw-r--r--inc/simplesamlphp/modules/core/www/bwc_resumeauth.php31
-rw-r--r--inc/simplesamlphp/modules/core/www/cleardiscochoices.php38
-rw-r--r--inc/simplesamlphp/modules/core/www/frontpage_auth.php73
-rw-r--r--inc/simplesamlphp/modules/core/www/frontpage_config.php160
-rw-r--r--inc/simplesamlphp/modules/core/www/frontpage_federation.php131
-rw-r--r--inc/simplesamlphp/modules/core/www/frontpage_welcome.php66
-rw-r--r--inc/simplesamlphp/modules/core/www/idp/logout-iframe-done.php65
-rw-r--r--inc/simplesamlphp/modules/core/www/idp/logout-iframe.js74
-rw-r--r--inc/simplesamlphp/modules/core/www/idp/logout-iframe.php112
-rw-r--r--inc/simplesamlphp/modules/core/www/idp/resumeauth.php21
-rw-r--r--inc/simplesamlphp/modules/core/www/idp/resumelogout.php15
-rw-r--r--inc/simplesamlphp/modules/core/www/login-admin.php14
-rw-r--r--inc/simplesamlphp/modules/core/www/loginuserpass.php92
-rw-r--r--inc/simplesamlphp/modules/core/www/loginuserpassorg.php93
-rw-r--r--inc/simplesamlphp/modules/core/www/no_cookie.php13
-rw-r--r--inc/simplesamlphp/modules/core/www/postredirect.php55
-rw-r--r--inc/simplesamlphp/modules/core/www/short_sso_interval.php29
-rw-r--r--inc/simplesamlphp/modules/core/www/show_metadata.php36
-rw-r--r--inc/simplesamlphp/modules/cron/config-templates/module_cron.php17
-rw-r--r--inc/simplesamlphp/modules/cron/default-disable3
-rw-r--r--inc/simplesamlphp/modules/cron/dictionaries/cron.definition.json26
-rw-r--r--inc/simplesamlphp/modules/cron/dictionaries/cron.translation.json202
-rw-r--r--inc/simplesamlphp/modules/cron/hooks/hook_cron.php20
-rw-r--r--inc/simplesamlphp/modules/cron/hooks/hook_frontpage.php17
-rw-r--r--inc/simplesamlphp/modules/cron/templates/croninfo-result.php20
-rw-r--r--inc/simplesamlphp/modules/cron/templates/croninfo-tpl.php38
-rw-r--r--inc/simplesamlphp/modules/cron/www/cron.php62
-rw-r--r--inc/simplesamlphp/modules/cron/www/croninfo.php44
-rw-r--r--inc/simplesamlphp/modules/discopower/config-templates/module_discopower.php50
-rw-r--r--inc/simplesamlphp/modules/discopower/default-disable3
-rw-r--r--inc/simplesamlphp/modules/discopower/dictionaries/tabs.definition.json35
-rw-r--r--inc/simplesamlphp/modules/discopower/dictionaries/tabs.translation.json0
-rw-r--r--inc/simplesamlphp/modules/discopower/lib/PowerIdPDisco.php343
-rw-r--r--inc/simplesamlphp/modules/discopower/templates/disco-tpl.php205
-rw-r--r--inc/simplesamlphp/modules/discopower/www/disco.php17
-rw-r--r--inc/simplesamlphp/modules/discopower/www/js/jquery.livesearch.js37
-rw-r--r--inc/simplesamlphp/modules/discopower/www/js/quicksilver.js95
-rw-r--r--inc/simplesamlphp/modules/discopower/www/js/suggest.js23
-rw-r--r--inc/simplesamlphp/modules/discopower/www/style.css76
-rw-r--r--inc/simplesamlphp/modules/exampleattributeserver/default-disable3
-rw-r--r--inc/simplesamlphp/modules/exampleattributeserver/www/attributeserver.php93
-rw-r--r--inc/simplesamlphp/modules/exampleauth/default-disable3
-rw-r--r--inc/simplesamlphp/modules/exampleauth/lib/Auth/Process/RedirectTest.php30
-rw-r--r--inc/simplesamlphp/modules/exampleauth/lib/Auth/Source/External.php274
-rw-r--r--inc/simplesamlphp/modules/exampleauth/lib/Auth/Source/Static.php60
-rw-r--r--inc/simplesamlphp/modules/exampleauth/lib/Auth/Source/UserPass.php93
-rw-r--r--inc/simplesamlphp/modules/exampleauth/www/authpage.php124
-rw-r--r--inc/simplesamlphp/modules/exampleauth/www/redirecttest.php22
-rw-r--r--inc/simplesamlphp/modules/exampleauth/www/resume.php12
-rw-r--r--inc/simplesamlphp/modules/expirycheck/default-disable3
-rw-r--r--inc/simplesamlphp/modules/expirycheck/dictionaries/warning.definition.json35
-rw-r--r--inc/simplesamlphp/modules/expirycheck/dictionaries/warning.translation.json46
-rw-r--r--inc/simplesamlphp/modules/expirycheck/docs/expirycheck.txt48
-rw-r--r--inc/simplesamlphp/modules/expirycheck/lib/Auth/Process/ExpiryDate.php161
-rw-r--r--inc/simplesamlphp/modules/expirycheck/templates/about2expire.php93
-rw-r--r--inc/simplesamlphp/modules/expirycheck/templates/expired.php12
-rw-r--r--inc/simplesamlphp/modules/expirycheck/www/about2expire.php36
-rw-r--r--inc/simplesamlphp/modules/expirycheck/www/expired.php27
-rw-r--r--inc/simplesamlphp/modules/ldap/default-enable3
-rw-r--r--inc/simplesamlphp/modules/ldap/docs/ldap.txt544
-rw-r--r--inc/simplesamlphp/modules/ldap/lib/Auth/Process/AttributeAddFromLDAP.php145
-rw-r--r--inc/simplesamlphp/modules/ldap/lib/Auth/Process/AttributeAddUsersGroups.php295
-rw-r--r--inc/simplesamlphp/modules/ldap/lib/Auth/Process/BaseFilter.php277
-rw-r--r--inc/simplesamlphp/modules/ldap/lib/Auth/Source/LDAP.php58
-rw-r--r--inc/simplesamlphp/modules/ldap/lib/Auth/Source/LDAPMulti.php125
-rw-r--r--inc/simplesamlphp/modules/ldap/lib/ConfigHelper.php263
-rw-r--r--inc/simplesamlphp/modules/logpeek/config-templates/module_logpeek.php15
-rw-r--r--inc/simplesamlphp/modules/logpeek/default-disable3
-rw-r--r--inc/simplesamlphp/modules/logpeek/hooks/hook_frontpage.php17
-rw-r--r--inc/simplesamlphp/modules/logpeek/lib/File/reverseRead.php224
-rw-r--r--inc/simplesamlphp/modules/logpeek/lib/Syslog/parseLine.php25
-rw-r--r--inc/simplesamlphp/modules/logpeek/templates/logpeek.php27
-rw-r--r--inc/simplesamlphp/modules/logpeek/www/index.php54
-rw-r--r--inc/simplesamlphp/modules/memcacheMonitor/default-disable3
-rw-r--r--inc/simplesamlphp/modules/memcacheMonitor/dictionaries/memcachestat.definition.json59
-rw-r--r--inc/simplesamlphp/modules/memcacheMonitor/dictionaries/memcachestat.translation.json439
-rw-r--r--inc/simplesamlphp/modules/memcacheMonitor/hooks/hook_frontpage.php19
-rw-r--r--inc/simplesamlphp/modules/memcacheMonitor/hooks/hook_sanitycheck.php38
-rw-r--r--inc/simplesamlphp/modules/memcacheMonitor/templates/memcachestat.tpl.php102
-rw-r--r--inc/simplesamlphp/modules/memcacheMonitor/www/memcachestat.php108
-rw-r--r--inc/simplesamlphp/modules/metaedit/config-template/module_metaedit.php12
-rw-r--r--inc/simplesamlphp/modules/metaedit/default-disable3
-rw-r--r--inc/simplesamlphp/modules/metaedit/hooks/hook_frontpage.php18
-rw-r--r--inc/simplesamlphp/modules/metaedit/lib/MetaEditor.php186
-rw-r--r--inc/simplesamlphp/modules/metaedit/templates/formedit.php21
-rw-r--r--inc/simplesamlphp/modules/metaedit/templates/metalist.php55
-rw-r--r--inc/simplesamlphp/modules/metaedit/templates/saved.php15
-rw-r--r--inc/simplesamlphp/modules/metaedit/templates/xmlimport.tpl.php26
-rw-r--r--inc/simplesamlphp/modules/metaedit/www/edit.php83
-rw-r--r--inc/simplesamlphp/modules/metaedit/www/index.php51
-rw-r--r--inc/simplesamlphp/modules/metaedit/www/resources/style.css37
-rw-r--r--inc/simplesamlphp/modules/metaedit/www/xmlimport.php9
-rwxr-xr-xinc/simplesamlphp/modules/metarefresh/bin/metarefresh.php163
-rw-r--r--inc/simplesamlphp/modules/metarefresh/config-templates/config-metarefresh.php65
-rw-r--r--inc/simplesamlphp/modules/metarefresh/default-disable3
-rw-r--r--inc/simplesamlphp/modules/metarefresh/hooks/hook_cron.php98
-rw-r--r--inc/simplesamlphp/modules/metarefresh/hooks/hook_frontpage.php17
-rw-r--r--inc/simplesamlphp/modules/metarefresh/lib/ARP.php103
-rw-r--r--inc/simplesamlphp/modules/metarefresh/lib/MetaLoader.php446
-rw-r--r--inc/simplesamlphp/modules/metarefresh/templates/fetch.tpl.php23
-rw-r--r--inc/simplesamlphp/modules/metarefresh/www/fetch.php77
-rw-r--r--inc/simplesamlphp/modules/modinfo/default-enable3
-rw-r--r--inc/simplesamlphp/modules/modinfo/dictionaries/modinfo.definition.json27
-rw-r--r--inc/simplesamlphp/modules/modinfo/dictionaries/modinfo.translation.json127
-rw-r--r--inc/simplesamlphp/modules/modinfo/hooks/hook_frontpage.php17
-rw-r--r--inc/simplesamlphp/modules/modinfo/hooks/hook_moduleinfo.php21
-rw-r--r--inc/simplesamlphp/modules/modinfo/templates/modlist.php63
-rw-r--r--inc/simplesamlphp/modules/modinfo/www/index.php31
-rw-r--r--inc/simplesamlphp/modules/multiauth/default-enable3
-rw-r--r--inc/simplesamlphp/modules/multiauth/dictionaries/multiauth.definition.json8
-rw-r--r--inc/simplesamlphp/modules/multiauth/dictionaries/multiauth.translation.json54
-rw-r--r--inc/simplesamlphp/modules/multiauth/docs/multiauth.txt111
-rw-r--r--inc/simplesamlphp/modules/multiauth/lib/Auth/Source/MultiAuth.php229
-rw-r--r--inc/simplesamlphp/modules/multiauth/templates/selectsource.php31
-rw-r--r--inc/simplesamlphp/modules/multiauth/www/selectsource.php64
-rw-r--r--inc/simplesamlphp/modules/negotiate/default-disable3
-rw-r--r--inc/simplesamlphp/modules/negotiate/dictionaries/negotiate.definition.json17
-rw-r--r--inc/simplesamlphp/modules/negotiate/dictionaries/negotiate.translation.json47
-rw-r--r--inc/simplesamlphp/modules/negotiate/docs/negotiate.txt279
-rw-r--r--inc/simplesamlphp/modules/negotiate/lib/Auth/Source/Negotiate.php321
-rw-r--r--inc/simplesamlphp/modules/negotiate/templates/disable.php21
-rw-r--r--inc/simplesamlphp/modules/negotiate/templates/enable.php22
-rw-r--r--inc/simplesamlphp/modules/negotiate/www/backend.php18
-rw-r--r--inc/simplesamlphp/modules/negotiate/www/disable.php17
-rw-r--r--inc/simplesamlphp/modules/negotiate/www/enable.php17
-rw-r--r--inc/simplesamlphp/modules/negotiate/www/retry.php32
-rwxr-xr-xinc/simplesamlphp/modules/oauth/bin/demo.php64
-rw-r--r--inc/simplesamlphp/modules/oauth/config-template/module_oauth.php29
-rw-r--r--inc/simplesamlphp/modules/oauth/default-disable3
-rw-r--r--inc/simplesamlphp/modules/oauth/hooks/hook_cron.php30
-rw-r--r--inc/simplesamlphp/modules/oauth/hooks/hook_frontpage.php18
-rw-r--r--inc/simplesamlphp/modules/oauth/lib/Consumer.php168
-rw-r--r--inc/simplesamlphp/modules/oauth/lib/OAuthServer.php17
-rw-r--r--inc/simplesamlphp/modules/oauth/lib/OAuthSignatureMethodRSASHA1.php32
-rw-r--r--inc/simplesamlphp/modules/oauth/lib/OAuthStore.php189
-rw-r--r--inc/simplesamlphp/modules/oauth/lib/Registry.php149
-rw-r--r--inc/simplesamlphp/modules/oauth/libextinc/LICENSE.txt22
-rw-r--r--inc/simplesamlphp/modules/oauth/libextinc/OAuth.php895
-rw-r--r--inc/simplesamlphp/modules/oauth/templates/authorized.php20
-rw-r--r--inc/simplesamlphp/modules/oauth/templates/consent.php19
-rw-r--r--inc/simplesamlphp/modules/oauth/templates/registry.edit.tpl.php21
-rw-r--r--inc/simplesamlphp/modules/oauth/templates/registry.list.php57
-rw-r--r--inc/simplesamlphp/modules/oauth/templates/registry.saved.php15
-rw-r--r--inc/simplesamlphp/modules/oauth/www/accessToken.php41
-rw-r--r--inc/simplesamlphp/modules/oauth/www/authorize.php92
-rw-r--r--inc/simplesamlphp/modules/oauth/www/getUserInfo.php26
-rw-r--r--inc/simplesamlphp/modules/oauth/www/registry.edit.php71
-rw-r--r--inc/simplesamlphp/modules/oauth/www/registry.php60
-rw-r--r--inc/simplesamlphp/modules/oauth/www/requestToken.php32
-rw-r--r--inc/simplesamlphp/modules/oauth/www/resources/style.css37
-rw-r--r--inc/simplesamlphp/modules/openid/default-disable3
-rw-r--r--inc/simplesamlphp/modules/openid/dictionaries/dictopenid.definition.json5
-rw-r--r--inc/simplesamlphp/modules/openid/dictionaries/dictopenid.translation.json0
-rw-r--r--inc/simplesamlphp/modules/openid/lib/Auth/Source/OpenIDConsumer.php350
-rw-r--r--inc/simplesamlphp/modules/openid/lib/SessionStore.php54
-rw-r--r--inc/simplesamlphp/modules/openid/lib/StateStore.php187
-rw-r--r--inc/simplesamlphp/modules/openid/templates/consumer.php65
-rw-r--r--inc/simplesamlphp/modules/openid/www/consumer.php29
-rw-r--r--inc/simplesamlphp/modules/openid/www/linkback.php24
-rw-r--r--inc/simplesamlphp/modules/openidProvider/config-template/module_openidProvider.php17
-rw-r--r--inc/simplesamlphp/modules/openidProvider/default-disable3
-rw-r--r--inc/simplesamlphp/modules/openidProvider/dictionaries/openidProvider.definition.json50
-rw-r--r--inc/simplesamlphp/modules/openidProvider/dictionaries/openidProvider.translation.json391
-rw-r--r--inc/simplesamlphp/modules/openidProvider/docs/provider.txt56
-rw-r--r--inc/simplesamlphp/modules/openidProvider/hooks/hook_frontpage.php15
-rw-r--r--inc/simplesamlphp/modules/openidProvider/lib/Server.php437
-rw-r--r--inc/simplesamlphp/modules/openidProvider/templates/trust.tpl.php27
-rw-r--r--inc/simplesamlphp/modules/openidProvider/templates/user.tpl.php81
-rw-r--r--inc/simplesamlphp/modules/openidProvider/www/resume.php9
-rw-r--r--inc/simplesamlphp/modules/openidProvider/www/server.php6
-rw-r--r--inc/simplesamlphp/modules/openidProvider/www/trust.php36
-rw-r--r--inc/simplesamlphp/modules/openidProvider/www/user.php72
-rw-r--r--inc/simplesamlphp/modules/openidProvider/www/xrds.php48
-rw-r--r--inc/simplesamlphp/modules/papi/default-disable0
-rw-r--r--inc/simplesamlphp/modules/papi/docs/papi.txt43
-rw-r--r--inc/simplesamlphp/modules/papi/lib/Auth/Source/PAPI.php174
-rw-r--r--inc/simplesamlphp/modules/portal/config-templates/module_portal.php17
-rw-r--r--inc/simplesamlphp/modules/portal/default-enable3
-rw-r--r--inc/simplesamlphp/modules/portal/hooks/hook_htmlinject.php48
-rw-r--r--inc/simplesamlphp/modules/portal/lib/Portal.php84
-rw-r--r--inc/simplesamlphp/modules/preprodwarning/default-disable3
-rw-r--r--inc/simplesamlphp/modules/preprodwarning/dictionaries/warning.definition.json11
-rw-r--r--inc/simplesamlphp/modules/preprodwarning/dictionaries/warning.translation.json92
-rw-r--r--inc/simplesamlphp/modules/preprodwarning/lib/Auth/Process/Warning.php39
-rw-r--r--inc/simplesamlphp/modules/preprodwarning/templates/warning.php46
-rw-r--r--inc/simplesamlphp/modules/preprodwarning/www/showwarning.php37
-rw-r--r--inc/simplesamlphp/modules/radius/default-disable3
-rw-r--r--inc/simplesamlphp/modules/radius/docs/radius.txt91
-rw-r--r--inc/simplesamlphp/modules/radius/lib/Auth/Source/Radius.php221
-rw-r--r--inc/simplesamlphp/modules/riak/config-templates/module_riak.php17
-rw-r--r--inc/simplesamlphp/modules/riak/default-disable3
-rw-r--r--inc/simplesamlphp/modules/riak/docs/simplesamlphp-riak.txt118
-rw-r--r--inc/simplesamlphp/modules/riak/hooks/hook_cron.php53
-rw-r--r--inc/simplesamlphp/modules/riak/lib/Store/Store.php103
-rw-r--r--inc/simplesamlphp/modules/saml/default-enable3
-rw-r--r--inc/simplesamlphp/modules/saml/dictionaries/wrong_authncontextclassref.definition.json8
-rw-r--r--inc/simplesamlphp/modules/saml/dictionaries/wrong_authncontextclassref.translation.json22
-rw-r--r--inc/simplesamlphp/modules/saml/docs/authproc_expectedauthncontextclassref.txt22
-rw-r--r--inc/simplesamlphp/modules/saml/docs/keyrollover.txt100
-rw-r--r--inc/simplesamlphp/modules/saml/docs/nameid.txt110
-rw-r--r--inc/simplesamlphp/modules/saml/docs/nameidattribute.txt67
-rw-r--r--inc/simplesamlphp/modules/saml/docs/sp.txt403
-rw-r--r--inc/simplesamlphp/modules/saml/hooks/hook_metadata_hosted.php36
-rw-r--r--inc/simplesamlphp/modules/saml/lib/Auth/Process/AttributeNameID.php60
-rw-r--r--inc/simplesamlphp/modules/saml/lib/Auth/Process/AuthnContextClassRef.php48
-rw-r--r--inc/simplesamlphp/modules/saml/lib/Auth/Process/ExpectedAuthnContextClassRef.php85
-rw-r--r--inc/simplesamlphp/modules/saml/lib/Auth/Process/NameIDAttribute.php138
-rw-r--r--inc/simplesamlphp/modules/saml/lib/Auth/Process/PersistentNameID.php79
-rw-r--r--inc/simplesamlphp/modules/saml/lib/Auth/Process/SQLPersistentNameID.php92
-rw-r--r--inc/simplesamlphp/modules/saml/lib/Auth/Process/TransientNameID.php35
-rw-r--r--inc/simplesamlphp/modules/saml/lib/Auth/Source/SP.php532
-rw-r--r--inc/simplesamlphp/modules/saml/lib/BaseNameIDGenerator.php116
-rw-r--r--inc/simplesamlphp/modules/saml/lib/Error.php196
-rw-r--r--inc/simplesamlphp/modules/saml/lib/IdP/SAML1.php130
-rw-r--r--inc/simplesamlphp/modules/saml/lib/IdP/SAML2.php959
-rw-r--r--inc/simplesamlphp/modules/saml/lib/IdP/SQLNameID.php172
-rw-r--r--inc/simplesamlphp/modules/saml/lib/Message.php774
-rw-r--r--inc/simplesamlphp/modules/saml/lib/SP/LogoutStore.php275
-rw-r--r--inc/simplesamlphp/modules/saml/templates/sp/wrong_authncontextclassref.tpl.php13
-rw-r--r--inc/simplesamlphp/modules/saml/www/disco.php8
-rw-r--r--inc/simplesamlphp/modules/saml/www/idp/certs.php37
-rw-r--r--inc/simplesamlphp/modules/saml/www/sp/discoresp.php29
-rw-r--r--inc/simplesamlphp/modules/saml/www/sp/metadata.php254
-rw-r--r--inc/simplesamlphp/modules/saml/www/sp/saml1-acs.php83
-rw-r--r--inc/simplesamlphp/modules/saml/www/sp/saml2-acs.php185
-rw-r--r--inc/simplesamlphp/modules/saml/www/sp/saml2-logout.php114
-rw-r--r--inc/simplesamlphp/modules/saml/www/sp/wrong_authncontextclassref.php5
-rw-r--r--inc/simplesamlphp/modules/saml2debug/default-disable3
-rw-r--r--inc/simplesamlphp/modules/saml2debug/hooks/hook_frontpage.php19
-rw-r--r--inc/simplesamlphp/modules/saml2debug/templates/debug.tpl.php67
-rw-r--r--inc/simplesamlphp/modules/saml2debug/www/debug.php68
-rw-r--r--inc/simplesamlphp/modules/sanitycheck/config-templates/config-sanitycheck.php18
-rw-r--r--inc/simplesamlphp/modules/sanitycheck/default-enable3
-rw-r--r--inc/simplesamlphp/modules/sanitycheck/hooks/hook_cron.php42
-rw-r--r--inc/simplesamlphp/modules/sanitycheck/hooks/hook_frontpage.php18
-rw-r--r--inc/simplesamlphp/modules/sanitycheck/hooks/hook_moduleinfo.php20
-rw-r--r--inc/simplesamlphp/modules/sanitycheck/hooks/hook_sanitycheck.php15
-rw-r--r--inc/simplesamlphp/modules/sanitycheck/templates/check-tpl.php48
-rw-r--r--inc/simplesamlphp/modules/sanitycheck/www/index.php30
-rw-r--r--inc/simplesamlphp/modules/smartnameattribute/default-disable3
-rw-r--r--inc/simplesamlphp/modules/smartnameattribute/lib/Auth/Process/SmartName.php79
-rw-r--r--inc/simplesamlphp/modules/sqlauth/default-enable3
-rw-r--r--inc/simplesamlphp/modules/sqlauth/docs/sql.txt77
-rw-r--r--inc/simplesamlphp/modules/sqlauth/lib/Auth/Source/SQL.php196
-rwxr-xr-xinc/simplesamlphp/modules/statistics/bin/loganalyzer.php92
-rwxr-xr-xinc/simplesamlphp/modules/statistics/bin/logcleaner.php92
-rw-r--r--inc/simplesamlphp/modules/statistics/config-templates/module_statistics.php238
-rw-r--r--inc/simplesamlphp/modules/statistics/default-disable3
-rw-r--r--inc/simplesamlphp/modules/statistics/docs/statistics.txt132
-rw-r--r--inc/simplesamlphp/modules/statistics/hooks/hook_cron.php36
-rw-r--r--inc/simplesamlphp/modules/statistics/hooks/hook_frontpage.php23
-rw-r--r--inc/simplesamlphp/modules/statistics/hooks/hook_sanitycheck.php39
-rw-r--r--inc/simplesamlphp/modules/statistics/lib/AccessCheck.php84
-rw-r--r--inc/simplesamlphp/modules/statistics/lib/Aggregator.php293
-rw-r--r--inc/simplesamlphp/modules/statistics/lib/DateHandler.php65
-rw-r--r--inc/simplesamlphp/modules/statistics/lib/DateHandlerMonth.php60
-rw-r--r--inc/simplesamlphp/modules/statistics/lib/Graph/GoogleCharts.php185
-rw-r--r--inc/simplesamlphp/modules/statistics/lib/LogCleaner.php178
-rw-r--r--inc/simplesamlphp/modules/statistics/lib/LogParser.php73
-rw-r--r--inc/simplesamlphp/modules/statistics/lib/RatioDataset.php85
-rw-r--r--inc/simplesamlphp/modules/statistics/lib/Ruleset.php92
-rw-r--r--inc/simplesamlphp/modules/statistics/lib/StatDataset.php323
-rw-r--r--inc/simplesamlphp/modules/statistics/lib/Statistics/FieldPresentation/Base.php20
-rw-r--r--inc/simplesamlphp/modules/statistics/lib/Statistics/FieldPresentation/Entity.php23
-rw-r--r--inc/simplesamlphp/modules/statistics/lib/Statistics/Rulesets/BaseRule.php118
-rw-r--r--inc/simplesamlphp/modules/statistics/lib/Statistics/Rulesets/Ratio.php65
-rw-r--r--inc/simplesamlphp/modules/statistics/templates/statistics-tpl.php319
-rw-r--r--inc/simplesamlphp/modules/statistics/templates/statmeta-tpl.php56
-rw-r--r--inc/simplesamlphp/modules/statistics/www/showstats.php127
-rw-r--r--inc/simplesamlphp/modules/statistics/www/statmeta.php16
-rw-r--r--inc/simplesamlphp/modules/themefeidernd/default-disable3
-rw-r--r--inc/simplesamlphp/modules/themefeidernd/themes/feidernd/core/loginuserpass.php176
-rw-r--r--inc/simplesamlphp/modules/themefeidernd/www/feidernd.css105
-rw-r--r--inc/simplesamlphp/modules/themefeidernd/www/ssplogo-fish-only-s.pngbin0 -> 14145 bytes
-rw-r--r--inc/simplesamlphp/schemas/oasis-sstc-saml-schema-assertion-1.1.xsd201
-rw-r--r--inc/simplesamlphp/schemas/oasis-sstc-saml-schema-protocol-1.1.xsd132
-rw-r--r--inc/simplesamlphp/schemas/saml-schema-assertion-2.0.xsd283
-rw-r--r--inc/simplesamlphp/schemas/saml-schema-authn-context-2.0.xsd23
-rw-r--r--inc/simplesamlphp/schemas/saml-schema-authn-context-auth-telephony-2.0.xsd81
-rw-r--r--inc/simplesamlphp/schemas/saml-schema-authn-context-ip-2.0.xsd65
-rw-r--r--inc/simplesamlphp/schemas/saml-schema-authn-context-ippword-2.0.xsd67
-rw-r--r--inc/simplesamlphp/schemas/saml-schema-authn-context-kerberos-2.0.xsd83
-rw-r--r--inc/simplesamlphp/schemas/saml-schema-authn-context-mobileonefactor-reg-2.0.xsd186
-rw-r--r--inc/simplesamlphp/schemas/saml-schema-authn-context-mobileonefactor-unreg-2.0.xsd183
-rw-r--r--inc/simplesamlphp/schemas/saml-schema-authn-context-mobiletwofactor-reg-2.0.xsd202
-rw-r--r--inc/simplesamlphp/schemas/saml-schema-authn-context-mobiletwofactor-unreg-2.0.xsd200
-rw-r--r--inc/simplesamlphp/schemas/saml-schema-authn-context-nomad-telephony-2.0.xsd81
-rw-r--r--inc/simplesamlphp/schemas/saml-schema-authn-context-personal-telephony-2.0.xsd80
-rw-r--r--inc/simplesamlphp/schemas/saml-schema-authn-context-pgp-2.0.xsd83
-rw-r--r--inc/simplesamlphp/schemas/saml-schema-authn-context-ppt-2.0.xsd81
-rw-r--r--inc/simplesamlphp/schemas/saml-schema-authn-context-pword-2.0.xsd64
-rw-r--r--inc/simplesamlphp/schemas/saml-schema-authn-context-session-2.0.xsd64
-rw-r--r--inc/simplesamlphp/schemas/saml-schema-authn-context-smartcard-2.0.xsd64
-rw-r--r--inc/simplesamlphp/schemas/saml-schema-authn-context-smartcardpki-2.0.xsd129
-rw-r--r--inc/simplesamlphp/schemas/saml-schema-authn-context-softwarepki-2.0.xsd129
-rw-r--r--inc/simplesamlphp/schemas/saml-schema-authn-context-spki-2.0.xsd83
-rw-r--r--inc/simplesamlphp/schemas/saml-schema-authn-context-srp-2.0.xsd82
-rw-r--r--inc/simplesamlphp/schemas/saml-schema-authn-context-sslcert-2.0.xsd97
-rw-r--r--inc/simplesamlphp/schemas/saml-schema-authn-context-telephony-2.0.xsd79
-rw-r--r--inc/simplesamlphp/schemas/saml-schema-authn-context-timesync-2.0.xsd105
-rw-r--r--inc/simplesamlphp/schemas/saml-schema-authn-context-types-2.0.xsd821
-rw-r--r--inc/simplesamlphp/schemas/saml-schema-authn-context-x509-2.0.xsd83
-rw-r--r--inc/simplesamlphp/schemas/saml-schema-authn-context-xmldsig-2.0.xsd83
-rw-r--r--inc/simplesamlphp/schemas/saml-schema-dce-2.0.xsd29
-rw-r--r--inc/simplesamlphp/schemas/saml-schema-ecp-2.0.xsd57
-rw-r--r--inc/simplesamlphp/schemas/saml-schema-metadata-2.0.xsd337
-rw-r--r--inc/simplesamlphp/schemas/saml-schema-protocol-2.0.xsd302
-rw-r--r--inc/simplesamlphp/schemas/saml-schema-x500-2.0.xsd20
-rw-r--r--inc/simplesamlphp/schemas/saml-schema-xacml-2.0.xsd19
-rw-r--r--inc/simplesamlphp/templates/attributequery.php81
-rw-r--r--inc/simplesamlphp/templates/error.php72
-rw-r--r--inc/simplesamlphp/templates/errorreport.php9
-rw-r--r--inc/simplesamlphp/templates/includes/footer-embed.php2
-rw-r--r--inc/simplesamlphp/templates/includes/footer.php28
-rw-r--r--inc/simplesamlphp/templates/includes/header-embed.php23
-rw-r--r--inc/simplesamlphp/templates/includes/header.php219
-rw-r--r--inc/simplesamlphp/templates/login-ldapmulti.php71
-rw-r--r--inc/simplesamlphp/templates/login.php68
-rw-r--r--inc/simplesamlphp/templates/logout.php20
-rw-r--r--inc/simplesamlphp/templates/metadata-converter.php43
-rw-r--r--inc/simplesamlphp/templates/metadata.php51
-rw-r--r--inc/simplesamlphp/templates/post.php70
-rw-r--r--inc/simplesamlphp/templates/selectidp-dropdown.php57
-rw-r--r--inc/simplesamlphp/templates/selectidp-links.php86
-rw-r--r--inc/simplesamlphp/templates/status.php118
-rw-r--r--inc/simplesamlphp/www/_include.php111
-rw-r--r--inc/simplesamlphp/www/admin/metadata-converter.php63
-rw-r--r--inc/simplesamlphp/www/admin/phpinfo.php8
-rw-r--r--inc/simplesamlphp/www/auth/login-admin.php87
-rw-r--r--inc/simplesamlphp/www/auth/login-cas-ldap.php142
-rw-r--r--inc/simplesamlphp/www/auth/login-ldapmulti.php98
-rw-r--r--inc/simplesamlphp/www/auth/login-radius.php151
-rw-r--r--inc/simplesamlphp/www/auth/login-tlsclient.php82
-rw-r--r--inc/simplesamlphp/www/auth/login-wayf-ldap.php80
-rw-r--r--inc/simplesamlphp/www/auth/login.php153
-rw-r--r--inc/simplesamlphp/www/authmemcookie.php115
-rw-r--r--inc/simplesamlphp/www/errorreport.php102
-rw-r--r--inc/simplesamlphp/www/example-simple/attributequery.php163
-rw-r--r--inc/simplesamlphp/www/example-simple/hostnames.php47
-rw-r--r--inc/simplesamlphp/www/example-simple/saml2-example.php80
-rw-r--r--inc/simplesamlphp/www/example-simple/shib13-example.php79
-rw-r--r--inc/simplesamlphp/www/example-simple/verysimple.php129
-rw-r--r--inc/simplesamlphp/www/example-simple/wsfed-example.php27
-rw-r--r--inc/simplesamlphp/www/index.php6
-rw-r--r--inc/simplesamlphp/www/logout.php26
-rw-r--r--inc/simplesamlphp/www/module.php185
-rw-r--r--inc/simplesamlphp/www/resources/default-rtl.css70
-rw-r--r--inc/simplesamlphp/www/resources/default.css351
-rw-r--r--inc/simplesamlphp/www/resources/header-bkg.pngbin0 -> 1216 bytes
-rw-r--r--inc/simplesamlphp/www/resources/icons/bullet16_grey.pngbin0 -> 279 bytes
-rw-r--r--inc/simplesamlphp/www/resources/icons/checkmark.48x48.pngbin0 -> 1250 bytes
-rw-r--r--inc/simplesamlphp/www/resources/icons/checkmark.svg.gzbin0 -> 1284 bytes
-rw-r--r--inc/simplesamlphp/www/resources/icons/checkmark48.pngbin0 -> 1814 bytes
-rw-r--r--inc/simplesamlphp/www/resources/icons/crystal_project/date.32x32.pngbin0 -> 2478 bytes
-rw-r--r--inc/simplesamlphp/www/resources/icons/crystal_project/kchart.32x32.pngbin0 -> 2872 bytes
-rw-r--r--inc/simplesamlphp/www/resources/icons/crystal_project/readme.txt17
-rw-r--r--inc/simplesamlphp/www/resources/icons/experience/gtk-about.64x64.pngbin0 -> 3728 bytes
-rw-r--r--inc/simplesamlphp/www/resources/icons/experience/gtk-about.svg.gzbin0 -> 2858 bytes
-rw-r--r--inc/simplesamlphp/www/resources/icons/experience/gtk-dialog-authentication.48x48.pngbin0 -> 3518 bytes
-rw-r--r--inc/simplesamlphp/www/resources/icons/experience/gtk-dialog-authentication.svg.gzbin0 -> 7733 bytes
-rw-r--r--inc/simplesamlphp/www/resources/icons/experience/gtk-dialog-error.48x48.pngbin0 -> 2907 bytes
-rw-r--r--inc/simplesamlphp/www/resources/icons/experience/gtk-dialog-error.svg.gzbin0 -> 4474 bytes
-rw-r--r--inc/simplesamlphp/www/resources/icons/experience/gtk-dialog-warning.48x48.pngbin0 -> 2886 bytes
-rw-r--r--inc/simplesamlphp/www/resources/icons/experience/gtk-dialog-warning.svg.gzbin0 -> 3239 bytes
-rw-r--r--inc/simplesamlphp/www/resources/icons/experience/readme.txt6
-rw-r--r--inc/simplesamlphp/www/resources/icons/favicon.icobin0 -> 1150 bytes
-rw-r--r--inc/simplesamlphp/www/resources/icons/silk/accept.pngbin0 -> 781 bytes
-rw-r--r--inc/simplesamlphp/www/resources/icons/silk/delete.pngbin0 -> 715 bytes
-rw-r--r--inc/simplesamlphp/www/resources/icons/silk/error.pngbin0 -> 666 bytes
-rw-r--r--inc/simplesamlphp/www/resources/icons/silk/exclamation.pngbin0 -> 701 bytes
-rw-r--r--inc/simplesamlphp/www/resources/icons/silk/heart.pngbin0 -> 749 bytes
-rw-r--r--inc/simplesamlphp/www/resources/icons/silk/magnifier.pngbin0 -> 615 bytes
-rw-r--r--inc/simplesamlphp/www/resources/icons/silk/readme.txt5
-rw-r--r--inc/simplesamlphp/www/resources/icons/silk/star.pngbin0 -> 670 bytes
-rw-r--r--inc/simplesamlphp/www/resources/icons/ssplogo-fish-small.pngbin0 -> 3012 bytes
-rw-r--r--inc/simplesamlphp/www/resources/icons/ssplogo-fish.pngbin0 -> 43993 bytes
-rw-r--r--inc/simplesamlphp/www/resources/jquery-16.js4241
-rw-r--r--inc/simplesamlphp/www/resources/jquery-ui-16.js74
-rw-r--r--inc/simplesamlphp/www/resources/jquery-ui.js634
-rw-r--r--inc/simplesamlphp/www/resources/jquery.js32
-rw-r--r--inc/simplesamlphp/www/resources/progress.gifbin0 -> 1542 bytes
-rw-r--r--inc/simplesamlphp/www/resources/script.js41
-rw-r--r--inc/simplesamlphp/www/resources/slo.css86
-rw-r--r--inc/simplesamlphp/www/resources/ssplogo-fish.icon.svg112
-rw-r--r--inc/simplesamlphp/www/resources/ssplogo-fish.svg151
-rw-r--r--inc/simplesamlphp/www/resources/uitheme/images/222222_11x11_icon_arrows_leftright.gifbin0 -> 58 bytes
-rw-r--r--inc/simplesamlphp/www/resources/uitheme/images/222222_11x11_icon_arrows_updown.gifbin0 -> 56 bytes
-rw-r--r--inc/simplesamlphp/www/resources/uitheme/images/222222_11x11_icon_close.gifbin0 -> 62 bytes
-rw-r--r--inc/simplesamlphp/www/resources/uitheme/images/222222_11x11_icon_doc.gifbin0 -> 64 bytes
-rw-r--r--inc/simplesamlphp/www/resources/uitheme/images/222222_11x11_icon_folder_closed.gifbin0 -> 61 bytes
-rw-r--r--inc/simplesamlphp/www/resources/uitheme/images/222222_11x11_icon_folder_open.gifbin0 -> 61 bytes
-rw-r--r--inc/simplesamlphp/www/resources/uitheme/images/222222_11x11_icon_minus.gifbin0 -> 56 bytes
-rw-r--r--inc/simplesamlphp/www/resources/uitheme/images/222222_11x11_icon_plus.gifbin0 -> 61 bytes
-rw-r--r--inc/simplesamlphp/www/resources/uitheme/images/222222_11x11_icon_resize_se.gifbin0 -> 61 bytes
-rw-r--r--inc/simplesamlphp/www/resources/uitheme/images/222222_35x9_colorpicker_indicator.gif.gifbin0 -> 70 bytes
-rw-r--r--inc/simplesamlphp/www/resources/uitheme/images/222222_7x7_arrow_down.gifbin0 -> 52 bytes
-rw-r--r--inc/simplesamlphp/www/resources/uitheme/images/222222_7x7_arrow_left.gifbin0 -> 53 bytes
-rw-r--r--inc/simplesamlphp/www/resources/uitheme/images/222222_7x7_arrow_right.gifbin0 -> 53 bytes
-rw-r--r--inc/simplesamlphp/www/resources/uitheme/images/222222_7x7_arrow_up.gifbin0 -> 52 bytes
-rw-r--r--inc/simplesamlphp/www/resources/uitheme/images/454545_11x11_icon_arrows_leftright.gifbin0 -> 58 bytes
-rw-r--r--inc/simplesamlphp/www/resources/uitheme/images/454545_11x11_icon_arrows_updown.gifbin0 -> 56 bytes
-rw-r--r--inc/simplesamlphp/www/resources/uitheme/images/454545_11x11_icon_close.gifbin0 -> 62 bytes
-rw-r--r--inc/simplesamlphp/www/resources/uitheme/images/454545_11x11_icon_doc.gifbin0 -> 64 bytes
-rw-r--r--inc/simplesamlphp/www/resources/uitheme/images/454545_11x11_icon_folder_closed.gifbin0 -> 61 bytes
-rw-r--r--inc/simplesamlphp/www/resources/uitheme/images/454545_11x11_icon_folder_open.gifbin0 -> 61 bytes
-rw-r--r--inc/simplesamlphp/www/resources/uitheme/images/454545_11x11_icon_minus.gifbin0 -> 56 bytes
-rw-r--r--inc/simplesamlphp/www/resources/uitheme/images/454545_11x11_icon_plus.gifbin0 -> 61 bytes
-rw-r--r--inc/simplesamlphp/www/resources/uitheme/images/454545_7x7_arrow_down.gifbin0 -> 52 bytes
-rw-r--r--inc/simplesamlphp/www/resources/uitheme/images/454545_7x7_arrow_left.gifbin0 -> 53 bytes
-rw-r--r--inc/simplesamlphp/www/resources/uitheme/images/454545_7x7_arrow_right.gifbin0 -> 53 bytes
-rw-r--r--inc/simplesamlphp/www/resources/uitheme/images/454545_7x7_arrow_up.gifbin0 -> 52 bytes
-rw-r--r--inc/simplesamlphp/www/resources/uitheme/images/888888_11x11_icon_arrows_leftright.gifbin0 -> 58 bytes
-rw-r--r--inc/simplesamlphp/www/resources/uitheme/images/888888_11x11_icon_arrows_updown.gifbin0 -> 56 bytes
-rw-r--r--inc/simplesamlphp/www/resources/uitheme/images/888888_11x11_icon_close.gifbin0 -> 62 bytes
-rw-r--r--inc/simplesamlphp/www/resources/uitheme/images/888888_11x11_icon_doc.gifbin0 -> 64 bytes
-rw-r--r--inc/simplesamlphp/www/resources/uitheme/images/888888_11x11_icon_folder_closed.gifbin0 -> 61 bytes
-rw-r--r--inc/simplesamlphp/www/resources/uitheme/images/888888_11x11_icon_folder_open.gifbin0 -> 61 bytes
-rw-r--r--inc/simplesamlphp/www/resources/uitheme/images/888888_11x11_icon_minus.gifbin0 -> 56 bytes
-rw-r--r--inc/simplesamlphp/www/resources/uitheme/images/888888_11x11_icon_plus.gifbin0 -> 61 bytes
-rw-r--r--inc/simplesamlphp/www/resources/uitheme/images/888888_7x7_arrow_down.gifbin0 -> 52 bytes
-rw-r--r--inc/simplesamlphp/www/resources/uitheme/images/888888_7x7_arrow_left.gifbin0 -> 53 bytes
-rw-r--r--inc/simplesamlphp/www/resources/uitheme/images/888888_7x7_arrow_right.gifbin0 -> 53 bytes
-rw-r--r--inc/simplesamlphp/www/resources/uitheme/images/888888_7x7_arrow_up.gifbin0 -> 52 bytes
-rw-r--r--inc/simplesamlphp/www/resources/uitheme/images/dadada_40x100_textures_02_glass_75.pngbin0 -> 214 bytes
-rw-r--r--inc/simplesamlphp/www/resources/uitheme/images/e6e6e6_40x100_textures_02_glass_75.pngbin0 -> 211 bytes
-rw-r--r--inc/simplesamlphp/www/resources/uitheme/images/ffffff_40x100_textures_01_flat_0.pngbin0 -> 178 bytes
-rw-r--r--inc/simplesamlphp/www/resources/uitheme/images/ffffff_40x100_textures_02_glass_65.pngbin0 -> 207 bytes
-rw-r--r--inc/simplesamlphp/www/resources/uitheme/images/gradient.jpgbin0 -> 1615 bytes
-rw-r--r--inc/simplesamlphp/www/resources/uitheme/jquery-ui-themeroller.css839
-rw-r--r--inc/simplesamlphp/www/resources/uitheme16/images/ui-bg_flat_0_aaaaaa_40x100.pngbin0 -> 180 bytes
-rw-r--r--inc/simplesamlphp/www/resources/uitheme16/images/ui-bg_flat_75_ffffff_40x100.pngbin0 -> 178 bytes
-rw-r--r--inc/simplesamlphp/www/resources/uitheme16/images/ui-bg_glass_55_fbf9ee_1x400.pngbin0 -> 120 bytes
-rw-r--r--inc/simplesamlphp/www/resources/uitheme16/images/ui-bg_glass_65_ffffff_1x400.pngbin0 -> 105 bytes
-rw-r--r--inc/simplesamlphp/www/resources/uitheme16/images/ui-bg_glass_75_dadada_1x400.pngbin0 -> 111 bytes
-rw-r--r--inc/simplesamlphp/www/resources/uitheme16/images/ui-bg_glass_75_e6e6e6_1x400.pngbin0 -> 151 bytes
-rw-r--r--inc/simplesamlphp/www/resources/uitheme16/images/ui-bg_glass_95_fef1ec_1x400.pngbin0 -> 119 bytes
-rw-r--r--inc/simplesamlphp/www/resources/uitheme16/images/ui-bg_highlight-soft_75_cccccc_1x100.pngbin0 -> 101 bytes
-rw-r--r--inc/simplesamlphp/www/resources/uitheme16/images/ui-icons_222222_256x240.pngbin0 -> 4379 bytes
-rw-r--r--inc/simplesamlphp/www/resources/uitheme16/images/ui-icons_2e83ff_256x240.pngbin0 -> 4379 bytes
-rw-r--r--inc/simplesamlphp/www/resources/uitheme16/images/ui-icons_454545_256x240.pngbin0 -> 4379 bytes
-rw-r--r--inc/simplesamlphp/www/resources/uitheme16/images/ui-icons_888888_256x240.pngbin0 -> 4379 bytes
-rw-r--r--inc/simplesamlphp/www/resources/uitheme16/images/ui-icons_cd0a0a_256x240.pngbin0 -> 4379 bytes
-rw-r--r--inc/simplesamlphp/www/resources/uitheme16/ui.accordion.css9
-rw-r--r--inc/simplesamlphp/www/resources/uitheme16/ui.all.css2
-rw-r--r--inc/simplesamlphp/www/resources/uitheme16/ui.base.css9
-rw-r--r--inc/simplesamlphp/www/resources/uitheme16/ui.core.css37
-rw-r--r--inc/simplesamlphp/www/resources/uitheme16/ui.datepicker.css62
-rw-r--r--inc/simplesamlphp/www/resources/uitheme16/ui.dialog.css13
-rw-r--r--inc/simplesamlphp/www/resources/uitheme16/ui.progressbar.css4
-rw-r--r--inc/simplesamlphp/www/resources/uitheme16/ui.resizable.css13
-rw-r--r--inc/simplesamlphp/www/resources/uitheme16/ui.slider.css17
-rw-r--r--inc/simplesamlphp/www/resources/uitheme16/ui.tabs.css9
-rw-r--r--inc/simplesamlphp/www/resources/uitheme16/ui.theme.css243
-rw-r--r--inc/simplesamlphp/www/saml2/idp/ArtifactResolutionService.php55
-rw-r--r--inc/simplesamlphp/www/saml2/idp/SSOService.php20
-rw-r--r--inc/simplesamlphp/www/saml2/idp/SingleLogoutService.php25
-rw-r--r--inc/simplesamlphp/www/saml2/idp/SingleLogoutServiceiFrame.php17
-rw-r--r--inc/simplesamlphp/www/saml2/idp/SingleLogoutServiceiFrameResponse.php17
-rw-r--r--inc/simplesamlphp/www/saml2/idp/idpInitSingleLogoutServiceiFrame.php20
-rw-r--r--inc/simplesamlphp/www/saml2/idp/initSLO.php26
-rw-r--r--inc/simplesamlphp/www/saml2/idp/metadata.php167
-rw-r--r--inc/simplesamlphp/www/saml2/sp/AssertionConsumerService.php168
-rw-r--r--inc/simplesamlphp/www/saml2/sp/SingleLogoutService.php85
-rw-r--r--inc/simplesamlphp/www/saml2/sp/idpdisco.php19
-rw-r--r--inc/simplesamlphp/www/saml2/sp/initSLO.php63
-rw-r--r--inc/simplesamlphp/www/saml2/sp/initSSO.php174
-rw-r--r--inc/simplesamlphp/www/saml2/sp/metadata.php100
-rw-r--r--inc/simplesamlphp/www/shib13/idp/SSOService.php20
-rw-r--r--inc/simplesamlphp/www/shib13/idp/metadata.php113
-rw-r--r--inc/simplesamlphp/www/shib13/sp/AssertionConsumerService.php108
-rw-r--r--inc/simplesamlphp/www/shib13/sp/idpdisco.php19
-rw-r--r--inc/simplesamlphp/www/shib13/sp/initSSO.php101
-rw-r--r--inc/simplesamlphp/www/shib13/sp/metadata.php102
-rw-r--r--inc/simplesamlphp/www/wsfed/sp/idpdisco.php19
-rw-r--r--inc/simplesamlphp/www/wsfed/sp/initSLO.php61
-rw-r--r--inc/simplesamlphp/www/wsfed/sp/initSSO.php65
-rw-r--r--inc/simplesamlphp/www/wsfed/sp/prp.php151
-rw-r--r--login.html12
-rw-r--r--plugin.xml1
-rw-r--r--saml_options.php8
1013 files changed, 129367 insertions, 33 deletions
diff --git a/balise/login_saml.php b/balise/login_saml.php
index df377fa..e8b7827 100644
--- a/balise/login_saml.php
+++ b/balise/login_saml.php
@@ -17,8 +17,12 @@ include_spip('inc/session');
include_spip('inc/cookie');
include_spip('inc/texte');
+/* Loading simplesamlphp */
+include_spip('inc/simplesamlphp/lib/_autoload');
+
// http://doc.spip.org/@balise_URL_LOGOUT
function balise_LOGIN_SAML ($p) {
+ spip_log("[auth_saml] balise_LOGIN_SAML");
return calculer_balise_dynamique($p,'LOGIN_SAML', array());
}
@@ -31,31 +35,27 @@ function balise_LOGIN_SAML_stat ($args, $filtres) {
// http://doc.spip.org/@balise_URL_LOGOUT_dyn
function balise_LOGIN_SAML_dyn()
{
+ $simplesaml = new SimpleSAML_Auth_Simple('default-sp');
- global $simplesaml;
+ spip_log("[auth_saml] balise_LOGIN_SAML_dyn");
if (!$simplesaml->isAuthenticated()) {
- $url = lire_config('saml/login_url');
- spip_log("[auth_saml] login url =".$url);
-
- // Appeler le squelette du formulaire de login
- return array('formulaires/saml',
- $GLOBALS['delais']);
+ spip_log("[auth_saml] required auth");
+ $simplesaml->requireAuth();
}
else return login_saml_successfull();
}
-function login_saml_successfull()
+function login_saml_successfull()
{
-
- global $simplesaml;
+ $simplesaml = new SimpleSAML_Auth_Simple('default-sp');
spip_log("[auth_saml] Traitement login SAML");
$attributes = $simplesaml->getAttributes();
$login = $attributes['uid'][0];
$first_name = $attributes['gn'][0];
- $last_name = $attributes['sn'][0];
+ $last_name = $attributes['Nom'][0];
$email = $attributes['email'][0];
$given_name = $first_name . ' ' . $last_name;
@@ -70,12 +70,8 @@ function login_saml_successfull()
if ($row_auteur) {
$GLOBALS['auteur_session'] = $row_auteur;
- spip_log("[auth_saml] updating user [" . $login . "] attributes : ".\
- $given_name);
- spip_query("UPDATE spip_auteurs SET nom=" . \
- _q($display_name) . \
- ", email=" . _q($email) . \
- " WHERE login="._q($login));
+ spip_log("[auth_saml] updating user [" . $login . "] attributes : ". $given_name);
+ spip_query("UPDATE spip_auteurs SET nom=" . _q($display_name) . ", email=" . _q($email) . " WHERE login="._q($login));
$session = charger_fonction('session', 'inc');
$cookie_session = $session($row_auteur);
diff --git a/inc/simplesamlphp/COPYING b/inc/simplesamlphp/COPYING
new file mode 100644
index 0000000..2ffb23b
--- /dev/null
+++ b/inc/simplesamlphp/COPYING
@@ -0,0 +1,511 @@
+Copyright 2007-2009 UNINETT AS, http://www.uninett.no
+SimpleSAMLphp is licensed under the CC-GNU LGPL version 2.1.
+http://creativecommons.org/licenses/LGPL/2.1/
+
+Note that some of the embedded libraries may be using other licenses.
+In example xmlseclibs uses BSD license.
+
+--
+ GNU LESSER GENERAL PUBLIC LICENSE
+ Version 2.1, February 1999
+
+ Copyright (C) 1991, 1999 Free Software Foundation, Inc.
+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ Everyone is permitted to copy and distribute verbatim copies
+ of this license document, but changing it is not allowed.
+
+[This is the first released version of the Lesser GPL. It also counts
+ as the successor of the GNU Library Public License, version 2, hence
+ the version number 2.1.]
+
+ Preamble
+
+ The licenses for most software are designed to take away your
+freedom to share and change it. By contrast, the GNU General Public
+Licenses are intended to guarantee your freedom to share and change
+free software--to make sure the software is free for all its users.
+
+ This license, the Lesser General Public License, applies to some
+specially designated software packages--typically libraries--of the
+Free Software Foundation and other authors who decide to use it. You
+can use it too, but we suggest you first think carefully about whether
+this license or the ordinary General Public License is the better
+strategy to use in any particular case, based on the explanations below.
+
+ When we speak of free software, we are referring to freedom of use,
+not price. Our General Public Licenses are designed to make sure that
+you have the freedom to distribute copies of free software (and charge
+for this service if you wish); that you receive source code or can get
+it if you want it; that you can change the software and use pieces of
+it in new free programs; and that you are informed that you can do
+these things.
+
+ To protect your rights, we need to make restrictions that forbid
+distributors to deny you these rights or to ask you to surrender these
+rights. These restrictions translate to certain responsibilities for
+you if you distribute copies of the library or if you modify it.
+
+ For example, if you distribute copies of the library, whether gratis
+or for a fee, you must give the recipients all the rights that we gave
+you. You must make sure that they, too, receive or can get the source
+code. If you link other code with the library, you must provide
+complete object files to the recipients, so that they can relink them
+with the library after making changes to the library and recompiling
+it. And you must show them these terms so they know their rights.
+
+ We protect your rights with a two-step method: (1) we copyright the
+library, and (2) we offer you this license, which gives you legal
+permission to copy, distribute and/or modify the library.
+
+ To protect each distributor, we want to make it very clear that
+there is no warranty for the free library. Also, if the library is
+modified by someone else and passed on, the recipients should know
+that what they have is not the original version, so that the original
+author's reputation will not be affected by problems that might be
+introduced by others.
+
+ Finally, software patents pose a constant threat to the existence of
+any free program. We wish to make sure that a company cannot
+effectively restrict the users of a free program by obtaining a
+restrictive license from a patent holder. Therefore, we insist that
+any patent license obtained for a version of the library must be
+consistent with the full freedom of use specified in this license.
+
+ Most GNU software, including some libraries, is covered by the
+ordinary GNU General Public License. This license, the GNU Lesser
+General Public License, applies to certain designated libraries, and
+is quite different from the ordinary General Public License. We use
+this license for certain libraries in order to permit linking those
+libraries into non-free programs.
+
+ When a program is linked with a library, whether statically or using
+a shared library, the combination of the two is legally speaking a
+combined work, a derivative of the original library. The ordinary
+General Public License therefore permits such linking only if the
+entire combination fits its criteria of freedom. The Lesser General
+Public License permits more lax criteria for linking other code with
+the library.
+
+ We call this license the "Lesser" General Public License because it
+does Less to protect the user's freedom than the ordinary General
+Public License. It also provides other free software developers Less
+of an advantage over competing non-free programs. These disadvantages
+are the reason we use the ordinary General Public License for many
+libraries. However, the Lesser license provides advantages in certain
+special circumstances.
+
+ For example, on rare occasions, there may be a special need to
+encourage the widest possible use of a certain library, so that it becomes
+a de-facto standard. To achieve this, non-free programs must be
+allowed to use the library. A more frequent case is that a free
+library does the same job as widely used non-free libraries. In this
+case, there is little to gain by limiting the free library to free
+software only, so we use the Lesser General Public License.
+
+ In other cases, permission to use a particular library in non-free
+programs enables a greater number of people to use a large body of
+free software. For example, permission to use the GNU C Library in
+non-free programs enables many more people to use the whole GNU
+operating system, as well as its variant, the GNU/Linux operating
+system.
+
+ Although the Lesser General Public License is Less protective of the
+users' freedom, it does ensure that the user of a program that is
+linked with the Library has the freedom and the wherewithal to run
+that program using a modified version of the Library.
+
+ The precise terms and conditions for copying, distribution and
+modification follow. Pay close attention to the difference between a
+"work based on the library" and a "work that uses the library". The
+former contains code derived from the library, whereas the latter must
+be combined with the library in order to run.
+
+ GNU LESSER GENERAL PUBLIC LICENSE
+ TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
+
+ 0. This License Agreement applies to any software library or other
+program which contains a notice placed by the copyright holder or
+other authorized party saying it may be distributed under the terms of
+this Lesser General Public License (also called "this License").
+Each licensee is addressed as "you".
+
+ A "library" means a collection of software functions and/or data
+prepared so as to be conveniently linked with application programs
+(which use some of those functions and data) to form executables.
+
+ The "Library", below, refers to any such software library or work
+which has been distributed under these terms. A "work based on the
+Library" means either the Library or any derivative work under
+copyright law: that is to say, a work containing the Library or a
+portion of it, either verbatim or with modifications and/or translated
+straightforwardly into another language. (Hereinafter, translation is
+included without limitation in the term "modification".)
+
+ "Source code" for a work means the preferred form of the work for
+making modifications to it. For a library, complete source code means
+all the source code for all modules it contains, plus any associated
+interface definition files, plus the scripts used to control compilation
+and installation of the library.
+
+ Activities other than copying, distribution and modification are not
+covered by this License; they are outside its scope. The act of
+running a program using the Library is not restricted, and output from
+such a program is covered only if its contents constitute a work based
+on the Library (independent of the use of the Library in a tool for
+writing it). Whether that is true depends on what the Library does
+and what the program that uses the Library does.
+
+ 1. You may copy and distribute verbatim copies of the Library's
+complete source code as you receive it, in any medium, provided that
+you conspicuously and appropriately publish on each copy an
+appropriate copyright notice and disclaimer of warranty; keep intact
+all the notices that refer to this License and to the absence of any
+warranty; and distribute a copy of this License along with the
+Library.
+
+ You may charge a fee for the physical act of transferring a copy,
+and you may at your option offer warranty protection in exchange for a
+fee.
+
+ 2. You may modify your copy or copies of the Library or any portion
+of it, thus forming a work based on the Library, and copy and
+distribute such modifications or work under the terms of Section 1
+above, provided that you also meet all of these conditions:
+
+ a) The modified work must itself be a software library.
+
+ b) You must cause the files modified to carry prominent notices
+ stating that you changed the files and the date of any change.
+
+ c) You must cause the whole of the work to be licensed at no
+ charge to all third parties under the terms of this License.
+
+ d) If a facility in the modified Library refers to a function or a
+ table of data to be supplied by an application program that uses
+ the facility, other than as an argument passed when the facility
+ is invoked, then you must make a good faith effort to ensure that,
+ in the event an application does not supply such function or
+ table, the facility still operates, and performs whatever part of
+ its purpose remains meaningful.
+
+ (For example, a function in a library to compute square roots has
+ a purpose that is entirely well-defined independent of the
+ application. Therefore, Subsection 2d requires that any
+ application-supplied function or table used by this function must
+ be optional: if the application does not supply it, the square
+ root function must still compute square roots.)
+
+These requirements apply to the modified work as a whole. If
+identifiable sections of that work are not derived from the Library,
+and can be reasonably considered independent and separate works in
+themselves, then this License, and its terms, do not apply to those
+sections when you distribute them as separate works. But when you
+distribute the same sections as part of a whole which is a work based
+on the Library, the distribution of the whole must be on the terms of
+this License, whose permissions for other licensees extend to the
+entire whole, and thus to each and every part regardless of who wrote
+it.
+
+Thus, it is not the intent of this section to claim rights or contest
+your rights to work written entirely by you; rather, the intent is to
+exercise the right to control the distribution of derivative or
+collective works based on the Library.
+
+In addition, mere aggregation of another work not based on the Library
+with the Library (or with a work based on the Library) on a volume of
+a storage or distribution medium does not bring the other work under
+the scope of this License.
+
+ 3. You may opt to apply the terms of the ordinary GNU General Public
+License instead of this License to a given copy of the Library. To do
+this, you must alter all the notices that refer to this License, so
+that they refer to the ordinary GNU General Public License, version 2,
+instead of to this License. (If a newer version than version 2 of the
+ordinary GNU General Public License has appeared, then you can specify
+that version instead if you wish.) Do not make any other change in
+these notices.
+
+ Once this change is made in a given copy, it is irreversible for
+that copy, so the ordinary GNU General Public License applies to all
+subsequent copies and derivative works made from that copy.
+
+ This option is useful when you wish to copy part of the code of
+the Library into a program that is not a library.
+
+ 4. You may copy and distribute the Library (or a portion or
+derivative of it, under Section 2) in object code or executable form
+under the terms of Sections 1 and 2 above provided that you accompany
+it with the complete corresponding machine-readable source code, which
+must be distributed under the terms of Sections 1 and 2 above on a
+medium customarily used for software interchange.
+
+ If distribution of object code is made by offering access to copy
+from a designated place, then offering equivalent access to copy the
+source code from the same place satisfies the requirement to
+distribute the source code, even though third parties are not
+compelled to copy the source along with the object code.
+
+ 5. A program that contains no derivative of any portion of the
+Library, but is designed to work with the Library by being compiled or
+linked with it, is called a "work that uses the Library". Such a
+work, in isolation, is not a derivative work of the Library, and
+therefore falls outside the scope of this License.
+
+ However, linking a "work that uses the Library" with the Library
+creates an executable that is a derivative of the Library (because it
+contains portions of the Library), rather than a "work that uses the
+library". The executable is therefore covered by this License.
+Section 6 states terms for distribution of such executables.
+
+ When a "work that uses the Library" uses material from a header file
+that is part of the Library, the object code for the work may be a
+derivative work of the Library even though the source code is not.
+Whether this is true is especially significant if the work can be
+linked without the Library, or if the work is itself a library. The
+threshold for this to be true is not precisely defined by law.
+
+ If such an object file uses only numerical parameters, data
+structure layouts and accessors, and small macros and small inline
+functions (ten lines or less in length), then the use of the object
+file is unrestricted, regardless of whether it is legally a derivative
+work. (Executables containing this object code plus portions of the
+Library will still fall under Section 6.)
+
+ Otherwise, if the work is a derivative of the Library, you may
+distribute the object code for the work under the terms of Section 6.
+Any executables containing that work also fall under Section 6,
+whether or not they are linked directly with the Library itself.
+
+ 6. As an exception to the Sections above, you may also combine or
+link a "work that uses the Library" with the Library to produce a
+work containing portions of the Library, and distribute that work
+under terms of your choice, provided that the terms permit
+modification of the work for the customer's own use and reverse
+engineering for debugging such modifications.
+
+ You must give prominent notice with each copy of the work that the
+Library is used in it and that the Library and its use are covered by
+this License. You must supply a copy of this License. If the work
+during execution displays copyright notices, you must include the
+copyright notice for the Library among them, as well as a reference
+directing the user to the copy of this License. Also, you must do one
+of these things:
+
+ a) Accompany the work with the complete corresponding
+ machine-readable source code for the Library including whatever
+ changes were used in the work (which must be distributed under
+ Sections 1 and 2 above); and, if the work is an executable linked
+ with the Library, with the complete machine-readable "work that
+ uses the Library", as object code and/or source code, so that the
+ user can modify the Library and then relink to produce a modified
+ executable containing the modified Library. (It is understood
+ that the user who changes the contents of definitions files in the
+ Library will not necessarily be able to recompile the application
+ to use the modified definitions.)
+
+ b) Use a suitable shared library mechanism for linking with the
+ Library. A suitable mechanism is one that (1) uses at run time a
+ copy of the library already present on the user's computer system,
+ rather than copying library functions into the executable, and (2)
+ will operate properly with a modified version of the library, if
+ the user installs one, as long as the modified version is
+ interface-compatible with the version that the work was made with.
+
+ c) Accompany the work with a written offer, valid for at
+ least three years, to give the same user the materials
+ specified in Subsection 6a, above, for a charge no more
+ than the cost of performing this distribution.
+
+ d) If distribution of the work is made by offering access to copy
+ from a designated place, offer equivalent access to copy the above
+ specified materials from the same place.
+
+ e) Verify that the user has already received a copy of these
+ materials or that you have already sent this user a copy.
+
+ For an executable, the required form of the "work that uses the
+Library" must include any data and utility programs needed for
+reproducing the executable from it. However, as a special exception,
+the materials to be distributed need not include anything that is
+normally distributed (in either source or binary form) with the major
+components (compiler, kernel, and so on) of the operating system on
+which the executable runs, unless that component itself accompanies
+the executable.
+
+ It may happen that this requirement contradicts the license
+restrictions of other proprietary libraries that do not normally
+accompany the operating system. Such a contradiction means you cannot
+use both them and the Library together in an executable that you
+distribute.
+
+ 7. You may place library facilities that are a work based on the
+Library side-by-side in a single library together with other library
+facilities not covered by this License, and distribute such a combined
+library, provided that the separate distribution of the work based on
+the Library and of the other library facilities is otherwise
+permitted, and provided that you do these two things:
+
+ a) Accompany the combined library with a copy of the same work
+ based on the Library, uncombined with any other library
+ facilities. This must be distributed under the terms of the
+ Sections above.
+
+ b) Give prominent notice with the combined library of the fact
+ that part of it is a work based on the Library, and explaining
+ where to find the accompanying uncombined form of the same work.
+
+ 8. You may not copy, modify, sublicense, link with, or distribute
+the Library except as expressly provided under this License. Any
+attempt otherwise to copy, modify, sublicense, link with, or
+distribute the Library is void, and will automatically terminate your
+rights under this License. However, parties who have received copies,
+or rights, from you under this License will not have their licenses
+terminated so long as such parties remain in full compliance.
+
+ 9. You are not required to accept this License, since you have not
+signed it. However, nothing else grants you permission to modify or
+distribute the Library or its derivative works. These actions are
+prohibited by law if you do not accept this License. Therefore, by
+modifying or distributing the Library (or any work based on the
+Library), you indicate your acceptance of this License to do so, and
+all its terms and conditions for copying, distributing or modifying
+the Library or works based on it.
+
+ 10. Each time you redistribute the Library (or any work based on the
+Library), the recipient automatically receives a license from the
+original licensor to copy, distribute, link with or modify the Library
+subject to these terms and conditions. You may not impose any further
+restrictions on the recipients' exercise of the rights granted herein.
+You are not responsible for enforcing compliance by third parties with
+this License.
+
+ 11. If, as a consequence of a court judgment or allegation of patent
+infringement or for any other reason (not limited to patent issues),
+conditions are imposed on you (whether by court order, agreement or
+otherwise) that contradict the conditions of this License, they do not
+excuse you from the conditions of this License. If you cannot
+distribute so as to satisfy simultaneously your obligations under this
+License and any other pertinent obligations, then as a consequence you
+may not distribute the Library at all. For example, if a patent
+license would not permit royalty-free redistribution of the Library by
+all those who receive copies directly or indirectly through you, then
+the only way you could satisfy both it and this License would be to
+refrain entirely from distribution of the Library.
+
+If any portion of this section is held invalid or unenforceable under any
+particular circumstance, the balance of the section is intended to apply,
+and the section as a whole is intended to apply in other circumstances.
+
+It is not the purpose of this section to induce you to infringe any
+patents or other property right claims or to contest validity of any
+such claims; this section has the sole purpose of protecting the
+integrity of the free software distribution system which is
+implemented by public license practices. Many people have made
+generous contributions to the wide range of software distributed
+through that system in reliance on consistent application of that
+system; it is up to the author/donor to decide if he or she is willing
+to distribute software through any other system and a licensee cannot
+impose that choice.
+
+This section is intended to make thoroughly clear what is believed to
+be a consequence of the rest of this License.
+
+ 12. If the distribution and/or use of the Library is restricted in
+certain countries either by patents or by copyrighted interfaces, the
+original copyright holder who places the Library under this License may add
+an explicit geographical distribution limitation excluding those countries,
+so that distribution is permitted only in or among countries not thus
+excluded. In such case, this License incorporates the limitation as if
+written in the body of this License.
+
+ 13. The Free Software Foundation may publish revised and/or new
+versions of the Lesser General Public License from time to time.
+Such new versions will be similar in spirit to the present version,
+but may differ in detail to address new problems or concerns.
+
+Each version is given a distinguishing version number. If the Library
+specifies a version number of this License which applies to it and
+"any later version", you have the option of following the terms and
+conditions either of that version or of any later version published by
+the Free Software Foundation. If the Library does not specify a
+license version number, you may choose any version ever published by
+the Free Software Foundation.
+
+ 14. If you wish to incorporate parts of the Library into other free
+programs whose distribution conditions are incompatible with these,
+write to the author to ask for permission. For software which is
+copyrighted by the Free Software Foundation, write to the Free
+Software Foundation; we sometimes make exceptions for this. Our
+decision will be guided by the two goals of preserving the free status
+of all derivatives of our free software and of promoting the sharing
+and reuse of software generally.
+
+ NO WARRANTY
+
+ 15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO
+WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW.
+EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR
+OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY
+KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE
+IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE
+LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME
+THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
+
+ 16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN
+WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY
+AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU
+FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR
+CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE
+LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING
+RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A
+FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF
+SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
+DAMAGES.
+
+ END OF TERMS AND CONDITIONS
+
+ How to Apply These Terms to Your New Libraries
+
+ If you develop a new library, and you want it to be of the greatest
+possible use to the public, we recommend making it free software that
+everyone can redistribute and change. You can do so by permitting
+redistribution under these terms (or, alternatively, under the terms of the
+ordinary General Public License).
+
+ To apply these terms, attach the following notices to the library. It is
+safest to attach them to the start of each source file to most effectively
+convey the exclusion of warranty; and each file should have at least the
+"copyright" line and a pointer to where the full notice is found.
+
+ <one line to give the library's name and a brief idea of what it does.>
+ Copyright (C) <year> <name of author>
+
+ This library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ This library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with this library; if not, write to the Free Software
+ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+
+Also add information on how to contact you by electronic and paper mail.
+
+You should also get your employer (if you work as a programmer) or your
+school, if any, to sign a "copyright disclaimer" for the library, if
+necessary. Here is a sample; alter the names:
+
+ Yoyodyne, Inc., hereby disclaims all copyright interest in the
+ library `Frob' (a library for tweaking knobs) written by James Random Hacker.
+
+ <signature of Ty Coon>, 1 April 1990
+ Ty Coon, President of Vice
+
+That's all there is to it!
+
diff --git a/inc/simplesamlphp/attributemap/addurnprefix.php b/inc/simplesamlphp/attributemap/addurnprefix.php
new file mode 100644
index 0000000..f06f996
--- /dev/null
+++ b/inc/simplesamlphp/attributemap/addurnprefix.php
@@ -0,0 +1,22 @@
+<?php
+
+$attributemap = array(
+ 'sn' => 'urn:mace:dir:attribute-def:sn',
+ 'telephoneNumber' => 'urn:mace:dir:attribute-def:telephoneNumber',
+ 'facsimileTelephoneNumber' => 'urn:mace:dir:attribute-def:facsimileTelephoneNumber',
+ 'postalAddress' => 'urn:mace:dir:attribute-def:postalAddress',
+ 'givenName' => 'urn:mace:dir:attribute-def:givenName',
+ 'homePhone' => 'urn:mace:dir:attribute-def:homePhone',
+ 'homePostalAddress' => 'urn:mace:dir:attribute-def:homePostalAddress',
+ 'mail' => 'urn:mace:dir:attribute-def:mail',
+ 'mobile' => 'urn:mace:dir:attribute-def:mobile',
+ 'preferredLanguage' => 'urn:mace:dir:attribute-def:preferredLanguage',
+ 'eduPersonPrincipalName' => 'urn:mace:dir:attribute-def:eduPersonPrincipalName',
+ 'eduPersonAffiliation' => 'urn:mace:dir:attribute-def:eduPersonAffiliation',
+ 'eduPersonScopedAffiliation' => 'urn:mace:dir:attribute-def:eduPersonScopedAffiliation',
+ 'eduPersonEntitlement' => 'urn:mace:dir:attribute-def:eduPersonEntitlement',
+ 'eduPersonOrgDN' => 'urn:mace:dir:attribute-def:eduPersonOrgDN',
+ 'eduPersonOrgUnitDN' => 'urn:mace:dir:attribute-def:eduPersonOrgUnitDN',
+);
+
+?> \ No newline at end of file
diff --git a/inc/simplesamlphp/attributemap/facebook2name.php b/inc/simplesamlphp/attributemap/facebook2name.php
new file mode 100644
index 0000000..eb3f7a1
--- /dev/null
+++ b/inc/simplesamlphp/attributemap/facebook2name.php
@@ -0,0 +1,21 @@
+<?php
+$attributemap = array(
+
+ // Generated Facebook Attributes
+ 'facebook_user' => 'eduPersonPrincipalName', // username OR uid @ facebook.com
+ 'facebook_targetedID' => 'eduPersonTargetedID', // http://facebook.com!uid
+ 'facebook_cn' => 'cn', // duplicate of displayName
+
+ // Attributes Returned by Facebook
+ 'facebook.first_name' => 'givenName',
+ 'facebook.last_name' => 'sn',
+ 'facebook.name' => 'displayName', // or 'cn'
+ 'facebook.email' => 'mail',
+ //'facebook.pic' => 'jpegPhoto', // URL not image data
+ //'facebook.pic_square' => 'jpegPhoto', // URL not image data
+ 'facebook.username' => 'uid', // facebook username (maybe blank)
+ //'facebook.uid' => 'uid', // numeric facebook user id
+ 'facebook.profile_url' => 'labeledURI',
+ 'facebook.locale' => 'preferredLanguage',
+ 'facebook.about_me' => 'description',
+);
diff --git a/inc/simplesamlphp/attributemap/feide-oid.php b/inc/simplesamlphp/attributemap/feide-oid.php
new file mode 100644
index 0000000..30a6a9d
--- /dev/null
+++ b/inc/simplesamlphp/attributemap/feide-oid.php
@@ -0,0 +1,41 @@
+<?php
+
+$attributemap = array(
+ 'mobile' => 'urn:mace:dir:attribute-def:mobile',
+ 'displayName' => 'urn:oid:2.16.840.1.113730.3.1.241',
+);
+
+/*
+
+ShibMapAttribute urn:mace:dir:attribute-def:sn Shib-LDAP-Surname surname
+ShibMapAttribute urn:mace:dir:attribute-def:telephoneNumber Shib-LDAP-telephoneNumber telephoneNumber
+ShibMapAttribute urn:mace:dir:attribute-def:facsimileTelephoneNumber Shib-LDAP-facsimileTelephoneNumber facsimileTelephoneNumber
+ShibMapAttribute urn:mace:dir:attribute-def:postalAddress Shib-LDAP-postalAddress postalAddress
+ShibMapAttribute urn:mace:dir:attribute-def:givenName Shib-LDAP-givenName givenName
+ShibMapAttribute urn:mace:dir:attribute-def:homePhone Shib-LDAP-homePhone homePhone
+ShibMapAttribute urn:mace:dir:attribute-def:homePostalAddress Shib-LDAP-homePostalAddress homePostalAddress
+ShibMapAttribute urn:mace:dir:attribute-def:mail Shib-LDAP-mail mail
+ShibMapAttribute urn:mace:dir:attribute-def:mobile Shib-LDAP-mobile mobile
+ShibMapAttribute urn:mace:dir:attribute-def:preferredLanguage Shib-LDAP-preferredLanguage preferredLanguage
+#
+ShibMapAttribute urn:mace:dir:attribute-def:eduPersonPrincipalName Shib-EP-PrincipalName eppn
+ShibMapAttribute urn:mace:dir:attribute-def:eduPersonAffiliation Shib-EP-Affiliation affiliation
+ShibMapAttribute urn:mace:dir:attribute-def:eduPersonScopedAffiliation Shib-EP-ScopedAffiliation scopedAffiliation
+ShibMapAttribute urn:mace:dir:attribute-def:eduPersonEntitlement Shib-EP-Entitlement entitlement
+ShibMapAttribute urn:mace:dir:attribute-def:eduPersonOrgDN Shib-EP-OrgDN orgDN
+ShibMapAttribute urn:mace:dir:attribute-def:eduPersonOrgUnitDN Shib-EP-OrgUnitDN orgUnitDN
+#
+ShibMapAttribute urn:mace:switch.ch:attribute-def:swissEduPersonUniqueID Shib-SwissEP-UniqueID uniqueID
+ShibMapAttribute urn:mace:switch.ch:attribute-def:swissEduPersonDateOfBirth Shib-SwissEP-DateOfBirth dateOfBirth
+ShibMapAttribute urn:mace:switch.ch:attribute-def:swissEduPersonGender Shib-SwissEP-Gender gender
+ShibMapAttribute urn:mace:switch.ch:attribute-def:swissEduPersonHomeOrganization Shib-SwissEP-HomeOrganization homeOrganization
+ShibMapAttribute urn:mace:switch.ch:attribute-def:swissEduPersonHomeOrganizationType Shib-SwissEP-HomeOrganizationType homeOrganizationType
+ShibMapAttribute urn:mace:switch.ch:attribute-def:swissEduPersonStudyBranch1 Shib-SwissEP-StudyBranch1 studyBranch1
+ShibMapAttribute urn:mace:switch.ch:attribute-def:swissEduPersonStudyBranch2 Shib-SwissEP-StudyBranch2 studyBranch2
+ShibMapAttribute urn:mace:switch.ch:attribute-def:swissEduPersonStudyBranch3 Shib-SwissEP-StudyBranch3 studyBranch3
+ShibMapAttribute urn:mace:switch.ch:attribute-def:swissEduPersonStudyLevel Shib-SwissEP-StudyLevel studyLevel
+ShibMapAttribute urn:mace:switch.ch:attribute-def:swissEduPersonStaffCategory Shib-SwissEP-StaffCategory staffCategory
+
+*/
+
+?> \ No newline at end of file
diff --git a/inc/simplesamlphp/attributemap/linkedin2name.php b/inc/simplesamlphp/attributemap/linkedin2name.php
new file mode 100644
index 0000000..0d3a433
--- /dev/null
+++ b/inc/simplesamlphp/attributemap/linkedin2name.php
@@ -0,0 +1,19 @@
+<?php
+$attributemap = array(
+
+ // See http://developer.linkedin.com/docs/DOC-1061 for LinkedIn Profile fields.
+ // NB: JSON response requires the conversion of field names from hyphened to camelCase.
+ // For instance, first-name becomes firstName.
+
+ // Generated LinkedIn Attributes
+ 'linkedin_user' => 'eduPersonPrincipalName', // id @ linkedin.com
+ 'linkedin_targetedID' => 'eduPersonTargetedID', // http://linkedin.com!id
+
+ // Attributes Returned by LinkedIn
+ 'linkedin.firstName' => 'givenName',
+ 'linkedin.lastName' => 'sn',
+ 'linkedin.id' => 'uid', // alpha + mixed case user id
+ //'linkedin.pictureUrl' => 'jpegPhoto', // URL not image data
+ 'linkedin.headline' => 'title',
+ 'linkedin.summary' => 'description',
+);
diff --git a/inc/simplesamlphp/attributemap/myspace2name.php b/inc/simplesamlphp/attributemap/myspace2name.php
new file mode 100644
index 0000000..dbc52d4
--- /dev/null
+++ b/inc/simplesamlphp/attributemap/myspace2name.php
@@ -0,0 +1,18 @@
+<?php
+$attributemap = array(
+
+ // See http://developerwiki.myspace.com/index.php?title=People_API for attributes
+
+ // Generated MySpace Attributes
+ 'myspace_user' => 'eduPersonPrincipalName', // username OR uid @ myspace.com
+ 'myspace_targetedID' => 'eduPersonTargetedID', // http://myspace.com!uid
+ 'myspace_username' => 'uid', // myspace username (maybe numeric uid)
+ //'myspace_uid' => 'uid', // numeric myspace user id
+
+ // Attributes Returned by MySpace
+ 'myspace.name.givenName' => 'givenName',
+ 'myspace.name.familyName' => 'sn',
+ 'myspace.displayName' => 'displayName',
+ //'myspace.thumbnailUrl' => 'jpegPhoto', // URL not image data
+ 'myspace.profileUrl' => 'labeledURI',
+);
diff --git a/inc/simplesamlphp/attributemap/name2oid.php b/inc/simplesamlphp/attributemap/name2oid.php
new file mode 100644
index 0000000..5e33468
--- /dev/null
+++ b/inc/simplesamlphp/attributemap/name2oid.php
@@ -0,0 +1,166 @@
+<?php
+$attributemap = array(
+ 'aRecord' => 'urn:oid:0.9.2342.19200300.100.1.26',
+ 'aliasedEntryName' => 'urn:oid:2.5.4.1',
+ 'aliasedObjectName' => 'urn:oid:2.5.4.1',
+ 'associatedDomain' => 'urn:oid:0.9.2342.19200300.100.1.37',
+ 'associatedName' => 'urn:oid:0.9.2342.19200300.100.1.38',
+ 'audio' => 'urn:oid:0.9.2342.19200300.100.1.55',
+ 'authorityRevocationList' => 'urn:oid:2.5.4.38',
+ 'buildingName' => 'urn:oid:0.9.2342.19200300.100.1.48',
+ 'businessCategory' => 'urn:oid:2.5.4.15',
+ 'c' => 'urn:oid:2.5.4.6',
+ 'cACertificate' => 'urn:oid:2.5.4.37',
+ 'cNAMERecord' => 'urn:oid:0.9.2342.19200300.100.1.31',
+ 'carLicense' => 'urn:oid:2.16.840.1.113730.3.1.1',
+ 'certificateRevocationList' => 'urn:oid:2.5.4.39',
+ 'cn' => 'urn:oid:2.5.4.3',
+ 'co' => 'urn:oid:0.9.2342.19200300.100.1.43',
+ 'commonName' => 'urn:oid:2.5.4.3',
+ 'countryName' => 'urn:oid:2.5.4.6',
+ 'crossCertificatePair' => 'urn:oid:2.5.4.40',
+ 'dITRedirect' => 'urn:oid:0.9.2342.19200300.100.1.54',
+ 'dSAQuality' => 'urn:oid:0.9.2342.19200300.100.1.49',
+ 'dc' => 'urn:oid:0.9.2342.19200300.100.1.25',
+ 'deltaRevocationList' => 'urn:oid:2.5.4.53',
+ 'departmentNumber' => 'urn:oid:2.16.840.1.113730.3.1.2',
+ 'description' => 'urn:oid:2.5.4.13',
+ 'destinationIndicator' => 'urn:oid:2.5.4.27',
+ 'displayName' => 'urn:oid:2.16.840.1.113730.3.1.241',
+ 'distinguishedName' => 'urn:oid:2.5.4.49',
+ 'dmdName' => 'urn:oid:2.5.4.54',
+ 'dnQualifier' => 'urn:oid:2.5.4.46',
+ 'documentAuthor' => 'urn:oid:0.9.2342.19200300.100.1.14',
+ 'documentIdentifier' => 'urn:oid:0.9.2342.19200300.100.1.11',
+ 'documentLocation' => 'urn:oid:0.9.2342.19200300.100.1.15',
+ 'documentPublisher' => 'urn:oid:0.9.2342.19200300.100.1.56',
+ 'documentTitle' => 'urn:oid:0.9.2342.19200300.100.1.12',
+ 'documentVersion' => 'urn:oid:0.9.2342.19200300.100.1.13',
+ 'domainComponent' => 'urn:oid:0.9.2342.19200300.100.1.25',
+ 'drink' => 'urn:oid:0.9.2342.19200300.100.1.5',
+ 'eduOrgHomePageURI' => 'urn:oid:1.3.6.1.4.1.5923.1.2.1.2',
+ 'eduOrgIdentityAuthNPolicyURI' => 'urn:oid:1.3.6.1.4.1.5923.1.2.1.3',
+ 'eduOrgLegalName' => 'urn:oid:1.3.6.1.4.1.5923.1.2.1.4',
+ 'eduOrgSuperiorURI' => 'urn:oid:1.3.6.1.4.1.5923.1.2.1.5',
+ 'eduOrgWhitePagesURI' => 'urn:oid:1.3.6.1.4.1.5923.1.2.1.6',
+ 'eduPersonAffiliation' => 'urn:oid:1.3.6.1.4.1.5923.1.1.1.1',
+ 'eduPersonEntitlement' => 'urn:oid:1.3.6.1.4.1.5923.1.1.1.7',
+ 'eduPersonNickname' => 'urn:oid:1.3.6.1.4.1.5923.1.1.1.2',
+ 'eduPersonOrgDN' => 'urn:oid:1.3.6.1.4.1.5923.1.1.1.3',
+ 'eduPersonOrgUnitDN' => 'urn:oid:1.3.6.1.4.1.5923.1.1.1.4',
+ 'eduPersonPrimaryAffiliation' => 'urn:oid:1.3.6.1.4.1.5923.1.1.1.5',
+ 'eduPersonPrimaryOrgUnitDN' => 'urn:oid:1.3.6.1.4.1.5923.1.1.1.8',
+ 'eduPersonPrincipalName' => 'urn:oid:1.3.6.1.4.1.5923.1.1.1.6',
+ 'eduPersonScopedAffiliation' => 'urn:oid:1.3.6.1.4.1.5923.1.1.1.9',
+ 'eduPersonTargetedID' => 'urn:oid:1.3.6.1.4.1.5923.1.1.1.10',
+ 'email' => 'urn:oid:1.2.840.113549.1.9.1',
+ 'emailAddress' => 'urn:oid:1.2.840.113549.1.9.1',
+ 'employeeNumber' => 'urn:oid:2.16.840.1.113730.3.1.3',
+ 'employeeType' => 'urn:oid:2.16.840.1.113730.3.1.4',
+ 'enhancedSearchGuide' => 'urn:oid:2.5.4.47',
+ 'facsimileTelephoneNumber' => 'urn:oid:2.5.4.23',
+ 'favouriteDrink' => 'urn:oid:0.9.2342.19200300.100.1.5',
+ 'fax' => 'urn:oid:2.5.4.23',
+ 'federationFeideSchemaVersion' => 'urn:oid:1.3.6.1.4.1.2428.90.1.9',
+ 'friendlyCountryName' => 'urn:oid:0.9.2342.19200300.100.1.43',
+ 'generationQualifier' => 'urn:oid:2.5.4.44',
+ 'givenName' => 'urn:oid:2.5.4.42',
+ 'gn' => 'urn:oid:2.5.4.42',
+ 'homePhone' => 'urn:oid:0.9.2342.19200300.100.1.20',
+ 'homePostalAddress' => 'urn:oid:0.9.2342.19200300.100.1.39',
+ 'homeTelephoneNumber' => 'urn:oid:0.9.2342.19200300.100.1.20',
+ 'host' => 'urn:oid:0.9.2342.19200300.100.1.9',
+ 'houseIdentifier' => 'urn:oid:2.5.4.51',
+ 'info' => 'urn:oid:0.9.2342.19200300.100.1.4',
+ 'initials' => 'urn:oid:2.5.4.43',
+ 'internationaliSDNNumber' => 'urn:oid:2.5.4.25',
+ 'isMemberOf' => 'urn:oid:1.3.6.1.4.1.5923.1.5.1.1',
+ 'janetMailbox' => 'urn:oid:0.9.2342.19200300.100.1.46',
+ 'jpegPhoto' => 'urn:oid:0.9.2342.19200300.100.1.60',
+ 'knowledgeInformation' => 'urn:oid:2.5.4.2',
+ 'l' => 'urn:oid:2.5.4.7',
+ 'labeledURI' => 'urn:oid:1.3.6.1.4.1.250.1.57',
+ 'localityName' => 'urn:oid:2.5.4.7',
+ 'mDRecord' => 'urn:oid:0.9.2342.19200300.100.1.27',
+ 'mXRecord' => 'urn:oid:0.9.2342.19200300.100.1.28',
+ 'mail' => 'urn:oid:0.9.2342.19200300.100.1.3',
+ 'mailPreferenceOption' => 'urn:oid:0.9.2342.19200300.100.1.47',
+ 'manager' => 'urn:oid:0.9.2342.19200300.100.1.10',
+ 'member' => 'urn:oid:2.5.4.31',
+ 'mobile' => 'urn:oid:0.9.2342.19200300.100.1.41',
+ 'mobileTelephoneNumber' => 'urn:oid:0.9.2342.19200300.100.1.41',
+ 'nSRecord' => 'urn:oid:0.9.2342.19200300.100.1.29',
+ 'name' => 'urn:oid:2.5.4.41',
+ 'norEduOrgAcronym' => 'urn:oid:1.3.6.1.4.1.2428.90.1.6',
+ 'norEduOrgNIN' => 'urn:oid:1.3.6.1.4.1.2428.90.1.12',
+ 'norEduOrgSchemaVersion' => 'urn:oid:1.3.6.1.4.1.2428.90.1.11',
+ 'norEduOrgUniqueIdentifier' => 'urn:oid:1.3.6.1.4.1.2428.90.1.7',
+ 'norEduOrgUniqueNumber' => 'urn:oid:1.3.6.1.4.1.2428.90.1.1',
+ 'norEduOrgUnitUniqueIdentifier' => 'urn:oid:1.3.6.1.4.1.2428.90.1.8',
+ 'norEduOrgUnitUniqueNumber' => 'urn:oid:1.3.6.1.4.1.2428.90.1.2',
+ 'norEduPersonBirthDate' => 'urn:oid:1.3.6.1.4.1.2428.90.1.3',
+ 'norEduPersonLIN' => 'urn:oid:1.3.6.1.4.1.2428.90.1.4',
+ 'norEduPersonNIN' => 'urn:oid:1.3.6.1.4.1.2428.90.1.5',
+ 'o' => 'urn:oid:2.5.4.10',
+ 'objectClass' => 'urn:oid:2.5.4.0',
+ 'organizationName' => 'urn:oid:2.5.4.10',
+ 'organizationalStatus' => 'urn:oid:0.9.2342.19200300.100.1.45',
+ 'organizationalUnitName' => 'urn:oid:2.5.4.11',
+ 'otherMailbox' => 'urn:oid:0.9.2342.19200300.100.1.22',
+ 'ou' => 'urn:oid:2.5.4.11',
+ 'owner' => 'urn:oid:2.5.4.32',
+ 'pager' => 'urn:oid:0.9.2342.19200300.100.1.42',
+ 'pagerTelephoneNumber' => 'urn:oid:0.9.2342.19200300.100.1.42',
+ 'personalSignature' => 'urn:oid:0.9.2342.19200300.100.1.53',
+ 'personalTitle' => 'urn:oid:0.9.2342.19200300.100.1.40',
+ 'photo' => 'urn:oid:0.9.2342.19200300.100.1.7',
+ 'physicalDeliveryOfficeName' => 'urn:oid:2.5.4.19',
+ 'pkcs9email' => 'urn:oid:1.2.840.113549.1.9.1',
+ 'postOfficeBox' => 'urn:oid:2.5.4.18',
+ 'postalAddress' => 'urn:oid:2.5.4.16',
+ 'postalCode' => 'urn:oid:2.5.4.17',
+ 'preferredDeliveryMethod' => 'urn:oid:2.5.4.28',
+ 'preferredLanguage' => 'urn:oid:2.16.840.1.113730.3.1.39',
+ 'presentationAddress' => 'urn:oid:2.5.4.29',
+ 'protocolInformation' => 'urn:oid:2.5.4.48',
+ 'pseudonym' => 'urn:oid:2.5.4.65',
+ 'registeredAddress' => 'urn:oid:2.5.4.26',
+ 'rfc822Mailbox' => 'urn:oid:0.9.2342.19200300.100.1.3',
+ 'roleOccupant' => 'urn:oid:2.5.4.33',
+ 'roomNumber' => 'urn:oid:0.9.2342.19200300.100.1.6',
+ 'sOARecord' => 'urn:oid:0.9.2342.19200300.100.1.30',
+ 'searchGuide' => 'urn:oid:2.5.4.14',
+ 'secretary' => 'urn:oid:0.9.2342.19200300.100.1.21',
+ 'seeAlso' => 'urn:oid:2.5.4.34',
+ 'serialNumber' => 'urn:oid:2.5.4.5',
+ 'singleLevelQuality' => 'urn:oid:0.9.2342.19200300.100.1.50',
+ 'sn' => 'urn:oid:2.5.4.4',
+ 'st' => 'urn:oid:2.5.4.8',
+ 'stateOrProvinceName' => 'urn:oid:2.5.4.8',
+ 'street' => 'urn:oid:2.5.4.9',
+ 'streetAddress' => 'urn:oid:2.5.4.9',
+ 'subtreeMaximumQuality' => 'urn:oid:0.9.2342.19200300.100.1.52',
+ 'subtreeMinimumQuality' => 'urn:oid:0.9.2342.19200300.100.1.51',
+ 'supportedAlgorithms' => 'urn:oid:2.5.4.52',
+ 'supportedApplicationContext' => 'urn:oid:2.5.4.30',
+ 'surname' => 'urn:oid:2.5.4.4',
+ 'telephoneNumber' => 'urn:oid:2.5.4.20',
+ 'teletexTerminalIdentifier' => 'urn:oid:2.5.4.22',
+ 'telexNumber' => 'urn:oid:2.5.4.21',
+ 'textEncodedORAddress' => 'urn:oid:0.9.2342.19200300.100.1.2',
+ 'title' => 'urn:oid:2.5.4.12',
+ 'uid' => 'urn:oid:0.9.2342.19200300.100.1.1',
+ 'uniqueIdentifier' => 'urn:oid:0.9.2342.19200300.100.1.44',
+ 'uniqueMember' => 'urn:oid:2.5.4.50',
+ 'userCertificate' => 'urn:oid:2.5.4.36',
+ 'userClass' => 'urn:oid:0.9.2342.19200300.100.1.8',
+ 'userPKCS12' => 'urn:oid:2.16.840.1.113730.3.1.216',
+ 'userPassword' => 'urn:oid:2.5.4.35',
+ 'userSMIMECertificate' => 'urn:oid:2.16.840.1.113730.3.1.40',
+ 'userid' => 'urn:oid:0.9.2342.19200300.100.1.1',
+ 'x121Address' => 'urn:oid:2.5.4.24',
+ 'x500UniqueIdentifier' => 'urn:oid:2.5.4.45',
+ 'schacHomeOrganization' => 'urn:oid:1.3.6.1.4.1.25178.1.2.9',
+ 'schacPersonalUniqueCode' => 'urn:oid:1.3.6.1.4.1.25178.1.2.14',
+);
+?> \ No newline at end of file
diff --git a/inc/simplesamlphp/attributemap/name2urn.php b/inc/simplesamlphp/attributemap/name2urn.php
new file mode 100644
index 0000000..5ccc677
--- /dev/null
+++ b/inc/simplesamlphp/attributemap/name2urn.php
@@ -0,0 +1,163 @@
+<?php
+$attributemap = array(
+ 'aRecord' => 'urn:mace:dir:attribute-def:aRecord',
+ 'aliasedEntryName' => 'urn:mace:dir:attribute-def:aliasedEntryName',
+ 'aliasedObjectName' => 'urn:mace:dir:attribute-def:aliasedObjectName',
+ 'associatedDomain' => 'urn:mace:dir:attribute-def:associatedDomain',
+ 'associatedName' => 'urn:mace:dir:attribute-def:associatedName',
+ 'audio' => 'urn:mace:dir:attribute-def:audio',
+ 'authorityRevocationList' => 'urn:mace:dir:attribute-def:authorityRevocationList',
+ 'buildingName' => 'urn:mace:dir:attribute-def:buildingName',
+ 'businessCategory' => 'urn:mace:dir:attribute-def:businessCategory',
+ 'c' => 'urn:mace:dir:attribute-def:c',
+ 'cACertificate' => 'urn:mace:dir:attribute-def:cACertificate',
+ 'cNAMERecord' => 'urn:mace:dir:attribute-def:cNAMERecord',
+ 'carLicense' => 'urn:mace:dir:attribute-def:carLicense',
+ 'certificateRevocationList' => 'urn:mace:dir:attribute-def:certificateRevocationList',
+ 'cn' => 'urn:mace:dir:attribute-def:cn',
+ 'co' => 'urn:mace:dir:attribute-def:co',
+ 'commonName' => 'urn:mace:dir:attribute-def:commonName',
+ 'countryName' => 'urn:mace:dir:attribute-def:countryName',
+ 'crossCertificatePair' => 'urn:mace:dir:attribute-def:crossCertificatePair',
+ 'dITRedirect' => 'urn:mace:dir:attribute-def:dITRedirect',
+ 'dSAQuality' => 'urn:mace:dir:attribute-def:dSAQuality',
+ 'dc' => 'urn:mace:dir:attribute-def:dc',
+ 'deltaRevocationList' => 'urn:mace:dir:attribute-def:deltaRevocationList',
+ 'departmentNumber' => 'urn:mace:dir:attribute-def:departmentNumber',
+ 'description' => 'urn:mace:dir:attribute-def:description',
+ 'destinationIndicator' => 'urn:mace:dir:attribute-def:destinationIndicator',
+ 'displayName' => 'urn:mace:dir:attribute-def:displayName',
+ 'distinguishedName' => 'urn:mace:dir:attribute-def:distinguishedName',
+ 'dmdName' => 'urn:mace:dir:attribute-def:dmdName',
+ 'dnQualifier' => 'urn:mace:dir:attribute-def:dnQualifier',
+ 'documentAuthor' => 'urn:mace:dir:attribute-def:documentAuthor',
+ 'documentIdentifier' => 'urn:mace:dir:attribute-def:documentIdentifier',
+ 'documentLocation' => 'urn:mace:dir:attribute-def:documentLocation',
+ 'documentPublisher' => 'urn:mace:dir:attribute-def:documentPublisher',
+ 'documentTitle' => 'urn:mace:dir:attribute-def:documentTitle',
+ 'documentVersion' => 'urn:mace:dir:attribute-def:documentVersion',
+ 'domainComponent' => 'urn:mace:dir:attribute-def:domainComponent',
+ 'drink' => 'urn:mace:dir:attribute-def:drink',
+ 'eduOrgHomePageURI' => 'urn:mace:dir:attribute-def:eduOrgHomePageURI',
+ 'eduOrgIdentityAuthNPolicyURI' => 'urn:mace:dir:attribute-def:eduOrgIdentityAuthNPolicyURI',
+ 'eduOrgLegalName' => 'urn:mace:dir:attribute-def:eduOrgLegalName',
+ 'eduOrgSuperiorURI' => 'urn:mace:dir:attribute-def:eduOrgSuperiorURI',
+ 'eduOrgWhitePagesURI' => 'urn:mace:dir:attribute-def:eduOrgWhitePagesURI',
+ 'eduPersonAffiliation' => 'urn:mace:dir:attribute-def:eduPersonAffiliation',
+ 'eduPersonEntitlement' => 'urn:mace:dir:attribute-def:eduPersonEntitlement',
+ 'eduPersonNickname' => 'urn:mace:dir:attribute-def:eduPersonNickname',
+ 'eduPersonOrgDN' => 'urn:mace:dir:attribute-def:eduPersonOrgDN',
+ 'eduPersonOrgUnitDN' => 'urn:mace:dir:attribute-def:eduPersonOrgUnitDN',
+ 'eduPersonPrimaryAffiliation' => 'urn:mace:dir:attribute-def:eduPersonPrimaryAffiliation',
+ 'eduPersonPrimaryOrgUnitDN' => 'urn:mace:dir:attribute-def:eduPersonPrimaryOrgUnitDN',
+ 'eduPersonPrincipalName' => 'urn:mace:dir:attribute-def:eduPersonPrincipalName',
+ 'eduPersonScopedAffiliation' => 'urn:mace:dir:attribute-def:eduPersonScopedAffiliation',
+ 'eduPersonTargetedID' => 'urn:mace:dir:attribute-def:eduPersonTargetedID',
+ 'email' => 'urn:mace:dir:attribute-def:email',
+ 'emailAddress' => 'urn:mace:dir:attribute-def:emailAddress',
+ 'employeeNumber' => 'urn:mace:dir:attribute-def:employeeNumber',
+ 'employeeType' => 'urn:mace:dir:attribute-def:employeeType',
+ 'enhancedSearchGuide' => 'urn:mace:dir:attribute-def:enhancedSearchGuide',
+ 'facsimileTelephoneNumber' => 'urn:mace:dir:attribute-def:facsimileTelephoneNumber',
+ 'favouriteDrink' => 'urn:mace:dir:attribute-def:favouriteDrink',
+ 'fax' => 'urn:mace:dir:attribute-def:fax',
+ 'federationFeideSchemaVersion' => 'urn:mace:dir:attribute-def:federationFeideSchemaVersion',
+ 'friendlyCountryName' => 'urn:mace:dir:attribute-def:friendlyCountryName',
+ 'generationQualifier' => 'urn:mace:dir:attribute-def:generationQualifier',
+ 'givenName' => 'urn:mace:dir:attribute-def:givenName',
+ 'gn' => 'urn:mace:dir:attribute-def:gn',
+ 'homePhone' => 'urn:mace:dir:attribute-def:homePhone',
+ 'homePostalAddress' => 'urn:mace:dir:attribute-def:homePostalAddress',
+ 'homeTelephoneNumber' => 'urn:mace:dir:attribute-def:homeTelephoneNumber',
+ 'host' => 'urn:mace:dir:attribute-def:host',
+ 'houseIdentifier' => 'urn:mace:dir:attribute-def:houseIdentifier',
+ 'info' => 'urn:mace:dir:attribute-def:info',
+ 'initials' => 'urn:mace:dir:attribute-def:initials',
+ 'internationaliSDNNumber' => 'urn:mace:dir:attribute-def:internationaliSDNNumber',
+ 'janetMailbox' => 'urn:mace:dir:attribute-def:janetMailbox',
+ 'jpegPhoto' => 'urn:mace:dir:attribute-def:jpegPhoto',
+ 'knowledgeInformation' => 'urn:mace:dir:attribute-def:knowledgeInformation',
+ 'l' => 'urn:mace:dir:attribute-def:l',
+ 'labeledURI' => 'urn:mace:dir:attribute-def:labeledURI',
+ 'localityName' => 'urn:mace:dir:attribute-def:localityName',
+ 'mDRecord' => 'urn:mace:dir:attribute-def:mDRecord',
+ 'mXRecord' => 'urn:mace:dir:attribute-def:mXRecord',
+ 'mail' => 'urn:mace:dir:attribute-def:mail',
+ 'mailPreferenceOption' => 'urn:mace:dir:attribute-def:mailPreferenceOption',
+ 'manager' => 'urn:mace:dir:attribute-def:manager',
+ 'member' => 'urn:mace:dir:attribute-def:member',
+ 'mobile' => 'urn:mace:dir:attribute-def:mobile',
+ 'mobileTelephoneNumber' => 'urn:mace:dir:attribute-def:mobileTelephoneNumber',
+ 'nSRecord' => 'urn:mace:dir:attribute-def:nSRecord',
+ 'name' => 'urn:mace:dir:attribute-def:name',
+ 'norEduOrgAcronym' => 'urn:mace:dir:attribute-def:norEduOrgAcronym',
+ 'norEduOrgNIN' => 'urn:mace:dir:attribute-def:norEduOrgNIN',
+ 'norEduOrgSchemaVersion' => 'urn:mace:dir:attribute-def:norEduOrgSchemaVersion',
+ 'norEduOrgUniqueIdentifier' => 'urn:mace:dir:attribute-def:norEduOrgUniqueIdentifier',
+ 'norEduOrgUniqueNumber' => 'urn:mace:dir:attribute-def:norEduOrgUniqueNumber',
+ 'norEduOrgUnitUniqueIdentifier' => 'urn:mace:dir:attribute-def:norEduOrgUnitUniqueIdentifier',
+ 'norEduOrgUnitUniqueNumber' => 'urn:mace:dir:attribute-def:norEduOrgUnitUniqueNumber',
+ 'norEduPersonBirthDate' => 'urn:mace:dir:attribute-def:norEduPersonBirthDate',
+ 'norEduPersonLIN' => 'urn:mace:dir:attribute-def:norEduPersonLIN',
+ 'norEduPersonNIN' => 'urn:mace:dir:attribute-def:norEduPersonNIN',
+ 'o' => 'urn:mace:dir:attribute-def:o',
+ 'objectClass' => 'urn:mace:dir:attribute-def:objectClass',
+ 'organizationName' => 'urn:mace:dir:attribute-def:organizationName',
+ 'organizationalStatus' => 'urn:mace:dir:attribute-def:organizationalStatus',
+ 'organizationalUnitName' => 'urn:mace:dir:attribute-def:organizationalUnitName',
+ 'otherMailbox' => 'urn:mace:dir:attribute-def:otherMailbox',
+ 'ou' => 'urn:mace:dir:attribute-def:ou',
+ 'owner' => 'urn:mace:dir:attribute-def:owner',
+ 'pager' => 'urn:mace:dir:attribute-def:pager',
+ 'pagerTelephoneNumber' => 'urn:mace:dir:attribute-def:pagerTelephoneNumber',
+ 'personalSignature' => 'urn:mace:dir:attribute-def:personalSignature',
+ 'personalTitle' => 'urn:mace:dir:attribute-def:personalTitle',
+ 'photo' => 'urn:mace:dir:attribute-def:photo',
+ 'physicalDeliveryOfficeName' => 'urn:mace:dir:attribute-def:physicalDeliveryOfficeName',
+ 'pkcs9email' => 'urn:mace:dir:attribute-def:pkcs9email',
+ 'postOfficeBox' => 'urn:mace:dir:attribute-def:postOfficeBox',
+ 'postalAddress' => 'urn:mace:dir:attribute-def:postalAddress',
+ 'postalCode' => 'urn:mace:dir:attribute-def:postalCode',
+ 'preferredDeliveryMethod' => 'urn:mace:dir:attribute-def:preferredDeliveryMethod',
+ 'preferredLanguage' => 'urn:mace:dir:attribute-def:preferredLanguage',
+ 'presentationAddress' => 'urn:mace:dir:attribute-def:presentationAddress',
+ 'protocolInformation' => 'urn:mace:dir:attribute-def:protocolInformation',
+ 'pseudonym' => 'urn:mace:dir:attribute-def:pseudonym',
+ 'registeredAddress' => 'urn:mace:dir:attribute-def:registeredAddress',
+ 'rfc822Mailbox' => 'urn:mace:dir:attribute-def:rfc822Mailbox',
+ 'roleOccupant' => 'urn:mace:dir:attribute-def:roleOccupant',
+ 'roomNumber' => 'urn:mace:dir:attribute-def:roomNumber',
+ 'sOARecord' => 'urn:mace:dir:attribute-def:sOARecord',
+ 'searchGuide' => 'urn:mace:dir:attribute-def:searchGuide',
+ 'secretary' => 'urn:mace:dir:attribute-def:secretary',
+ 'seeAlso' => 'urn:mace:dir:attribute-def:seeAlso',
+ 'serialNumber' => 'urn:mace:dir:attribute-def:serialNumber',
+ 'singleLevelQuality' => 'urn:mace:dir:attribute-def:singleLevelQuality',
+ 'sn' => 'urn:mace:dir:attribute-def:sn',
+ 'st' => 'urn:mace:dir:attribute-def:st',
+ 'stateOrProvinceName' => 'urn:mace:dir:attribute-def:stateOrProvinceName',
+ 'street' => 'urn:mace:dir:attribute-def:street',
+ 'streetAddress' => 'urn:mace:dir:attribute-def:streetAddress',
+ 'subtreeMaximumQuality' => 'urn:mace:dir:attribute-def:subtreeMaximumQuality',
+ 'subtreeMinimumQuality' => 'urn:mace:dir:attribute-def:subtreeMinimumQuality',
+ 'supportedAlgorithms' => 'urn:mace:dir:attribute-def:supportedAlgorithms',
+ 'supportedApplicationContext' => 'urn:mace:dir:attribute-def:supportedApplicationContext',
+ 'surname' => 'urn:mace:dir:attribute-def:surname',
+ 'telephoneNumber' => 'urn:mace:dir:attribute-def:telephoneNumber',
+ 'teletexTerminalIdentifier' => 'urn:mace:dir:attribute-def:teletexTerminalIdentifier',
+ 'telexNumber' => 'urn:mace:dir:attribute-def:telexNumber',
+ 'textEncodedORAddress' => 'urn:mace:dir:attribute-def:textEncodedORAddress',
+ 'title' => 'urn:mace:dir:attribute-def:title',
+ 'uid' => 'urn:mace:dir:attribute-def:uid',
+ 'uniqueIdentifier' => 'urn:mace:dir:attribute-def:uniqueIdentifier',
+ 'uniqueMember' => 'urn:mace:dir:attribute-def:uniqueMember',
+ 'userCertificate' => 'urn:mace:dir:attribute-def:userCertificate',
+ 'userClass' => 'urn:mace:dir:attribute-def:userClass',
+ 'userPKCS12' => 'urn:mace:dir:attribute-def:userPKCS12',
+ 'userPassword' => 'urn:mace:dir:attribute-def:userPassword',
+ 'userSMIMECertificate' => 'urn:mace:dir:attribute-def:userSMIMECertificate',
+ 'userid' => 'urn:mace:dir:attribute-def:userid',
+ 'x121Address' => 'urn:mace:dir:attribute-def:x121Address',
+ 'x500UniqueIdentifier' => 'urn:mace:dir:attribute-def:x500UniqueIdentifier',
+);
+?> \ No newline at end of file
diff --git a/inc/simplesamlphp/attributemap/oid-feide.php b/inc/simplesamlphp/attributemap/oid-feide.php
new file mode 100644
index 0000000..3319804
--- /dev/null
+++ b/inc/simplesamlphp/attributemap/oid-feide.php
@@ -0,0 +1,14 @@
+<?php
+
+$attributemap = array(
+ 'urn:oid:0.9.2342.19200300.100.1.41' => 'mobile',
+ 'urn:oid:1.3.6.1.4.1.5923.1.1.1.6' => 'eduPersonPrincipalName',
+ 'urn:oid:0.9.2342.19200300.100.1.3' => 'mail',
+ 'urn:oid:2.5.4.3' => 'cn',
+ 'urn:oid:2.16.840.1.113730.3.1.241' => 'displayName',
+ 'urn:oid:2.5.4.4' => 'sn',
+ 'urn:oid:2.5.4.42' => 'givenName',
+ 'urn:oid:2.16.756.1.2.5.1.1.1' => 'eduPerson',
+);
+
+?> \ No newline at end of file
diff --git a/inc/simplesamlphp/attributemap/oid2name.php b/inc/simplesamlphp/attributemap/oid2name.php
new file mode 100644
index 0000000..cfb8133
--- /dev/null
+++ b/inc/simplesamlphp/attributemap/oid2name.php
@@ -0,0 +1,145 @@
+<?php
+$attributemap = array(
+ 'urn:oid:0.9.2342.19200300.100.1.1' => 'uid',
+ 'urn:oid:0.9.2342.19200300.100.1.10' => 'manager',
+ 'urn:oid:0.9.2342.19200300.100.1.11' => 'documentIdentifier',
+ 'urn:oid:0.9.2342.19200300.100.1.12' => 'documentTitle',
+ 'urn:oid:0.9.2342.19200300.100.1.13' => 'documentVersion',
+ 'urn:oid:0.9.2342.19200300.100.1.14' => 'documentAuthor',
+ 'urn:oid:0.9.2342.19200300.100.1.15' => 'documentLocation',
+ 'urn:oid:0.9.2342.19200300.100.1.2' => 'textEncodedORAddress',
+ 'urn:oid:0.9.2342.19200300.100.1.20' => 'homePhone',
+ 'urn:oid:0.9.2342.19200300.100.1.21' => 'secretary',
+ 'urn:oid:0.9.2342.19200300.100.1.22' => 'otherMailbox',
+ 'urn:oid:0.9.2342.19200300.100.1.25' => 'dc',
+ 'urn:oid:0.9.2342.19200300.100.1.26' => 'aRecord',
+ 'urn:oid:0.9.2342.19200300.100.1.27' => 'mDRecord',
+ 'urn:oid:0.9.2342.19200300.100.1.28' => 'mXRecord',
+ 'urn:oid:0.9.2342.19200300.100.1.29' => 'nSRecord',
+ 'urn:oid:0.9.2342.19200300.100.1.3' => 'mail',
+ 'urn:oid:0.9.2342.19200300.100.1.30' => 'sOARecord',
+ 'urn:oid:0.9.2342.19200300.100.1.31' => 'cNAMERecord',
+ 'urn:oid:0.9.2342.19200300.100.1.37' => 'associatedDomain',
+ 'urn:oid:0.9.2342.19200300.100.1.38' => 'associatedName',
+ 'urn:oid:0.9.2342.19200300.100.1.39' => 'homePostalAddress',
+ 'urn:oid:0.9.2342.19200300.100.1.4' => 'info',
+ 'urn:oid:0.9.2342.19200300.100.1.40' => 'personalTitle',
+ 'urn:oid:0.9.2342.19200300.100.1.41' => 'mobile',
+ 'urn:oid:0.9.2342.19200300.100.1.42' => 'pager',
+ 'urn:oid:0.9.2342.19200300.100.1.43' => 'co',
+ 'urn:oid:0.9.2342.19200300.100.1.44' => 'uniqueIdentifier',
+ 'urn:oid:0.9.2342.19200300.100.1.45' => 'organizationalStatus',
+ 'urn:oid:0.9.2342.19200300.100.1.46' => 'janetMailbox',
+ 'urn:oid:0.9.2342.19200300.100.1.47' => 'mailPreferenceOption',
+ 'urn:oid:0.9.2342.19200300.100.1.48' => 'buildingName',
+ 'urn:oid:0.9.2342.19200300.100.1.49' => 'dSAQuality',
+ 'urn:oid:0.9.2342.19200300.100.1.5' => 'drink',
+ 'urn:oid:0.9.2342.19200300.100.1.50' => 'singleLevelQuality',
+ 'urn:oid:0.9.2342.19200300.100.1.51' => 'subtreeMinimumQuality',
+ 'urn:oid:0.9.2342.19200300.100.1.52' => 'subtreeMaximumQuality',
+ 'urn:oid:0.9.2342.19200300.100.1.53' => 'personalSignature',
+ 'urn:oid:0.9.2342.19200300.100.1.54' => 'dITRedirect',
+ 'urn:oid:0.9.2342.19200300.100.1.55' => 'audio',
+ 'urn:oid:0.9.2342.19200300.100.1.56' => 'documentPublisher',
+ 'urn:oid:0.9.2342.19200300.100.1.6' => 'roomNumber',
+ 'urn:oid:0.9.2342.19200300.100.1.60' => 'jpegPhoto',
+ 'urn:oid:0.9.2342.19200300.100.1.7' => 'photo',
+ 'urn:oid:0.9.2342.19200300.100.1.8' => 'userClass',
+ 'urn:oid:0.9.2342.19200300.100.1.9' => 'host',
+ 'urn:oid:1.2.840.113549.1.9.1' => 'email',
+ 'urn:oid:1.3.6.1.4.1.2428.90.1.1' => 'norEduOrgUniqueNumber',
+ 'urn:oid:1.3.6.1.4.1.2428.90.1.11' => 'norEduOrgSchemaVersion',
+ 'urn:oid:1.3.6.1.4.1.2428.90.1.12' => 'norEduOrgNIN',
+ 'urn:oid:1.3.6.1.4.1.2428.90.1.2' => 'norEduOrgUnitUniqueNumber',
+ 'urn:oid:1.3.6.1.4.1.2428.90.1.3' => 'norEduPersonBirthDate',
+ 'urn:oid:1.3.6.1.4.1.2428.90.1.4' => 'norEduPersonLIN',
+ 'urn:oid:1.3.6.1.4.1.2428.90.1.5' => 'norEduPersonNIN',
+ 'urn:oid:1.3.6.1.4.1.2428.90.1.6' => 'norEduOrgAcronym',
+ 'urn:oid:1.3.6.1.4.1.2428.90.1.7' => 'norEduOrgUniqueIdentifier',
+ 'urn:oid:1.3.6.1.4.1.2428.90.1.8' => 'norEduOrgUnitUniqueIdentifier',
+ 'urn:oid:1.3.6.1.4.1.2428.90.1.9' => 'federationFeideSchemaVersion',
+ 'urn:oid:1.3.6.1.4.1.250.1.57' => 'labeledURI',
+ 'urn:oid:1.3.6.1.4.1.5923.1.1.1.1' => 'eduPersonAffiliation',
+ 'urn:oid:1.3.6.1.4.1.5923.1.1.1.10' => 'eduPersonTargetedID',
+ 'urn:oid:1.3.6.1.4.1.5923.1.1.1.2' => 'eduPersonNickname',
+ 'urn:oid:1.3.6.1.4.1.5923.1.1.1.3' => 'eduPersonOrgDN',
+ 'urn:oid:1.3.6.1.4.1.5923.1.1.1.4' => 'eduPersonOrgUnitDN',
+ 'urn:oid:1.3.6.1.4.1.5923.1.1.1.5' => 'eduPersonPrimaryAffiliation',
+ 'urn:oid:1.3.6.1.4.1.5923.1.1.1.6' => 'eduPersonPrincipalName',
+ 'urn:oid:1.3.6.1.4.1.5923.1.1.1.7' => 'eduPersonEntitlement',
+ 'urn:oid:1.3.6.1.4.1.5923.1.1.1.8' => 'eduPersonPrimaryOrgUnitDN',
+ 'urn:oid:1.3.6.1.4.1.5923.1.1.1.9' => 'eduPersonScopedAffiliation',
+ 'urn:oid:1.3.6.1.4.1.5923.1.2.1.2' => 'eduOrgHomePageURI',
+ 'urn:oid:1.3.6.1.4.1.5923.1.2.1.3' => 'eduOrgIdentityAuthNPolicyURI',
+ 'urn:oid:1.3.6.1.4.1.5923.1.2.1.4' => 'eduOrgLegalName',
+ 'urn:oid:1.3.6.1.4.1.5923.1.2.1.5' => 'eduOrgSuperiorURI',
+ 'urn:oid:1.3.6.1.4.1.5923.1.2.1.6' => 'eduOrgWhitePagesURI',
+ 'urn:oid:1.3.6.1.4.1.5923.1.5.1.1' => 'isMemberOf',
+ 'urn:oid:2.16.840.1.113730.3.1.1' => 'carLicense',
+ 'urn:oid:2.16.840.1.113730.3.1.2' => 'departmentNumber',
+ 'urn:oid:2.16.840.1.113730.3.1.216' => 'userPKCS12',
+ 'urn:oid:2.16.840.1.113730.3.1.241' => 'displayName',
+ 'urn:oid:2.16.840.1.113730.3.1.3' => 'employeeNumber',
+ 'urn:oid:2.16.840.1.113730.3.1.39' => 'preferredLanguage',
+ 'urn:oid:2.16.840.1.113730.3.1.4' => 'employeeType',
+ 'urn:oid:2.16.840.1.113730.3.1.40' => 'userSMIMECertificate',
+ 'urn:oid:2.5.4.0' => 'objectClass',
+ 'urn:oid:2.5.4.1' => 'aliasedObjectName',
+ 'urn:oid:2.5.4.10' => 'o',
+ 'urn:oid:2.5.4.11' => 'ou',
+ 'urn:oid:2.5.4.12' => 'title',
+ 'urn:oid:2.5.4.13' => 'description',
+ 'urn:oid:2.5.4.14' => 'searchGuide',
+ 'urn:oid:2.5.4.15' => 'businessCategory',
+ 'urn:oid:2.5.4.16' => 'postalAddress',
+ 'urn:oid:2.5.4.17' => 'postalCode',
+ 'urn:oid:2.5.4.18' => 'postOfficeBox',
+ 'urn:oid:2.5.4.19' => 'physicalDeliveryOfficeName',
+ 'urn:oid:2.5.4.2' => 'knowledgeInformation',
+ 'urn:oid:2.5.4.20' => 'telephoneNumber',
+ 'urn:oid:2.5.4.21' => 'telexNumber',
+ 'urn:oid:2.5.4.22' => 'teletexTerminalIdentifier',
+ 'urn:oid:2.5.4.23' => 'facsimileTelephoneNumber',
+ 'urn:oid:2.5.4.24' => 'x121Address',
+ 'urn:oid:2.5.4.25' => 'internationaliSDNNumber',
+ 'urn:oid:2.5.4.26' => 'registeredAddress',
+ 'urn:oid:2.5.4.27' => 'destinationIndicator',
+ 'urn:oid:2.5.4.28' => 'preferredDeliveryMethod',
+ 'urn:oid:2.5.4.29' => 'presentationAddress',
+ 'urn:oid:2.5.4.3' => 'cn',
+ 'urn:oid:2.5.4.30' => 'supportedApplicationContext',
+ 'urn:oid:2.5.4.31' => 'member',
+ 'urn:oid:2.5.4.32' => 'owner',
+ 'urn:oid:2.5.4.33' => 'roleOccupant',
+ 'urn:oid:2.5.4.34' => 'seeAlso',
+ 'urn:oid:2.5.4.35' => 'userPassword',
+ 'urn:oid:2.5.4.36' => 'userCertificate',
+ 'urn:oid:2.5.4.37' => 'cACertificate',
+ 'urn:oid:2.5.4.38' => 'authorityRevocationList',
+ 'urn:oid:2.5.4.39' => 'certificateRevocationList',
+ 'urn:oid:2.5.4.4' => 'sn',
+ 'urn:oid:2.5.4.40' => 'crossCertificatePair',
+ 'urn:oid:2.5.4.41' => 'name',
+ 'urn:oid:2.5.4.42' => 'givenName',
+ 'urn:oid:2.5.4.43' => 'initials',
+ 'urn:oid:2.5.4.44' => 'generationQualifier',
+ 'urn:oid:2.5.4.45' => 'x500UniqueIdentifier',
+ 'urn:oid:2.5.4.46' => 'dnQualifier',
+ 'urn:oid:2.5.4.47' => 'enhancedSearchGuide',
+ 'urn:oid:2.5.4.48' => 'protocolInformation',
+ 'urn:oid:2.5.4.49' => 'distinguishedName',
+ 'urn:oid:2.5.4.5' => 'serialNumber',
+ 'urn:oid:2.5.4.50' => 'uniqueMember',
+ 'urn:oid:2.5.4.51' => 'houseIdentifier',
+ 'urn:oid:2.5.4.52' => 'supportedAlgorithms',
+ 'urn:oid:2.5.4.53' => 'deltaRevocationList',
+ 'urn:oid:2.5.4.54' => 'dmdName',
+ 'urn:oid:2.5.4.6' => 'c',
+ 'urn:oid:2.5.4.65' => 'pseudonym',
+ 'urn:oid:2.5.4.7' => 'l',
+ 'urn:oid:2.5.4.8' => 'st',
+ 'urn:oid:2.5.4.9' => 'street',
+ 'urn:oid:1.3.6.1.4.1.25178.1.2.9' => 'schacHomeOrganization',
+ 'urn:oid:1.3.6.1.4.1.25178.1.2.14' => 'schacPersonalUniqueCode',
+);
+?> \ No newline at end of file
diff --git a/inc/simplesamlphp/attributemap/oid2urn.php b/inc/simplesamlphp/attributemap/oid2urn.php
new file mode 100644
index 0000000..f32d7df
--- /dev/null
+++ b/inc/simplesamlphp/attributemap/oid2urn.php
@@ -0,0 +1,142 @@
+<?php
+$attributemap = array(
+ 'urn:oid:0.9.2342.19200300.100.1.1' => 'urn:mace:dir:attribute-def:uid',
+ 'urn:oid:0.9.2342.19200300.100.1.10' => 'urn:mace:dir:attribute-def:manager',
+ 'urn:oid:0.9.2342.19200300.100.1.11' => 'urn:mace:dir:attribute-def:documentIdentifier',
+ 'urn:oid:0.9.2342.19200300.100.1.12' => 'urn:mace:dir:attribute-def:documentTitle',
+ 'urn:oid:0.9.2342.19200300.100.1.13' => 'urn:mace:dir:attribute-def:documentVersion',
+ 'urn:oid:0.9.2342.19200300.100.1.14' => 'urn:mace:dir:attribute-def:documentAuthor',
+ 'urn:oid:0.9.2342.19200300.100.1.15' => 'urn:mace:dir:attribute-def:documentLocation',
+ 'urn:oid:0.9.2342.19200300.100.1.2' => 'urn:mace:dir:attribute-def:textEncodedORAddress',
+ 'urn:oid:0.9.2342.19200300.100.1.20' => 'urn:mace:dir:attribute-def:homePhone',
+ 'urn:oid:0.9.2342.19200300.100.1.21' => 'urn:mace:dir:attribute-def:secretary',
+ 'urn:oid:0.9.2342.19200300.100.1.22' => 'urn:mace:dir:attribute-def:otherMailbox',
+ 'urn:oid:0.9.2342.19200300.100.1.25' => 'urn:mace:dir:attribute-def:dc',
+ 'urn:oid:0.9.2342.19200300.100.1.26' => 'urn:mace:dir:attribute-def:aRecord',
+ 'urn:oid:0.9.2342.19200300.100.1.27' => 'urn:mace:dir:attribute-def:mDRecord',
+ 'urn:oid:0.9.2342.19200300.100.1.28' => 'urn:mace:dir:attribute-def:mXRecord',
+ 'urn:oid:0.9.2342.19200300.100.1.29' => 'urn:mace:dir:attribute-def:nSRecord',
+ 'urn:oid:0.9.2342.19200300.100.1.3' => 'urn:mace:dir:attribute-def:mail',
+ 'urn:oid:0.9.2342.19200300.100.1.30' => 'urn:mace:dir:attribute-def:sOARecord',
+ 'urn:oid:0.9.2342.19200300.100.1.31' => 'urn:mace:dir:attribute-def:cNAMERecord',
+ 'urn:oid:0.9.2342.19200300.100.1.37' => 'urn:mace:dir:attribute-def:associatedDomain',
+ 'urn:oid:0.9.2342.19200300.100.1.38' => 'urn:mace:dir:attribute-def:associatedName',
+ 'urn:oid:0.9.2342.19200300.100.1.39' => 'urn:mace:dir:attribute-def:homePostalAddress',
+ 'urn:oid:0.9.2342.19200300.100.1.4' => 'urn:mace:dir:attribute-def:info',
+ 'urn:oid:0.9.2342.19200300.100.1.40' => 'urn:mace:dir:attribute-def:personalTitle',
+ 'urn:oid:0.9.2342.19200300.100.1.41' => 'urn:mace:dir:attribute-def:mobile',
+ 'urn:oid:0.9.2342.19200300.100.1.42' => 'urn:mace:dir:attribute-def:pager',
+ 'urn:oid:0.9.2342.19200300.100.1.43' => 'urn:mace:dir:attribute-def:co',
+ 'urn:oid:0.9.2342.19200300.100.1.44' => 'urn:mace:dir:attribute-def:uniqueIdentifier',
+ 'urn:oid:0.9.2342.19200300.100.1.45' => 'urn:mace:dir:attribute-def:organizationalStatus',
+ 'urn:oid:0.9.2342.19200300.100.1.46' => 'urn:mace:dir:attribute-def:janetMailbox',
+ 'urn:oid:0.9.2342.19200300.100.1.47' => 'urn:mace:dir:attribute-def:mailPreferenceOption',
+ 'urn:oid:0.9.2342.19200300.100.1.48' => 'urn:mace:dir:attribute-def:buildingName',
+ 'urn:oid:0.9.2342.19200300.100.1.49' => 'urn:mace:dir:attribute-def:dSAQuality',
+ 'urn:oid:0.9.2342.19200300.100.1.5' => 'urn:mace:dir:attribute-def:drink',
+ 'urn:oid:0.9.2342.19200300.100.1.50' => 'urn:mace:dir:attribute-def:singleLevelQuality',
+ 'urn:oid:0.9.2342.19200300.100.1.51' => 'urn:mace:dir:attribute-def:subtreeMinimumQuality',
+ 'urn:oid:0.9.2342.19200300.100.1.52' => 'urn:mace:dir:attribute-def:subtreeMaximumQuality',
+ 'urn:oid:0.9.2342.19200300.100.1.53' => 'urn:mace:dir:attribute-def:personalSignature',
+ 'urn:oid:0.9.2342.19200300.100.1.54' => 'urn:mace:dir:attribute-def:dITRedirect',
+ 'urn:oid:0.9.2342.19200300.100.1.55' => 'urn:mace:dir:attribute-def:audio',
+ 'urn:oid:0.9.2342.19200300.100.1.56' => 'urn:mace:dir:attribute-def:documentPublisher',
+ 'urn:oid:0.9.2342.19200300.100.1.6' => 'urn:mace:dir:attribute-def:roomNumber',
+ 'urn:oid:0.9.2342.19200300.100.1.60' => 'urn:mace:dir:attribute-def:jpegPhoto',
+ 'urn:oid:0.9.2342.19200300.100.1.7' => 'urn:mace:dir:attribute-def:photo',
+ 'urn:oid:0.9.2342.19200300.100.1.8' => 'urn:mace:dir:attribute-def:userClass',
+ 'urn:oid:0.9.2342.19200300.100.1.9' => 'urn:mace:dir:attribute-def:host',
+ 'urn:oid:1.2.840.113549.1.9.1' => 'urn:mace:dir:attribute-def:email',
+ 'urn:oid:1.3.6.1.4.1.2428.90.1.1' => 'urn:mace:dir:attribute-def:norEduOrgUniqueNumber',
+ 'urn:oid:1.3.6.1.4.1.2428.90.1.11' => 'urn:mace:dir:attribute-def:norEduOrgSchemaVersion',
+ 'urn:oid:1.3.6.1.4.1.2428.90.1.12' => 'urn:mace:dir:attribute-def:norEduOrgNIN',
+ 'urn:oid:1.3.6.1.4.1.2428.90.1.2' => 'urn:mace:dir:attribute-def:norEduOrgUnitUniqueNumber',
+ 'urn:oid:1.3.6.1.4.1.2428.90.1.3' => 'urn:mace:dir:attribute-def:norEduPersonBirthDate',
+ 'urn:oid:1.3.6.1.4.1.2428.90.1.4' => 'urn:mace:dir:attribute-def:norEduPersonLIN',
+ 'urn:oid:1.3.6.1.4.1.2428.90.1.5' => 'urn:mace:dir:attribute-def:norEduPersonNIN',
+ 'urn:oid:1.3.6.1.4.1.2428.90.1.6' => 'urn:mace:dir:attribute-def:norEduOrgAcronym',
+ 'urn:oid:1.3.6.1.4.1.2428.90.1.7' => 'urn:mace:dir:attribute-def:norEduOrgUniqueIdentifier',
+ 'urn:oid:1.3.6.1.4.1.2428.90.1.8' => 'urn:mace:dir:attribute-def:norEduOrgUnitUniqueIdentifier',
+ 'urn:oid:1.3.6.1.4.1.2428.90.1.9' => 'urn:mace:dir:attribute-def:federationFeideSchemaVersion',
+ 'urn:oid:1.3.6.1.4.1.250.1.57' => 'urn:mace:dir:attribute-def:labeledURI',
+ 'urn:oid:1.3.6.1.4.1.5923.1.1.1.1' => 'urn:mace:dir:attribute-def:eduPersonAffiliation',
+ 'urn:oid:1.3.6.1.4.1.5923.1.1.1.10' => 'urn:mace:dir:attribute-def:eduPersonTargetedID',
+ 'urn:oid:1.3.6.1.4.1.5923.1.1.1.2' => 'urn:mace:dir:attribute-def:eduPersonNickname',
+ 'urn:oid:1.3.6.1.4.1.5923.1.1.1.3' => 'urn:mace:dir:attribute-def:eduPersonOrgDN',
+ 'urn:oid:1.3.6.1.4.1.5923.1.1.1.4' => 'urn:mace:dir:attribute-def:eduPersonOrgUnitDN',
+ 'urn:oid:1.3.6.1.4.1.5923.1.1.1.5' => 'urn:mace:dir:attribute-def:eduPersonPrimaryAffiliation',
+ 'urn:oid:1.3.6.1.4.1.5923.1.1.1.6' => 'urn:mace:dir:attribute-def:eduPersonPrincipalName',
+ 'urn:oid:1.3.6.1.4.1.5923.1.1.1.7' => 'urn:mace:dir:attribute-def:eduPersonEntitlement',
+ 'urn:oid:1.3.6.1.4.1.5923.1.1.1.8' => 'urn:mace:dir:attribute-def:eduPersonPrimaryOrgUnitDN',
+ 'urn:oid:1.3.6.1.4.1.5923.1.1.1.9' => 'urn:mace:dir:attribute-def:eduPersonScopedAffiliation',
+ 'urn:oid:1.3.6.1.4.1.5923.1.2.1.2' => 'urn:mace:dir:attribute-def:eduOrgHomePageURI',
+ 'urn:oid:1.3.6.1.4.1.5923.1.2.1.3' => 'urn:mace:dir:attribute-def:eduOrgIdentityAuthNPolicyURI',
+ 'urn:oid:1.3.6.1.4.1.5923.1.2.1.4' => 'urn:mace:dir:attribute-def:eduOrgLegalName',
+ 'urn:oid:1.3.6.1.4.1.5923.1.2.1.5' => 'urn:mace:dir:attribute-def:eduOrgSuperiorURI',
+ 'urn:oid:1.3.6.1.4.1.5923.1.2.1.6' => 'urn:mace:dir:attribute-def:eduOrgWhitePagesURI',
+ 'urn:oid:2.16.840.1.113730.3.1.1' => 'urn:mace:dir:attribute-def:carLicense',
+ 'urn:oid:2.16.840.1.113730.3.1.2' => 'urn:mace:dir:attribute-def:departmentNumber',
+ 'urn:oid:2.16.840.1.113730.3.1.216' => 'urn:mace:dir:attribute-def:userPKCS12',
+ 'urn:oid:2.16.840.1.113730.3.1.241' => 'urn:mace:dir:attribute-def:displayName',
+ 'urn:oid:2.16.840.1.113730.3.1.3' => 'urn:mace:dir:attribute-def:employeeNumber',
+ 'urn:oid:2.16.840.1.113730.3.1.39' => 'urn:mace:dir:attribute-def:preferredLanguage',
+ 'urn:oid:2.16.840.1.113730.3.1.4' => 'urn:mace:dir:attribute-def:employeeType',
+ 'urn:oid:2.16.840.1.113730.3.1.40' => 'urn:mace:dir:attribute-def:userSMIMECertificate',
+ 'urn:oid:2.5.4.0' => 'urn:mace:dir:attribute-def:objectClass',
+ 'urn:oid:2.5.4.1' => 'urn:mace:dir:attribute-def:aliasedObjectName',
+ 'urn:oid:2.5.4.10' => 'urn:mace:dir:attribute-def:o',
+ 'urn:oid:2.5.4.11' => 'urn:mace:dir:attribute-def:ou',
+ 'urn:oid:2.5.4.12' => 'urn:mace:dir:attribute-def:title',
+ 'urn:oid:2.5.4.13' => 'urn:mace:dir:attribute-def:description',
+ 'urn:oid:2.5.4.14' => 'urn:mace:dir:attribute-def:searchGuide',
+ 'urn:oid:2.5.4.15' => 'urn:mace:dir:attribute-def:businessCategory',
+ 'urn:oid:2.5.4.16' => 'urn:mace:dir:attribute-def:postalAddress',
+ 'urn:oid:2.5.4.17' => 'urn:mace:dir:attribute-def:postalCode',
+ 'urn:oid:2.5.4.18' => 'urn:mace:dir:attribute-def:postOfficeBox',
+ 'urn:oid:2.5.4.19' => 'urn:mace:dir:attribute-def:physicalDeliveryOfficeName',
+ 'urn:oid:2.5.4.2' => 'urn:mace:dir:attribute-def:knowledgeInformation',
+ 'urn:oid:2.5.4.20' => 'urn:mace:dir:attribute-def:telephoneNumber',
+ 'urn:oid:2.5.4.21' => 'urn:mace:dir:attribute-def:telexNumber',
+ 'urn:oid:2.5.4.22' => 'urn:mace:dir:attribute-def:teletexTerminalIdentifier',
+ 'urn:oid:2.5.4.23' => 'urn:mace:dir:attribute-def:facsimileTelephoneNumber',
+ 'urn:oid:2.5.4.24' => 'urn:mace:dir:attribute-def:x121Address',
+ 'urn:oid:2.5.4.25' => 'urn:mace:dir:attribute-def:internationaliSDNNumber',
+ 'urn:oid:2.5.4.26' => 'urn:mace:dir:attribute-def:registeredAddress',
+ 'urn:oid:2.5.4.27' => 'urn:mace:dir:attribute-def:destinationIndicator',
+ 'urn:oid:2.5.4.28' => 'urn:mace:dir:attribute-def:preferredDeliveryMethod',
+ 'urn:oid:2.5.4.29' => 'urn:mace:dir:attribute-def:presentationAddress',
+ 'urn:oid:2.5.4.3' => 'urn:mace:dir:attribute-def:cn',
+ 'urn:oid:2.5.4.30' => 'urn:mace:dir:attribute-def:supportedApplicationContext',
+ 'urn:oid:2.5.4.31' => 'urn:mace:dir:attribute-def:member',
+ 'urn:oid:2.5.4.32' => 'urn:mace:dir:attribute-def:owner',
+ 'urn:oid:2.5.4.33' => 'urn:mace:dir:attribute-def:roleOccupant',
+ 'urn:oid:2.5.4.34' => 'urn:mace:dir:attribute-def:seeAlso',
+ 'urn:oid:2.5.4.35' => 'urn:mace:dir:attribute-def:userPassword',
+ 'urn:oid:2.5.4.36' => 'urn:mace:dir:attribute-def:userCertificate',
+ 'urn:oid:2.5.4.37' => 'urn:mace:dir:attribute-def:cACertificate',
+ 'urn:oid:2.5.4.38' => 'urn:mace:dir:attribute-def:authorityRevocationList',
+ 'urn:oid:2.5.4.39' => 'urn:mace:dir:attribute-def:certificateRevocationList',
+ 'urn:oid:2.5.4.4' => 'urn:mace:dir:attribute-def:sn',
+ 'urn:oid:2.5.4.40' => 'urn:mace:dir:attribute-def:crossCertificatePair',
+ 'urn:oid:2.5.4.41' => 'urn:mace:dir:attribute-def:name',
+ 'urn:oid:2.5.4.42' => 'urn:mace:dir:attribute-def:givenName',
+ 'urn:oid:2.5.4.43' => 'urn:mace:dir:attribute-def:initials',
+ 'urn:oid:2.5.4.44' => 'urn:mace:dir:attribute-def:generationQualifier',
+ 'urn:oid:2.5.4.45' => 'urn:mace:dir:attribute-def:x500UniqueIdentifier',
+ 'urn:oid:2.5.4.46' => 'urn:mace:dir:attribute-def:dnQualifier',
+ 'urn:oid:2.5.4.47' => 'urn:mace:dir:attribute-def:enhancedSearchGuide',
+ 'urn:oid:2.5.4.48' => 'urn:mace:dir:attribute-def:protocolInformation',
+ 'urn:oid:2.5.4.49' => 'urn:mace:dir:attribute-def:distinguishedName',
+ 'urn:oid:2.5.4.5' => 'urn:mace:dir:attribute-def:serialNumber',
+ 'urn:oid:2.5.4.50' => 'urn:mace:dir:attribute-def:uniqueMember',
+ 'urn:oid:2.5.4.51' => 'urn:mace:dir:attribute-def:houseIdentifier',
+ 'urn:oid:2.5.4.52' => 'urn:mace:dir:attribute-def:supportedAlgorithms',
+ 'urn:oid:2.5.4.53' => 'urn:mace:dir:attribute-def:deltaRevocationList',
+ 'urn:oid:2.5.4.54' => 'urn:mace:dir:attribute-def:dmdName',
+ 'urn:oid:2.5.4.6' => 'urn:mace:dir:attribute-def:c',
+ 'urn:oid:2.5.4.65' => 'urn:mace:dir:attribute-def:pseudonym',
+ 'urn:oid:2.5.4.7' => 'urn:mace:dir:attribute-def:l',
+ 'urn:oid:2.5.4.8' => 'urn:mace:dir:attribute-def:st',
+ 'urn:oid:2.5.4.9' => 'urn:mace:dir:attribute-def:street',
+);
+?> \ No newline at end of file
diff --git a/inc/simplesamlphp/attributemap/openid2name.php b/inc/simplesamlphp/attributemap/openid2name.php
new file mode 100644
index 0000000..7a3e686
--- /dev/null
+++ b/inc/simplesamlphp/attributemap/openid2name.php
@@ -0,0 +1,40 @@
+<?php
+$attributemap = array(
+
+ // The following attributes can used to manufacture usernames
+// 'openid' => '', // OpenID Claimed_ID/Identity_URL of the user
+// 'openid.local_id' => '', // Identity URL returned by OpenID Server
+// 'openid.server_url' => '', //
+
+ // Simple Registration + AX Schema
+ 'http://axschema.org/namePerson/friendly' => 'displayName', // Alias/Username -> displayName
+ 'openid.sreg.nickname' => 'displayName',
+ 'http://axschema.org/contact/email' => 'mail', // Email
+ 'openid.sreg.email' => 'mail',
+ 'http://axschema.org/namePerson' => 'displayName', // Full name -> displayName
+ 'openid.sreg.fullname' => 'displayName',
+ 'http://axschema.org/contact/postalCode/home' => 'postalCode', // Postal code
+ 'openid.sreg.postcode' => 'postalCode',
+ 'http://axschema.org/contact/country/home' => 'countryName', // Country
+ 'openid.sreg.country' => 'countryName',
+ 'http://axschema.org/pref/language' => 'preferredLanguage', // Language
+ 'openid.sreg.language' => 'preferredLanguage',
+
+ // Name
+ 'http://axschema.org/namePerson/prefix' => 'personalTitle', // Name prefix
+ 'http://axschema.org/namePerson/first' => 'givenName', // First name
+ 'http://axschema.org/namePerson/last' => 'sn', // Last name
+
+ // Work
+ 'http://axschema.org/company/name' => 'o', // Company name
+ 'http://axschema.org/company/title' => 'title', // Job title
+
+ // Telephone
+ 'http://axschema.org/contact/phone/default' => 'telephoneNumber', // Phone (preferred)
+ 'http://axschema.org/contact/phone/home' => 'homePhone', // Phone (home)
+ 'http://axschema.org/contact/phone/business' => 'telephoneNumber', // Phone (work)
+ 'http://axschema.org/contact/phone/cell' => 'mobile', // Phone (mobile)
+ 'http://axschema.org/contact/phone/fax' => 'facsimileTelephoneNumber', // Phone (fax)
+
+ // Further attributes can be found at http://www.axschema.org/types/
+);
diff --git a/inc/simplesamlphp/attributemap/removeurnprefix.php b/inc/simplesamlphp/attributemap/removeurnprefix.php
new file mode 100644
index 0000000..a48ffe1
--- /dev/null
+++ b/inc/simplesamlphp/attributemap/removeurnprefix.php
@@ -0,0 +1,22 @@
+<?php
+
+$attributemap = array(
+ 'urn:mace:dir:attribute-def:sn' => 'sn',
+ 'urn:mace:dir:attribute-def:telephoneNumber' => 'telephoneNumber',
+ 'urn:mace:dir:attribute-def:facsimileTelephoneNumber' => 'facsimileTelephoneNumber',
+ 'urn:mace:dir:attribute-def:postalAddress' => 'postalAddress',
+ 'urn:mace:dir:attribute-def:givenName' => 'givenName',
+ 'urn:mace:dir:attribute-def:homePhone' => 'homePhone',
+ 'urn:mace:dir:attribute-def:homePostalAddress' => 'homePostalAddress',
+ 'urn:mace:dir:attribute-def:mail' => 'mail',
+ 'urn:mace:dir:attribute-def:mobile' => 'mobile',
+ 'urn:mace:dir:attribute-def:preferredLanguage' => 'preferredLanguage',
+ 'urn:mace:dir:attribute-def:eduPersonPrincipalName' => 'eduPersonPrincipalName',
+ 'urn:mace:dir:attribute-def:eduPersonAffiliation' => 'eduPersonAffiliation',
+ 'urn:mace:dir:attribute-def:eduPersonScopedAffiliation' => 'eduPersonScopedAffiliation',
+ 'urn:mace:dir:attribute-def:eduPersonEntitlement' => 'eduPersonEntitlement',
+ 'urn:mace:dir:attribute-def:eduPersonOrgDN' => 'eduPersonOrgDN',
+ 'urn:mace:dir:attribute-def:eduPersonOrgUnitDN' => 'eduPersonOrgUnitDN',
+);
+
+?> \ No newline at end of file
diff --git a/inc/simplesamlphp/attributemap/test.php b/inc/simplesamlphp/attributemap/test.php
new file mode 100644
index 0000000..41e55c9
--- /dev/null
+++ b/inc/simplesamlphp/attributemap/test.php
@@ -0,0 +1,40 @@
+<?php
+
+$attributemap = array(
+ 'mobile' => 'urn:mace:dir:attribute-def:mobile'
+);
+
+/*
+
+ShibMapAttribute urn:mace:dir:attribute-def:sn Shib-LDAP-Surname surname
+ShibMapAttribute urn:mace:dir:attribute-def:telephoneNumber Shib-LDAP-telephoneNumber telephoneNumber
+ShibMapAttribute urn:mace:dir:attribute-def:facsimileTelephoneNumber Shib-LDAP-facsimileTelephoneNumber facsimileTelephoneNumber
+ShibMapAttribute urn:mace:dir:attribute-def:postalAddress Shib-LDAP-postalAddress postalAddress
+ShibMapAttribute urn:mace:dir:attribute-def:givenName Shib-LDAP-givenName givenName
+ShibMapAttribute urn:mace:dir:attribute-def:homePhone Shib-LDAP-homePhone homePhone
+ShibMapAttribute urn:mace:dir:attribute-def:homePostalAddress Shib-LDAP-homePostalAddress homePostalAddress
+ShibMapAttribute urn:mace:dir:attribute-def:mail Shib-LDAP-mail mail
+ShibMapAttribute urn:mace:dir:attribute-def:mobile Shib-LDAP-mobile mobile
+ShibMapAttribute urn:mace:dir:attribute-def:preferredLanguage Shib-LDAP-preferredLanguage preferredLanguage
+#
+ShibMapAttribute urn:mace:dir:attribute-def:eduPersonPrincipalName Shib-EP-PrincipalName eppn
+ShibMapAttribute urn:mace:dir:attribute-def:eduPersonAffiliation Shib-EP-Affiliation affiliation
+ShibMapAttribute urn:mace:dir:attribute-def:eduPersonScopedAffiliation Shib-EP-ScopedAffiliation scopedAffiliation
+ShibMapAttribute urn:mace:dir:attribute-def:eduPersonEntitlement Shib-EP-Entitlement entitlement
+ShibMapAttribute urn:mace:dir:attribute-def:eduPersonOrgDN Shib-EP-OrgDN orgDN
+ShibMapAttribute urn:mace:dir:attribute-def:eduPersonOrgUnitDN Shib-EP-OrgUnitDN orgUnitDN
+#
+ShibMapAttribute urn:mace:switch.ch:attribute-def:swissEduPersonUniqueID Shib-SwissEP-UniqueID uniqueID
+ShibMapAttribute urn:mace:switch.ch:attribute-def:swissEduPersonDateOfBirth Shib-SwissEP-DateOfBirth dateOfBirth
+ShibMapAttribute urn:mace:switch.ch:attribute-def:swissEduPersonGender Shib-SwissEP-Gender gender
+ShibMapAttribute urn:mace:switch.ch:attribute-def:swissEduPersonHomeOrganization Shib-SwissEP-HomeOrganization homeOrganization
+ShibMapAttribute urn:mace:switch.ch:attribute-def:swissEduPersonHomeOrganizationType Shib-SwissEP-HomeOrganizationType homeOrganizationType
+ShibMapAttribute urn:mace:switch.ch:attribute-def:swissEduPersonStudyBranch1 Shib-SwissEP-StudyBranch1 studyBranch1
+ShibMapAttribute urn:mace:switch.ch:attribute-def:swissEduPersonStudyBranch2 Shib-SwissEP-StudyBranch2 studyBranch2
+ShibMapAttribute urn:mace:switch.ch:attribute-def:swissEduPersonStudyBranch3 Shib-SwissEP-StudyBranch3 studyBranch3
+ShibMapAttribute urn:mace:switch.ch:attribute-def:swissEduPersonStudyLevel Shib-SwissEP-StudyLevel studyLevel
+ShibMapAttribute urn:mace:switch.ch:attribute-def:swissEduPersonStaffCategory Shib-SwissEP-StaffCategory staffCategory
+
+*/
+
+?> \ No newline at end of file
diff --git a/inc/simplesamlphp/attributemap/twitter2name.php b/inc/simplesamlphp/attributemap/twitter2name.php
new file mode 100644
index 0000000..605b561
--- /dev/null
+++ b/inc/simplesamlphp/attributemap/twitter2name.php
@@ -0,0 +1,17 @@
+<?php
+$attributemap = array(
+
+ // Generated Twitter Attributes
+ 'twitter_screen_n_realm' => 'eduPersonPrincipalName', // screen_name@twitter.com
+ //'twitter_at_screen_name' => 'eduPersonPrincipalName', // legacy @twitter format
+ 'twitter_targetedID' => 'eduPersonTargetedID', // http://twitter.com!id_str
+
+ // Attributes Returned by Twitter
+ 'twitter.screen_name' => 'uid', // equivalent to twitter username without leading @
+ //'twitter.id_str' => 'uid', // persistent numeric twitter user id
+ 'twitter.name' => 'displayName',
+ 'twitter.url' => 'labeledURI',
+ 'twitter.lang' => 'preferredLanguage',
+ //'twitter.profile_image_url' => 'jpegPhoto',
+ 'twitter.description' => 'description',
+);
diff --git a/inc/simplesamlphp/attributemap/urn2name.php b/inc/simplesamlphp/attributemap/urn2name.php
new file mode 100644
index 0000000..1933b10
--- /dev/null
+++ b/inc/simplesamlphp/attributemap/urn2name.php
@@ -0,0 +1,163 @@
+<?php
+$attributemap = array(
+ 'urn:mace:dir:attribute-def:aRecord' => 'aRecord',
+ 'urn:mace:dir:attribute-def:aliasedEntryName' => 'aliasedEntryName',
+ 'urn:mace:dir:attribute-def:aliasedObjectName' => 'aliasedObjectName',
+ 'urn:mace:dir:attribute-def:associatedDomain' => 'associatedDomain',
+ 'urn:mace:dir:attribute-def:associatedName' => 'associatedName',
+ 'urn:mace:dir:attribute-def:audio' => 'audio',
+ 'urn:mace:dir:attribute-def:authorityRevocationList' => 'authorityRevocationList',
+ 'urn:mace:dir:attribute-def:buildingName' => 'buildingName',
+ 'urn:mace:dir:attribute-def:businessCategory' => 'businessCategory',
+ 'urn:mace:dir:attribute-def:c' => 'c',
+ 'urn:mace:dir:attribute-def:cACertificate' => 'cACertificate',
+ 'urn:mace:dir:attribute-def:cNAMERecord' => 'cNAMERecord',
+ 'urn:mace:dir:attribute-def:carLicense' => 'carLicense',
+ 'urn:mace:dir:attribute-def:certificateRevocationList' => 'certificateRevocationList',
+ 'urn:mace:dir:attribute-def:cn' => 'cn',
+ 'urn:mace:dir:attribute-def:co' => 'co',
+ 'urn:mace:dir:attribute-def:commonName' => 'commonName',
+ 'urn:mace:dir:attribute-def:countryName' => 'countryName',
+ 'urn:mace:dir:attribute-def:crossCertificatePair' => 'crossCertificatePair',
+ 'urn:mace:dir:attribute-def:dITRedirect' => 'dITRedirect',
+ 'urn:mace:dir:attribute-def:dSAQuality' => 'dSAQuality',
+ 'urn:mace:dir:attribute-def:dc' => 'dc',
+ 'urn:mace:dir:attribute-def:deltaRevocationList' => 'deltaRevocationList',
+ 'urn:mace:dir:attribute-def:departmentNumber' => 'departmentNumber',
+ 'urn:mace:dir:attribute-def:description' => 'description',
+ 'urn:mace:dir:attribute-def:destinationIndicator' => 'destinationIndicator',
+ 'urn:mace:dir:attribute-def:displayName' => 'displayName',
+ 'urn:mace:dir:attribute-def:distinguishedName' => 'distinguishedName',
+ 'urn:mace:dir:attribute-def:dmdName' => 'dmdName',
+ 'urn:mace:dir:attribute-def:dnQualifier' => 'dnQualifier',
+ 'urn:mace:dir:attribute-def:documentAuthor' => 'documentAuthor',
+ 'urn:mace:dir:attribute-def:documentIdentifier' => 'documentIdentifier',
+ 'urn:mace:dir:attribute-def:documentLocation' => 'documentLocation',
+ 'urn:mace:dir:attribute-def:documentPublisher' => 'documentPublisher',
+ 'urn:mace:dir:attribute-def:documentTitle' => 'documentTitle',
+ 'urn:mace:dir:attribute-def:documentVersion' => 'documentVersion',
+ 'urn:mace:dir:attribute-def:domainComponent' => 'domainComponent',
+ 'urn:mace:dir:attribute-def:drink' => 'drink',
+ 'urn:mace:dir:attribute-def:eduOrgHomePageURI' => 'eduOrgHomePageURI',
+ 'urn:mace:dir:attribute-def:eduOrgIdentityAuthNPolicyURI' => 'eduOrgIdentityAuthNPolicyURI',
+ 'urn:mace:dir:attribute-def:eduOrgLegalName' => 'eduOrgLegalName',
+ 'urn:mace:dir:attribute-def:eduOrgSuperiorURI' => 'eduOrgSuperiorURI',
+ 'urn:mace:dir:attribute-def:eduOrgWhitePagesURI' => 'eduOrgWhitePagesURI',
+ 'urn:mace:dir:attribute-def:eduPersonAffiliation' => 'eduPersonAffiliation',
+ 'urn:mace:dir:attribute-def:eduPersonEntitlement' => 'eduPersonEntitlement',
+ 'urn:mace:dir:attribute-def:eduPersonNickname' => 'eduPersonNickname',
+ 'urn:mace:dir:attribute-def:eduPersonOrgDN' => 'eduPersonOrgDN',
+ 'urn:mace:dir:attribute-def:eduPersonOrgUnitDN' => 'eduPersonOrgUnitDN',
+ 'urn:mace:dir:attribute-def:eduPersonPrimaryAffiliation' => 'eduPersonPrimaryAffiliation',
+ 'urn:mace:dir:attribute-def:eduPersonPrimaryOrgUnitDN' => 'eduPersonPrimaryOrgUnitDN',
+ 'urn:mace:dir:attribute-def:eduPersonPrincipalName' => 'eduPersonPrincipalName',
+ 'urn:mace:dir:attribute-def:eduPersonScopedAffiliation' => 'eduPersonScopedAffiliation',
+ 'urn:mace:dir:attribute-def:eduPersonTargetedID' => 'eduPersonTargetedID',
+ 'urn:mace:dir:attribute-def:email' => 'email',
+ 'urn:mace:dir:attribute-def:emailAddress' => 'emailAddress',
+ 'urn:mace:dir:attribute-def:employeeNumber' => 'employeeNumber',
+ 'urn:mace:dir:attribute-def:employeeType' => 'employeeType',
+ 'urn:mace:dir:attribute-def:enhancedSearchGuide' => 'enhancedSearchGuide',
+ 'urn:mace:dir:attribute-def:facsimileTelephoneNumber' => 'facsimileTelephoneNumber',
+ 'urn:mace:dir:attribute-def:favouriteDrink' => 'favouriteDrink',
+ 'urn:mace:dir:attribute-def:fax' => 'fax',
+ 'urn:mace:dir:attribute-def:federationFeideSchemaVersion' => 'federationFeideSchemaVersion',
+ 'urn:mace:dir:attribute-def:friendlyCountryName' => 'friendlyCountryName',
+ 'urn:mace:dir:attribute-def:generationQualifier' => 'generationQualifier',
+ 'urn:mace:dir:attribute-def:givenName' => 'givenName',
+ 'urn:mace:dir:attribute-def:gn' => 'gn',
+ 'urn:mace:dir:attribute-def:homePhone' => 'homePhone',
+ 'urn:mace:dir:attribute-def:homePostalAddress' => 'homePostalAddress',
+ 'urn:mace:dir:attribute-def:homeTelephoneNumber' => 'homeTelephoneNumber',
+ 'urn:mace:dir:attribute-def:host' => 'host',
+ 'urn:mace:dir:attribute-def:houseIdentifier' => 'houseIdentifier',
+ 'urn:mace:dir:attribute-def:info' => 'info',
+ 'urn:mace:dir:attribute-def:initials' => 'initials',
+ 'urn:mace:dir:attribute-def:internationaliSDNNumber' => 'internationaliSDNNumber',
+ 'urn:mace:dir:attribute-def:janetMailbox' => 'janetMailbox',
+ 'urn:mace:dir:attribute-def:jpegPhoto' => 'jpegPhoto',
+ 'urn:mace:dir:attribute-def:knowledgeInformation' => 'knowledgeInformation',
+ 'urn:mace:dir:attribute-def:l' => 'l',
+ 'urn:mace:dir:attribute-def:labeledURI' => 'labeledURI',
+ 'urn:mace:dir:attribute-def:localityName' => 'localityName',
+ 'urn:mace:dir:attribute-def:mDRecord' => 'mDRecord',
+ 'urn:mace:dir:attribute-def:mXRecord' => 'mXRecord',
+ 'urn:mace:dir:attribute-def:mail' => 'mail',
+ 'urn:mace:dir:attribute-def:mailPreferenceOption' => 'mailPreferenceOption',
+ 'urn:mace:dir:attribute-def:manager' => 'manager',
+ 'urn:mace:dir:attribute-def:member' => 'member',
+ 'urn:mace:dir:attribute-def:mobile' => 'mobile',
+ 'urn:mace:dir:attribute-def:mobileTelephoneNumber' => 'mobileTelephoneNumber',
+ 'urn:mace:dir:attribute-def:nSRecord' => 'nSRecord',
+ 'urn:mace:dir:attribute-def:name' => 'name',
+ 'urn:mace:dir:attribute-def:norEduOrgAcronym' => 'norEduOrgAcronym',
+ 'urn:mace:dir:attribute-def:norEduOrgNIN' => 'norEduOrgNIN',
+ 'urn:mace:dir:attribute-def:norEduOrgSchemaVersion' => 'norEduOrgSchemaVersion',
+ 'urn:mace:dir:attribute-def:norEduOrgUniqueIdentifier' => 'norEduOrgUniqueIdentifier',
+ 'urn:mace:dir:attribute-def:norEduOrgUniqueNumber' => 'norEduOrgUniqueNumber',
+ 'urn:mace:dir:attribute-def:norEduOrgUnitUniqueIdentifier' => 'norEduOrgUnitUniqueIdentifier',
+ 'urn:mace:dir:attribute-def:norEduOrgUnitUniqueNumber' => 'norEduOrgUnitUniqueNumber',
+ 'urn:mace:dir:attribute-def:norEduPersonBirthDate' => 'norEduPersonBirthDate',
+ 'urn:mace:dir:attribute-def:norEduPersonLIN' => 'norEduPersonLIN',
+ 'urn:mace:dir:attribute-def:norEduPersonNIN' => 'norEduPersonNIN',
+ 'urn:mace:dir:attribute-def:o' => 'o',
+ 'urn:mace:dir:attribute-def:objectClass' => 'objectClass',
+ 'urn:mace:dir:attribute-def:organizationName' => 'organizationName',
+ 'urn:mace:dir:attribute-def:organizationalStatus' => 'organizationalStatus',
+ 'urn:mace:dir:attribute-def:organizationalUnitName' => 'organizationalUnitName',
+ 'urn:mace:dir:attribute-def:otherMailbox' => 'otherMailbox',
+ 'urn:mace:dir:attribute-def:ou' => 'ou',
+ 'urn:mace:dir:attribute-def:owner' => 'owner',
+ 'urn:mace:dir:attribute-def:pager' => 'pager',
+ 'urn:mace:dir:attribute-def:pagerTelephoneNumber' => 'pagerTelephoneNumber',
+ 'urn:mace:dir:attribute-def:personalSignature' => 'personalSignature',
+ 'urn:mace:dir:attribute-def:personalTitle' => 'personalTitle',
+ 'urn:mace:dir:attribute-def:photo' => 'photo',
+ 'urn:mace:dir:attribute-def:physicalDeliveryOfficeName' => 'physicalDeliveryOfficeName',
+ 'urn:mace:dir:attribute-def:pkcs9email' => 'pkcs9email',
+ 'urn:mace:dir:attribute-def:postOfficeBox' => 'postOfficeBox',
+ 'urn:mace:dir:attribute-def:postalAddress' => 'postalAddress',
+ 'urn:mace:dir:attribute-def:postalCode' => 'postalCode',
+ 'urn:mace:dir:attribute-def:preferredDeliveryMethod' => 'preferredDeliveryMethod',
+ 'urn:mace:dir:attribute-def:preferredLanguage' => 'preferredLanguage',
+ 'urn:mace:dir:attribute-def:presentationAddress' => 'presentationAddress',
+ 'urn:mace:dir:attribute-def:protocolInformation' => 'protocolInformation',
+ 'urn:mace:dir:attribute-def:pseudonym' => 'pseudonym',
+ 'urn:mace:dir:attribute-def:registeredAddress' => 'registeredAddress',
+ 'urn:mace:dir:attribute-def:rfc822Mailbox' => 'rfc822Mailbox',
+ 'urn:mace:dir:attribute-def:roleOccupant' => 'roleOccupant',
+ 'urn:mace:dir:attribute-def:roomNumber' => 'roomNumber',
+ 'urn:mace:dir:attribute-def:sOARecord' => 'sOARecord',
+ 'urn:mace:dir:attribute-def:searchGuide' => 'searchGuide',
+ 'urn:mace:dir:attribute-def:secretary' => 'secretary',
+ 'urn:mace:dir:attribute-def:seeAlso' => 'seeAlso',
+ 'urn:mace:dir:attribute-def:serialNumber' => 'serialNumber',
+ 'urn:mace:dir:attribute-def:singleLevelQuality' => 'singleLevelQuality',
+ 'urn:mace:dir:attribute-def:sn' => 'sn',
+ 'urn:mace:dir:attribute-def:st' => 'st',
+ 'urn:mace:dir:attribute-def:stateOrProvinceName' => 'stateOrProvinceName',
+ 'urn:mace:dir:attribute-def:street' => 'street',
+ 'urn:mace:dir:attribute-def:streetAddress' => 'streetAddress',
+ 'urn:mace:dir:attribute-def:subtreeMaximumQuality' => 'subtreeMaximumQuality',
+ 'urn:mace:dir:attribute-def:subtreeMinimumQuality' => 'subtreeMinimumQuality',
+ 'urn:mace:dir:attribute-def:supportedAlgorithms' => 'supportedAlgorithms',
+ 'urn:mace:dir:attribute-def:supportedApplicationContext' => 'supportedApplicationContext',
+ 'urn:mace:dir:attribute-def:surname' => 'surname',
+ 'urn:mace:dir:attribute-def:telephoneNumber' => 'telephoneNumber',
+ 'urn:mace:dir:attribute-def:teletexTerminalIdentifier' => 'teletexTerminalIdentifier',
+ 'urn:mace:dir:attribute-def:telexNumber' => 'telexNumber',
+ 'urn:mace:dir:attribute-def:textEncodedORAddress' => 'textEncodedORAddress',
+ 'urn:mace:dir:attribute-def:title' => 'title',
+ 'urn:mace:dir:attribute-def:uid' => 'uid',
+ 'urn:mace:dir:attribute-def:uniqueIdentifier' => 'uniqueIdentifier',
+ 'urn:mace:dir:attribute-def:uniqueMember' => 'uniqueMember',
+ 'urn:mace:dir:attribute-def:userCertificate' => 'userCertificate',
+ 'urn:mace:dir:attribute-def:userClass' => 'userClass',
+ 'urn:mace:dir:attribute-def:userPKCS12' => 'userPKCS12',
+ 'urn:mace:dir:attribute-def:userPassword' => 'userPassword',
+ 'urn:mace:dir:attribute-def:userSMIMECertificate' => 'userSMIMECertificate',
+ 'urn:mace:dir:attribute-def:userid' => 'userid',
+ 'urn:mace:dir:attribute-def:x121Address' => 'x121Address',
+ 'urn:mace:dir:attribute-def:x500UniqueIdentifier' => 'x500UniqueIdentifier',
+);
+?> \ No newline at end of file
diff --git a/inc/simplesamlphp/attributemap/urn2oid.php b/inc/simplesamlphp/attributemap/urn2oid.php
new file mode 100644
index 0000000..7204824
--- /dev/null
+++ b/inc/simplesamlphp/attributemap/urn2oid.php
@@ -0,0 +1,163 @@
+<?php
+$attributemap = array(
+ 'urn:mace:dir:attribute-def:aRecord' => 'urn:oid:0.9.2342.19200300.100.1.26',
+ 'urn:mace:dir:attribute-def:aliasedEntryName' => 'urn:oid:2.5.4.1',
+ 'urn:mace:dir:attribute-def:aliasedObjectName' => 'urn:oid:2.5.4.1',
+ 'urn:mace:dir:attribute-def:associatedDomain' => 'urn:oid:0.9.2342.19200300.100.1.37',
+ 'urn:mace:dir:attribute-def:associatedName' => 'urn:oid:0.9.2342.19200300.100.1.38',
+ 'urn:mace:dir:attribute-def:audio' => 'urn:oid:0.9.2342.19200300.100.1.55',
+ 'urn:mace:dir:attribute-def:authorityRevocationList' => 'urn:oid:2.5.4.38',
+ 'urn:mace:dir:attribute-def:buildingName' => 'urn:oid:0.9.2342.19200300.100.1.48',
+ 'urn:mace:dir:attribute-def:businessCategory' => 'urn:oid:2.5.4.15',
+ 'urn:mace:dir:attribute-def:c' => 'urn:oid:2.5.4.6',
+ 'urn:mace:dir:attribute-def:cACertificate' => 'urn:oid:2.5.4.37',
+ 'urn:mace:dir:attribute-def:cNAMERecord' => 'urn:oid:0.9.2342.19200300.100.1.31',
+ 'urn:mace:dir:attribute-def:carLicense' => 'urn:oid:2.16.840.1.113730.3.1.1',
+ 'urn:mace:dir:attribute-def:certificateRevocationList' => 'urn:oid:2.5.4.39',
+ 'urn:mace:dir:attribute-def:cn' => 'urn:oid:2.5.4.3',
+ 'urn:mace:dir:attribute-def:co' => 'urn:oid:0.9.2342.19200300.100.1.43',
+ 'urn:mace:dir:attribute-def:commonName' => 'urn:oid:2.5.4.3',
+ 'urn:mace:dir:attribute-def:countryName' => 'urn:oid:2.5.4.6',
+ 'urn:mace:dir:attribute-def:crossCertificatePair' => 'urn:oid:2.5.4.40',
+ 'urn:mace:dir:attribute-def:dITRedirect' => 'urn:oid:0.9.2342.19200300.100.1.54',
+ 'urn:mace:dir:attribute-def:dSAQuality' => 'urn:oid:0.9.2342.19200300.100.1.49',
+ 'urn:mace:dir:attribute-def:dc' => 'urn:oid:0.9.2342.19200300.100.1.25',
+ 'urn:mace:dir:attribute-def:deltaRevocationList' => 'urn:oid:2.5.4.53',
+ 'urn:mace:dir:attribute-def:departmentNumber' => 'urn:oid:2.16.840.1.113730.3.1.2',
+ 'urn:mace:dir:attribute-def:description' => 'urn:oid:2.5.4.13',
+ 'urn:mace:dir:attribute-def:destinationIndicator' => 'urn:oid:2.5.4.27',
+ 'urn:mace:dir:attribute-def:displayName' => 'urn:oid:2.16.840.1.113730.3.1.241',
+ 'urn:mace:dir:attribute-def:distinguishedName' => 'urn:oid:2.5.4.49',
+ 'urn:mace:dir:attribute-def:dmdName' => 'urn:oid:2.5.4.54',
+ 'urn:mace:dir:attribute-def:dnQualifier' => 'urn:oid:2.5.4.46',
+ 'urn:mace:dir:attribute-def:documentAuthor' => 'urn:oid:0.9.2342.19200300.100.1.14',
+ 'urn:mace:dir:attribute-def:documentIdentifier' => 'urn:oid:0.9.2342.19200300.100.1.11',
+ 'urn:mace:dir:attribute-def:documentLocation' => 'urn:oid:0.9.2342.19200300.100.1.15',
+ 'urn:mace:dir:attribute-def:documentPublisher' => 'urn:oid:0.9.2342.19200300.100.1.56',
+ 'urn:mace:dir:attribute-def:documentTitle' => 'urn:oid:0.9.2342.19200300.100.1.12',
+ 'urn:mace:dir:attribute-def:documentVersion' => 'urn:oid:0.9.2342.19200300.100.1.13',
+ 'urn:mace:dir:attribute-def:domainComponent' => 'urn:oid:0.9.2342.19200300.100.1.25',
+ 'urn:mace:dir:attribute-def:drink' => 'urn:oid:0.9.2342.19200300.100.1.5',
+ 'urn:mace:dir:attribute-def:eduOrgHomePageURI' => 'urn:oid:1.3.6.1.4.1.5923.1.2.1.2',
+ 'urn:mace:dir:attribute-def:eduOrgIdentityAuthNPolicyURI' => 'urn:oid:1.3.6.1.4.1.5923.1.2.1.3',
+ 'urn:mace:dir:attribute-def:eduOrgLegalName' => 'urn:oid:1.3.6.1.4.1.5923.1.2.1.4',
+ 'urn:mace:dir:attribute-def:eduOrgSuperiorURI' => 'urn:oid:1.3.6.1.4.1.5923.1.2.1.5',
+ 'urn:mace:dir:attribute-def:eduOrgWhitePagesURI' => 'urn:oid:1.3.6.1.4.1.5923.1.2.1.6',
+ 'urn:mace:dir:attribute-def:eduPersonAffiliation' => 'urn:oid:1.3.6.1.4.1.5923.1.1.1.1',
+ 'urn:mace:dir:attribute-def:eduPersonEntitlement' => 'urn:oid:1.3.6.1.4.1.5923.1.1.1.7',
+ 'urn:mace:dir:attribute-def:eduPersonNickname' => 'urn:oid:1.3.6.1.4.1.5923.1.1.1.2',
+ 'urn:mace:dir:attribute-def:eduPersonOrgDN' => 'urn:oid:1.3.6.1.4.1.5923.1.1.1.3',
+ 'urn:mace:dir:attribute-def:eduPersonOrgUnitDN' => 'urn:oid:1.3.6.1.4.1.5923.1.1.1.4',
+ 'urn:mace:dir:attribute-def:eduPersonPrimaryAffiliation' => 'urn:oid:1.3.6.1.4.1.5923.1.1.1.5',
+ 'urn:mace:dir:attribute-def:eduPersonPrimaryOrgUnitDN' => 'urn:oid:1.3.6.1.4.1.5923.1.1.1.8',
+ 'urn:mace:dir:attribute-def:eduPersonPrincipalName' => 'urn:oid:1.3.6.1.4.1.5923.1.1.1.6',
+ 'urn:mace:dir:attribute-def:eduPersonScopedAffiliation' => 'urn:oid:1.3.6.1.4.1.5923.1.1.1.9',
+ 'urn:mace:dir:attribute-def:eduPersonTargetedID' => 'urn:oid:1.3.6.1.4.1.5923.1.1.1.10',
+ 'urn:mace:dir:attribute-def:email' => 'urn:oid:1.2.840.113549.1.9.1',
+ 'urn:mace:dir:attribute-def:emailAddress' => 'urn:oid:1.2.840.113549.1.9.1',
+ 'urn:mace:dir:attribute-def:employeeNumber' => 'urn:oid:2.16.840.1.113730.3.1.3',
+ 'urn:mace:dir:attribute-def:employeeType' => 'urn:oid:2.16.840.1.113730.3.1.4',
+ 'urn:mace:dir:attribute-def:enhancedSearchGuide' => 'urn:oid:2.5.4.47',
+ 'urn:mace:dir:attribute-def:facsimileTelephoneNumber' => 'urn:oid:2.5.4.23',
+ 'urn:mace:dir:attribute-def:favouriteDrink' => 'urn:oid:0.9.2342.19200300.100.1.5',
+ 'urn:mace:dir:attribute-def:fax' => 'urn:oid:2.5.4.23',
+ 'urn:mace:dir:attribute-def:federationFeideSchemaVersion' => 'urn:oid:1.3.6.1.4.1.2428.90.1.9',
+ 'urn:mace:dir:attribute-def:friendlyCountryName' => 'urn:oid:0.9.2342.19200300.100.1.43',
+ 'urn:mace:dir:attribute-def:generationQualifier' => 'urn:oid:2.5.4.44',
+ 'urn:mace:dir:attribute-def:givenName' => 'urn:oid:2.5.4.42',
+ 'urn:mace:dir:attribute-def:gn' => 'urn:oid:2.5.4.42',
+ 'urn:mace:dir:attribute-def:homePhone' => 'urn:oid:0.9.2342.19200300.100.1.20',
+ 'urn:mace:dir:attribute-def:homePostalAddress' => 'urn:oid:0.9.2342.19200300.100.1.39',
+ 'urn:mace:dir:attribute-def:homeTelephoneNumber' => 'urn:oid:0.9.2342.19200300.100.1.20',
+ 'urn:mace:dir:attribute-def:host' => 'urn:oid:0.9.2342.19200300.100.1.9',
+ 'urn:mace:dir:attribute-def:houseIdentifier' => 'urn:oid:2.5.4.51',
+ 'urn:mace:dir:attribute-def:info' => 'urn:oid:0.9.2342.19200300.100.1.4',
+ 'urn:mace:dir:attribute-def:initials' => 'urn:oid:2.5.4.43',
+ 'urn:mace:dir:attribute-def:internationaliSDNNumber' => 'urn:oid:2.5.4.25',
+ 'urn:mace:dir:attribute-def:janetMailbox' => 'urn:oid:0.9.2342.19200300.100.1.46',
+ 'urn:mace:dir:attribute-def:jpegPhoto' => 'urn:oid:0.9.2342.19200300.100.1.60',
+ 'urn:mace:dir:attribute-def:knowledgeInformation' => 'urn:oid:2.5.4.2',
+ 'urn:mace:dir:attribute-def:l' => 'urn:oid:2.5.4.7',
+ 'urn:mace:dir:attribute-def:labeledURI' => 'urn:oid:1.3.6.1.4.1.250.1.57',
+ 'urn:mace:dir:attribute-def:localityName' => 'urn:oid:2.5.4.7',
+ 'urn:mace:dir:attribute-def:mDRecord' => 'urn:oid:0.9.2342.19200300.100.1.27',
+ 'urn:mace:dir:attribute-def:mXRecord' => 'urn:oid:0.9.2342.19200300.100.1.28',
+ 'urn:mace:dir:attribute-def:mail' => 'urn:oid:0.9.2342.19200300.100.1.3',
+ 'urn:mace:dir:attribute-def:mailPreferenceOption' => 'urn:oid:0.9.2342.19200300.100.1.47',
+ 'urn:mace:dir:attribute-def:manager' => 'urn:oid:0.9.2342.19200300.100.1.10',
+ 'urn:mace:dir:attribute-def:member' => 'urn:oid:2.5.4.31',
+ 'urn:mace:dir:attribute-def:mobile' => 'urn:oid:0.9.2342.19200300.100.1.41',
+ 'urn:mace:dir:attribute-def:mobileTelephoneNumber' => 'urn:oid:0.9.2342.19200300.100.1.41',
+ 'urn:mace:dir:attribute-def:nSRecord' => 'urn:oid:0.9.2342.19200300.100.1.29',
+ 'urn:mace:dir:attribute-def:name' => 'urn:oid:2.5.4.41',
+ 'urn:mace:dir:attribute-def:norEduOrgAcronym' => 'urn:oid:1.3.6.1.4.1.2428.90.1.6',
+ 'urn:mace:dir:attribute-def:norEduOrgNIN' => 'urn:oid:1.3.6.1.4.1.2428.90.1.12',
+ 'urn:mace:dir:attribute-def:norEduOrgSchemaVersion' => 'urn:oid:1.3.6.1.4.1.2428.90.1.11',
+ 'urn:mace:dir:attribute-def:norEduOrgUniqueIdentifier' => 'urn:oid:1.3.6.1.4.1.2428.90.1.7',
+ 'urn:mace:dir:attribute-def:norEduOrgUniqueNumber' => 'urn:oid:1.3.6.1.4.1.2428.90.1.1',
+ 'urn:mace:dir:attribute-def:norEduOrgUnitUniqueIdentifier' => 'urn:oid:1.3.6.1.4.1.2428.90.1.8',
+ 'urn:mace:dir:attribute-def:norEduOrgUnitUniqueNumber' => 'urn:oid:1.3.6.1.4.1.2428.90.1.2',
+ 'urn:mace:dir:attribute-def:norEduPersonBirthDate' => 'urn:oid:1.3.6.1.4.1.2428.90.1.3',
+ 'urn:mace:dir:attribute-def:norEduPersonLIN' => 'urn:oid:1.3.6.1.4.1.2428.90.1.4',
+ 'urn:mace:dir:attribute-def:norEduPersonNIN' => 'urn:oid:1.3.6.1.4.1.2428.90.1.5',
+ 'urn:mace:dir:attribute-def:o' => 'urn:oid:2.5.4.10',
+ 'urn:mace:dir:attribute-def:objectClass' => 'urn:oid:2.5.4.0',
+ 'urn:mace:dir:attribute-def:organizationName' => 'urn:oid:2.5.4.10',
+ 'urn:mace:dir:attribute-def:organizationalStatus' => 'urn:oid:0.9.2342.19200300.100.1.45',
+ 'urn:mace:dir:attribute-def:organizationalUnitName' => 'urn:oid:2.5.4.11',
+ 'urn:mace:dir:attribute-def:otherMailbox' => 'urn:oid:0.9.2342.19200300.100.1.22',
+ 'urn:mace:dir:attribute-def:ou' => 'urn:oid:2.5.4.11',
+ 'urn:mace:dir:attribute-def:owner' => 'urn:oid:2.5.4.32',
+ 'urn:mace:dir:attribute-def:pager' => 'urn:oid:0.9.2342.19200300.100.1.42',
+ 'urn:mace:dir:attribute-def:pagerTelephoneNumber' => 'urn:oid:0.9.2342.19200300.100.1.42',
+ 'urn:mace:dir:attribute-def:personalSignature' => 'urn:oid:0.9.2342.19200300.100.1.53',
+ 'urn:mace:dir:attribute-def:personalTitle' => 'urn:oid:0.9.2342.19200300.100.1.40',
+ 'urn:mace:dir:attribute-def:photo' => 'urn:oid:0.9.2342.19200300.100.1.7',
+ 'urn:mace:dir:attribute-def:physicalDeliveryOfficeName' => 'urn:oid:2.5.4.19',
+ 'urn:mace:dir:attribute-def:pkcs9email' => 'urn:oid:1.2.840.113549.1.9.1',
+ 'urn:mace:dir:attribute-def:postOfficeBox' => 'urn:oid:2.5.4.18',
+ 'urn:mace:dir:attribute-def:postalAddress' => 'urn:oid:2.5.4.16',
+ 'urn:mace:dir:attribute-def:postalCode' => 'urn:oid:2.5.4.17',
+ 'urn:mace:dir:attribute-def:preferredDeliveryMethod' => 'urn:oid:2.5.4.28',
+ 'urn:mace:dir:attribute-def:preferredLanguage' => 'urn:oid:2.16.840.1.113730.3.1.39',
+ 'urn:mace:dir:attribute-def:presentationAddress' => 'urn:oid:2.5.4.29',
+ 'urn:mace:dir:attribute-def:protocolInformation' => 'urn:oid:2.5.4.48',
+ 'urn:mace:dir:attribute-def:pseudonym' => 'urn:oid:2.5.4.65',
+ 'urn:mace:dir:attribute-def:registeredAddress' => 'urn:oid:2.5.4.26',
+ 'urn:mace:dir:attribute-def:rfc822Mailbox' => 'urn:oid:0.9.2342.19200300.100.1.3',
+ 'urn:mace:dir:attribute-def:roleOccupant' => 'urn:oid:2.5.4.33',
+ 'urn:mace:dir:attribute-def:roomNumber' => 'urn:oid:0.9.2342.19200300.100.1.6',
+ 'urn:mace:dir:attribute-def:sOARecord' => 'urn:oid:0.9.2342.19200300.100.1.30',
+ 'urn:mace:dir:attribute-def:searchGuide' => 'urn:oid:2.5.4.14',
+ 'urn:mace:dir:attribute-def:secretary' => 'urn:oid:0.9.2342.19200300.100.1.21',
+ 'urn:mace:dir:attribute-def:seeAlso' => 'urn:oid:2.5.4.34',
+ 'urn:mace:dir:attribute-def:serialNumber' => 'urn:oid:2.5.4.5',
+ 'urn:mace:dir:attribute-def:singleLevelQuality' => 'urn:oid:0.9.2342.19200300.100.1.50',
+ 'urn:mace:dir:attribute-def:sn' => 'urn:oid:2.5.4.4',
+ 'urn:mace:dir:attribute-def:st' => 'urn:oid:2.5.4.8',
+ 'urn:mace:dir:attribute-def:stateOrProvinceName' => 'urn:oid:2.5.4.8',
+ 'urn:mace:dir:attribute-def:street' => 'urn:oid:2.5.4.9',
+ 'urn:mace:dir:attribute-def:streetAddress' => 'urn:oid:2.5.4.9',
+ 'urn:mace:dir:attribute-def:subtreeMaximumQuality' => 'urn:oid:0.9.2342.19200300.100.1.52',
+ 'urn:mace:dir:attribute-def:subtreeMinimumQuality' => 'urn:oid:0.9.2342.19200300.100.1.51',
+ 'urn:mace:dir:attribute-def:supportedAlgorithms' => 'urn:oid:2.5.4.52',
+ 'urn:mace:dir:attribute-def:supportedApplicationContext' => 'urn:oid:2.5.4.30',
+ 'urn:mace:dir:attribute-def:surname' => 'urn:oid:2.5.4.4',
+ 'urn:mace:dir:attribute-def:telephoneNumber' => 'urn:oid:2.5.4.20',
+ 'urn:mace:dir:attribute-def:teletexTerminalIdentifier' => 'urn:oid:2.5.4.22',
+ 'urn:mace:dir:attribute-def:telexNumber' => 'urn:oid:2.5.4.21',
+ 'urn:mace:dir:attribute-def:textEncodedORAddress' => 'urn:oid:0.9.2342.19200300.100.1.2',
+ 'urn:mace:dir:attribute-def:title' => 'urn:oid:2.5.4.12',
+ 'urn:mace:dir:attribute-def:uid' => 'urn:oid:0.9.2342.19200300.100.1.1',
+ 'urn:mace:dir:attribute-def:uniqueIdentifier' => 'urn:oid:0.9.2342.19200300.100.1.44',
+ 'urn:mace:dir:attribute-def:uniqueMember' => 'urn:oid:2.5.4.50',
+ 'urn:mace:dir:attribute-def:userCertificate' => 'urn:oid:2.5.4.36',
+ 'urn:mace:dir:attribute-def:userClass' => 'urn:oid:0.9.2342.19200300.100.1.8',
+ 'urn:mace:dir:attribute-def:userPKCS12' => 'urn:oid:2.16.840.1.113730.3.1.216',
+ 'urn:mace:dir:attribute-def:userPassword' => 'urn:oid:2.5.4.35',
+ 'urn:mace:dir:attribute-def:userSMIMECertificate' => 'urn:oid:2.16.840.1.113730.3.1.40',
+ 'urn:mace:dir:attribute-def:userid' => 'urn:oid:0.9.2342.19200300.100.1.1',
+ 'urn:mace:dir:attribute-def:x121Address' => 'urn:oid:2.5.4.24',
+ 'urn:mace:dir:attribute-def:x500UniqueIdentifier' => 'urn:oid:2.5.4.45',
+);
+?> \ No newline at end of file
diff --git a/inc/simplesamlphp/attributemap/windowslive2name.php b/inc/simplesamlphp/attributemap/windowslive2name.php
new file mode 100644
index 0000000..f43d0f9
--- /dev/null
+++ b/inc/simplesamlphp/attributemap/windowslive2name.php
@@ -0,0 +1,16 @@
+<?php
+$attributemap = array(
+
+ // Generated Windows Live ID Attributes
+ 'windowslive_user' => 'eduPersonPrincipalName', // uid @ windowslive.com
+ 'windowslive_targetedID' => 'eduPersonTargetedID', // http://windowslive.com!uid
+ 'windowslive_uid' => 'uid', // windows live id
+ 'windowslive_mail' => 'mail',
+
+ // Attributes Returned by Windows Live ID
+ 'windowslive.FirstName' => 'givenName',
+ 'windowslive.LastName' => 'sn',
+ 'windowslive.Location' => 'l',
+ //'windowslive.ThumbnailImageLink'=> 'jpegPhoto', // URL not image data
+
+);
diff --git a/inc/simplesamlphp/bin/build-release.sh b/inc/simplesamlphp/bin/build-release.sh
new file mode 100755
index 0000000..3e77c88
--- /dev/null
+++ b/inc/simplesamlphp/bin/build-release.sh
@@ -0,0 +1,34 @@
+#!/usr/bin/env bash
+
+set -e
+
+TAG=$1
+if ! shift; then
+ echo "$0: Missing required tag parameter." >&2
+ exit 1
+fi
+
+if [ -z "$TAG" ]; then
+ echo "$0: Empty tag parameter." >&2
+ exit 1
+fi
+
+cd /tmp
+
+REPOPATH="http://simplesamlphp.googlecode.com/svn/tags/$TAG/"
+
+if [ -a "$TAG" ]; then
+ echo "$0: Destination already exists: $TAG" >&2
+ exit 1
+fi
+
+umask 0022
+
+svn export "$REPOPATH"
+mkdir -p "$TAG/config" "$TAG/metadata"
+cp -rv "$TAG/config-templates/"* "$TAG/config/"
+cp -rv "$TAG/metadata-templates/"* "$TAG/metadata/"
+tar --owner 0 --group 0 -cvzf "$TAG.tar.gz" "$TAG"
+rm -rf "$TAG"
+
+echo "Created: /tmp/$TAG.tar.gz"
diff --git a/inc/simplesamlphp/bin/ldapattrschemaparser.pl b/inc/simplesamlphp/bin/ldapattrschemaparser.pl
new file mode 100755
index 0000000..11af4b5
--- /dev/null
+++ b/inc/simplesamlphp/bin/ldapattrschemaparser.pl
@@ -0,0 +1,102 @@
+#!/usr/bin/env perl
+use strict;
+use warnings;
+
+my @valid_formats = (
+ 'simple',
+ 'oid2name',
+ 'oid2urn',
+ 'name2oid',
+ 'name2urn',
+ 'urn2oid',
+ 'urn2name',
+ );
+
+my $format = shift;
+unless (defined($format)) {
+ print(STDERR "Usage: simpleparser.pl FORMAT <FILES>\n");
+ print(STDERR "Valid formats: ", join(' ', @valid_formats), "\n");
+ exit(1);
+}
+
+unless (grep { $_ eq $format } @valid_formats) {
+ print(STDERR "Invalid format: $format\n");
+ print(STDERR "Valid formats: ", join(' ', @valid_formats), "\n");
+ exit(1);
+}
+
+
+# Load file
+my $text = join('', <>);
+
+# Strip comments
+$text =~ s/#.*$//gm;
+
+my %oids;
+my %names;
+
+while ($text =~ m"attributetype\s*\(\s*([\d.]+).*?NAME\s+(?:'(.*?)'|(\(.*?\)))"sg) {
+ my $oid = $1;
+ my @attributes;
+ if (defined($2)) {
+ # Single attribute
+ @attributes = ($2);
+ } else {
+ # Multiple attributes
+ my $input = $3;
+ while ($input =~ m"'(.*?)'"gs) {
+ push(@attributes, $1);
+ }
+ }
+
+ foreach my $attrname (@attributes) {
+ $names{$attrname} = $oid;
+ }
+ $oids{$oid} = [ @attributes ];
+}
+
+
+if ($format eq 'simple') {
+ foreach my $oid (sort keys %oids) {
+ my @names = @{$oids{$oid}};
+ print "$oid ", join(' ', @names), "\n";
+ }
+ exit(0);
+}
+
+print "<?php\n";
+print "\$attributemap = array(\n";
+
+if ($format eq 'oid2name') {
+ foreach my $oid (sort keys %oids) {
+ my $name = $oids{$oid}->[0];
+ print "\t'urn:oid:$oid' => '$name',\n";
+ }
+} elsif ($format eq 'oid2urn') {
+ foreach my $oid (sort keys %oids) {
+ my $name = $oids{$oid}->[0];
+ print "\t'urn:oid:$oid' => 'urn:mace:dir:attribute-def:$name',\n";
+ }
+} elsif ($format eq 'name2oid') {
+ foreach my $name (sort keys %names) {
+ my $oid = $names{$name};
+ print "\t'$name' => 'urn:oid:$oid',\n";
+ }
+} elsif ($format eq 'name2urn') {
+ foreach my $name (sort keys %names) {
+ print "\t'$name' => 'urn:mace:dir:attribute-def:$name',\n";
+ }
+} elsif ($format eq 'urn2oid') {
+ foreach my $name (sort keys %names) {
+ my $oid = $names{$name};
+ print "\t'urn:mace:dir:attribute-def:$name' => 'urn:oid:$oid',\n";
+ }
+} elsif ($format eq 'urn2name') {
+ foreach my $name (sort keys %names) {
+ print "\t'urn:mace:dir:attribute-def:$name' => '$name',\n";
+ }
+}
+
+print ");\n";
+print "?>";
+
diff --git a/inc/simplesamlphp/bin/memcacheSync.php b/inc/simplesamlphp/bin/memcacheSync.php
new file mode 100755
index 0000000..26c9cf7
--- /dev/null
+++ b/inc/simplesamlphp/bin/memcacheSync.php
@@ -0,0 +1,165 @@
+#!/usr/bin/env php
+<?php
+
+
+/* Check that the memcache library is enabled. */
+if(!class_exists('Memcache')) {
+ echo("Error: the memcache library appears to be unavailable.\n");
+ echo("\n");
+ echo("This is most likely because PHP doesn't load it for the command line\n");
+ echo("version. You probably need to enable it somehow.\n");
+ echo("\n");
+ if(is_dir('/etc/php5/cli/conf.d')) {
+ echo("It is possible that running the following command as root will fix it:\n");
+ echo(" echo 'extension=memcache.so' >/etc/php5/cli/conf.d/memcache.ini\n");
+ }
+
+ exit(1);
+}
+
+/* This is the base directory of the simpleSAMLphp installation. */
+$baseDir = dirname(dirname(__FILE__));
+
+/* Add library autoloader. */
+require_once($baseDir . '/lib/_autoload.php');
+
+/* Initialize the configuration. */
+$configdir = $baseDir . '/config';
+SimpleSAML_Configuration::setConfigDir($configdir);
+
+/* Things we should warn the user about. */
+$warnServerDown = 0;
+$warnBigSlab = 0;
+
+/* We use the stats interface to determine which servers exists. */
+$stats = SimpleSAML_Memcache::getRawStats();
+
+$keys = array();
+foreach($stats as $group) {
+ foreach($group as $server => $state) {
+
+ if($state === FALSE) {
+ echo("WARNING: Server " . $server . " is down.\n");
+ $warnServerDown++;
+ continue;
+ }
+
+ $items = $state['curr_items'];
+ echo("Server " . $server . " has " . $items . " items.\n");
+ $serverKeys = getServerKeys($server);
+ $keys = array_merge($keys, $serverKeys);
+ }
+}
+
+echo("Total number of keys: " . count($keys) . "\n");
+$keys = array_unique($keys);
+echo("Total number of unique keys: " . count($keys) . "\n");
+
+echo("Starting synchronization.\n");
+
+$skipped = 0;
+$sync = 0;
+foreach($keys as $key) {
+ $res = SimpleSAML_Memcache::get($key);
+ if($res === NULL) {
+ $skipped += 1;
+ } else {
+ $sync += 1;
+ }
+}
+
+
+echo("Synchronization done.\n");
+echo($sync . " keys in sync.\n");
+if($skipped > 0) {
+ echo($skipped . " keys skipped.\n");
+ echo("Keys are skipped because they are either expired, or are of a type unknown\n");
+ echo("to simpleSAMLphp.\n");
+}
+
+if($warnServerDown > 0) {
+ echo("WARNING: " . $warnServerDown . " server(s) down. Not all servers are synchronized.\n");
+}
+
+if($warnBigSlab > 0) {
+ echo("WARNING: " . $warnBigSlab . " slab(s) may have contained more keys than we were told about.\n");
+}
+
+/**
+ * Fetch all keys available in an server.
+ *
+ * @param $server The server, as a string with <hostname>:<port>.
+ * @return An array with all the keys available on the server.
+ */
+function getServerKeys($server) {
+ $server = explode(':', $server);
+ $host = $server[0];
+ $port = (int)$server[1];
+
+ echo("Connecting to: " . $host . ":" . $port . "\n");
+ $socket = fsockopen($host, $port);
+ echo("Connected. Finding keys.\n");
+
+ if(fwrite($socket, "stats slabs\r\n") === FALSE) {
+ echo("Error requesting slab dump from server.\n");
+ exit(1);
+ }
+
+ /* Read list of slabs. */
+ $slabs = array();
+ while( ($line = fgets($socket)) !== FALSE) {
+ $line = rtrim($line);
+ if($line === 'END') {
+ break;
+ }
+
+ if(preg_match('/^STAT (\d+):/', $line, $matches)) {
+ $slab = (int)$matches[1];
+ if(!in_array($slab, $slabs, TRUE)) {
+ $slabs[] = $slab;
+ }
+ }
+ }
+
+ /* Dump keys in slabs. */
+ $keys = array();
+ foreach($slabs as $slab) {
+
+ if(fwrite($socket, "stats cachedump " . $slab . " 1000000\r\n") === FALSE) {
+ echo("Error requesting cache dump from server.\n");
+ exit(1);
+ }
+
+ /* We keep track of the result size, to be able to warn the user if it is
+ * so big that keys may have been lost.
+ */
+ $resultSize = 0;
+
+ while( ($line = fgets($socket)) !== FALSE) {
+ $resultSize += strlen($line);
+
+ $line = rtrim($line);
+ if($line === 'END') {
+ break;
+ }
+
+ if(preg_match('/^ITEM (.*) \[\d+ b; \d+ s\]/', $line, $matches)) {
+ $keys[] = $matches[1];
+ } else {
+ echo("Unknown result from cache dump: " . $line . "\n");
+ }
+ }
+ if($resultSize > 1900000 || count($keys) >= 1000000) {
+ echo("WARNING: Slab " . $slab . " on server " . $host . ":" . $port .
+ " may have contained more keys than we were told about.\n");
+ $GLOBALS['warnBigSlab'] += 1;
+ }
+ }
+
+ echo("Found " . count($keys) . " key(s).\n");
+ fclose($socket);
+
+ return $keys;
+}
+
+?> \ No newline at end of file
diff --git a/inc/simplesamlphp/bin/pack.php b/inc/simplesamlphp/bin/pack.php
new file mode 100755
index 0000000..f69cafb
--- /dev/null
+++ b/inc/simplesamlphp/bin/pack.php
@@ -0,0 +1,77 @@
+#!/usr/bin/env php
+<?php
+
+/* This is the base directory of the simpleSAMLphp installation. */
+$baseDir = dirname(dirname(__FILE__));
+
+/* Add library autoloader. */
+require_once($baseDir . '/lib/_autoload.php');
+
+if (count($argv) < 1) {
+ echo "Wrong number of parameters. Run: " . $argv[0] . " [install,show] url [branch]\n"; exit;
+}
+
+// Needed in order to make session_start to be called before output is printed.
+$session = SimpleSAML_Session::getInstance();
+$config = SimpleSAML_Configuration::getConfig('config.php');
+
+
+$action = $argv[1];
+
+
+function getModinfo() {
+ global $argv;
+ if (count($argv) < 2)
+ throw new Exception('Missing second parameter: URL/ID');
+ return sspmod_core_ModuleDefinition::load($argv[2]);
+}
+
+function getBranch() {
+ global $argv;
+ if (isset($argv[3])) return $argv[3];
+ return NULL;
+}
+
+switch($action) {
+ case 'install':
+ $mod = getModinfo();
+ $installer = new sspmod_core_ModuleInstaller($mod);
+ $installer->install(getBranch());
+ break;
+
+ case 'remove':
+ $mod = getModinfo();
+ $installer = new sspmod_core_ModuleInstaller($mod);
+ $installer->remove(getBranch());
+ break;
+
+ case 'upgrade':
+ $mod = getModinfo();
+ $installer = new sspmod_core_ModuleInstaller($mod);
+ $installer->upgrade(getBranch());
+ break;
+
+ case 'upgrade-all' :
+ $mdir = scandir($config->getBaseDir() . 'modules/');
+ foreach($mdir AS $md) {
+ if (!sspmod_core_ModuleDefinition::validId($md)) continue;
+ if (!sspmod_core_ModuleDefinition::isDefined($md)) continue;
+ $moduledef = sspmod_core_ModuleDefinition::load($md, 'remote');
+ $installer = new sspmod_core_ModuleInstaller($moduledef);
+
+ if ($moduledef->updateExists() || $moduledef->alwaysUpdate()) {
+ echo "Upgrading [" . $md . "]\n";
+ $installer->upgrade();
+ } else {
+ echo "No updates available for [" . $md . "]\n";
+ }
+ }
+ break;
+
+ default:
+ throw new Exception('Unknown action [' . $action . ']');
+}
+
+
+
+
diff --git a/inc/simplesamlphp/bin/pwgen.php b/inc/simplesamlphp/bin/pwgen.php
new file mode 100755
index 0000000..31a8eb9
--- /dev/null
+++ b/inc/simplesamlphp/bin/pwgen.php
@@ -0,0 +1,48 @@
+#!/usr/bin/env php
+<?php
+/*
+ * $Id$
+ * Interactive script to generate password hashes.
+ *
+ */
+
+
+/* This is the base directory of the simpleSAMLphp installation. */
+$baseDir = dirname(dirname(__FILE__));
+
+/* Add library autoloader. */
+require_once($baseDir . '/lib/_autoload.php');
+
+
+echo "Enter password: ";
+$password = trim(fgets(STDIN));
+
+if(empty($password)) {
+ echo "Need at least one character for a password\n";
+ exit(1);
+}
+
+$table = '';
+foreach (array_chunk(hash_algos(), 6) as $chunk) {
+ foreach($chunk as $algo) {
+ $table .= sprintf('%-13s', $algo);
+ }
+ $table .= "\n";
+}
+
+echo "The following hashing algorithms are available:\n" . $table . "\n";
+echo "Which one do you want? [sha256] ";
+$algo = trim(fgets(STDIN));
+if(empty($algo)) {
+ $algo = 'sha256';
+}
+
+if(!in_array(strtolower($algo), hash_algos())) {
+ echo "Hashing algorithm '$algo' is not supported\n";
+ exit(1);
+}
+
+echo "Do you want to use a salt? (yes/no) [yes] ";
+$s = (trim(fgets(STDIN)) == 'no') ? '' : 'S';
+
+echo "\n " . SimpleSAML_Utils_Crypto::pwHash($password, strtoupper( $s . $algo ) ). "\n\n";
diff --git a/inc/simplesamlphp/bin/translation.php b/inc/simplesamlphp/bin/translation.php
new file mode 100755
index 0000000..4359d1a
--- /dev/null
+++ b/inc/simplesamlphp/bin/translation.php
@@ -0,0 +1,192 @@
+#!/usr/bin/env php
+<?php
+
+/* This is the base directory of the simpleSAMLphp installation. */
+$baseDir = dirname(dirname(__FILE__));
+
+/* Add library autoloader. */
+require_once($baseDir . '/lib/_autoload.php');
+
+if (count($argv) !== 3) {
+ echo "Wrong number of parameters. Run: " . $argv[0] . " [pulldef,push,pull] filename\n"; exit;
+}
+
+$action = $argv[1];
+$file = $argv[2];
+
+$translationconfig = SimpleSAML_Configuration::getConfig('translation.php');
+
+$application = $translationconfig->getString('application', 'simplesamlphp');
+$base = $translationconfig->getString('baseurl') . '/module.php/translationportal/';
+
+if (!preg_match('/^(.*?)(?:\.(definition|translation))?\.(json|php)/', $file, $match))
+ throw new Exception('Illlegal file name. Must end on (definition|translation).json');
+$fileWithoutExt = $match[1];
+if (!empty($match[2])) {
+ $type = $match[2];
+} else {
+ $type = 'definition';
+}
+
+$basefile = basename($fileWithoutExt);
+
+
+echo 'Action: [' . $action. ']' . "\n";
+echo 'Application: [' . $application. ']' . "\n";
+echo 'File orig: [' . $file . ']'. "\n";
+echo 'File base: [' . $basefile . ']'. "\n";
+
+
+switch($action) {
+ case 'pulldef':
+
+ $content = SimpleSAML_Utilities::fetch($base . 'export.php?aid=' . $application . '&type=def&file=' . $basefile);
+ file_put_contents($fileWithoutExt . '.definition.json' , $content);
+ break;
+
+ case 'pull':
+
+ $content = SimpleSAML_Utilities::fetch($base . 'export.php?aid=' . $application . '&type=translation&file=' . $basefile);
+ file_put_contents($fileWithoutExt . '.translation.json' , $content);
+ break;
+
+ case 'push':
+
+ #$content = file_get_contents($base . 'export.php?aid=' . $application . '&type=translation&file=' . $basefile);
+ #file_put_contents($fileWithoutExt . '.translation.json' , $content);
+ push($file, $basefile, $application, $type);
+
+ break;
+
+ case 'convert':
+
+ include($file);
+ $definition = json_format(convert_definition($lang));
+ $translation = json_format(convert_translation($lang)) . "\n";
+ file_put_contents($fileWithoutExt . '.definition.json' , $definition);
+ file_put_contents($fileWithoutExt . '.translation.json' , $translation);
+ break;
+
+
+ default:
+ throw new Exception('Unknown action [' . $action . ']');
+}
+
+function ssp_readline($prompt = '') {
+ echo $prompt;
+ return rtrim( fgets( STDIN ), "\n" );
+}
+
+function convert_definition($data) {
+ $new = array();
+ foreach($data AS $key => $value) {
+ $new[$key] = array('en' => $value['en']);
+ }
+ return $new;
+}
+
+function convert_translation($data) {
+ foreach ($data as &$value) {
+ unset($value['en']);
+ }
+ return $data;
+}
+
+function push($file, $fileWithoutExt, $aid, $type) {
+
+ if (!file_exists($file)) throw new Exception('Could not find file: ' . $file);
+
+ $fileContent = file_get_contents($file);
+
+
+ global $baseDir;
+
+ require_once($baseDir . '/modules/oauth/libextinc/OAuth.php');
+
+
+
+ $translationconfig = SimpleSAML_Configuration::getConfig('translation.php');
+
+ $baseurl = $translationconfig->getString('baseurl');
+ $key = $translationconfig->getString('key');
+ $secret = $translationconfig->getString('secret');
+
+ echo 'Using OAuth to authenticate you to the translation portal' . "\n";
+ $consumer = new sspmod_oauth_Consumer($key, $secret);
+
+
+
+ $storage = new sspmod_core_Storage_SQLPermanentStorage('oauth_clientcache');
+
+ $cachedAccessToken = $storage->get('accesstoken', 'translation', '');
+ $accessToken = NULL;
+ if (empty($cachedAccessToken)) {
+
+ // Get the request token
+ $requestToken = $consumer->getRequestToken($baseurl . '/module.php/oauth/requestToken.php');
+ echo "Got a request token from the OAuth service provider [" . $requestToken->key . "] with the secret [" . $requestToken->secret . "]\n";
+
+ // Authorize the request token
+ $url = $consumer->getAuthorizeRequest($baseurl . '/module.php/oauth/authorize.php', $requestToken, FALSE);
+
+ echo('Go to this URL to authenticate/authorize the request: ' . $url . "\n");
+ system('open ' . $url);
+
+ ssp_readline('Click enter when you have completed the authorization step using your web browser...');
+
+ // Replace the request token with an access token
+ $accessToken = $consumer->getAccessToken( $baseurl . '/module.php/oauth/accessToken.php', $requestToken);
+ echo "Got an access token from the OAuth service provider [" . $accessToken->key . "] with the secret [" . $accessToken->secret . "]\n";
+
+ $storage->set('accesstoken', 'translation', '', $accessToken);
+
+ } else {
+ $accessToken = $cachedAccessToken['value'];
+ echo 'Successfully read OAuth Access Token from cache [' . $accessToken->key . ']' . "\n";
+ }
+
+ $pushURL = $baseurl . '/module.php/translationportal/push.php';
+ $request = array('data' => base64_encode($fileContent), 'file' => $fileWithoutExt, 'aid' => $aid, 'type' => $type);
+
+ $result = $consumer->postRequest($pushURL, $accessToken, $request);
+
+ echo $result;
+
+
+}
+
+/**
+ * Format an associative array as a json string.
+ *
+ * @param mixed $data The data that should be json encoded.
+ * @param string $indentation The current indentation level. Optional.
+ * @return string The json encoded data.
+ */
+function json_format($data, $indentation = '') {
+ assert('is_string($indentation)');
+
+ if (!is_array($data)) {
+ return json_encode($data);
+ }
+
+ $ret = "{";
+ $first = TRUE;
+ foreach ($data as $k => $v) {
+ $k = json_encode((string)$k);
+ $v = json_format($v, $indentation . "\t");
+
+ if ($first) {
+ $ret .= "\n";
+ $first = FALSE;
+ } else {
+ $ret .= ",\n";
+ }
+
+ $ret .= $indentation . "\t" . $k . ': ' . $v;
+ }
+ $ret .= "\n" . $indentation . '}';
+
+ return $ret;
+}
+
+?> \ No newline at end of file
diff --git a/inc/simplesamlphp/cert/server.crt b/inc/simplesamlphp/cert/server.crt
new file mode 100644
index 0000000..b4147e5
--- /dev/null
+++ b/inc/simplesamlphp/cert/server.crt
@@ -0,0 +1,16 @@
+-----BEGIN CERTIFICATE-----
+MIICgTCCAeoCCQCbOlrWDdX7FTANBgkqhkiG9w0BAQUFADCBhDELMAkGA1UEBhMC
+Tk8xGDAWBgNVBAgTD0FuZHJlYXMgU29sYmVyZzEMMAoGA1UEBxMDRm9vMRAwDgYD
+VQQKEwdVTklORVRUMRgwFgYDVQQDEw9mZWlkZS5lcmxhbmcubm8xITAfBgkqhkiG
+9w0BCQEWEmFuZHJlYXNAdW5pbmV0dC5ubzAeFw0wNzA2MTUxMjAxMzVaFw0wNzA4
+MTQxMjAxMzVaMIGEMQswCQYDVQQGEwJOTzEYMBYGA1UECBMPQW5kcmVhcyBTb2xi
+ZXJnMQwwCgYDVQQHEwNGb28xEDAOBgNVBAoTB1VOSU5FVFQxGDAWBgNVBAMTD2Zl
+aWRlLmVybGFuZy5ubzEhMB8GCSqGSIb3DQEJARYSYW5kcmVhc0B1bmluZXR0Lm5v
+MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDivbhR7P516x/S3BqKxupQe0LO
+NoliupiBOesCO3SHbDrl3+q9IbfnfmE04rNuMcPsIxB161TdDpIesLCn7c8aPHIS
+KOtPlAeTZSnb8QAu7aRjZq3+PbrP5uW3TcfCGPtKTytHOge/OlJbo078dVhXQ14d
+1EDwXJW1rRXuUt4C8QIDAQABMA0GCSqGSIb3DQEBBQUAA4GBACDVfp86HObqY+e8
+BUoWQ9+VMQx1ASDohBjwOsg2WykUqRXF+dLfcUH9dWR63CtZIKFDbStNomPnQz7n
+bK+onygwBspVEbnHuUihZq3ZUdmumQqCw4Uvs/1Uvq3orOo/WJVhTyvLgFVK2Qar
+Q4/67OZfHd7R+POBXhophSMv1ZOo
+-----END CERTIFICATE-----
diff --git a/inc/simplesamlphp/cert/server.pem b/inc/simplesamlphp/cert/server.pem
new file mode 100644
index 0000000..673196b
--- /dev/null
+++ b/inc/simplesamlphp/cert/server.pem
@@ -0,0 +1,15 @@
+-----BEGIN RSA PRIVATE KEY-----
+MIICXgIBAAKBgQDivbhR7P516x/S3BqKxupQe0LONoliupiBOesCO3SHbDrl3+q9
+IbfnfmE04rNuMcPsIxB161TdDpIesLCn7c8aPHISKOtPlAeTZSnb8QAu7aRjZq3+
+PbrP5uW3TcfCGPtKTytHOge/OlJbo078dVhXQ14d1EDwXJW1rRXuUt4C8QIDAQAB
+AoGAD4/Z4LWVWV6D1qMIp1Gzr0ZmdWTE1SPdZ7Ej8glGnCzPdguCPuzbhGXmIg0V
+J5D+02wsqws1zd48JSMXXM8zkYZVwQYIPUsNn5FetQpwxDIMPmhHg+QNBgwOnk8J
+K2sIjjLPL7qY7Itv7LT7Gvm5qSOkZ33RCgXcgz+okEIQMYkCQQDzbTOyDL0c5WQV
+6A2k06T/azdhUdGXF9C0+WkWSfNaovmTgRXh1G+jMlr82Snz4p4/STt7P/XtyWzF
+3pkVgZr3AkEA7nPjXwHlttNEMo6AtxHd47nizK2NUN803ElIUT8P9KSCoERmSXq6
+6PDekGNic4ldpsSvOeYCk8MAYoDBy9kvVwJBAMLgX4xg6lzhv7hR5+pWjTb1rIY6
+rCHbrPfU264+UZXz9v2BT/VUznLF81WMvStD9xAPHpFS6R0OLghSZhdzhI0CQQDL
+8Duvfxzrn4b9QlmduV8wLERoT6rEVxKLsPVz316TGrxJvBZLk/cV0SRZE1cZf4uk
+XSWMfEcJ/0Zt+LdG1CqjAkEAqwLSglJ9Dy3HpgMz4vAAyZWzAxvyA1zW0no9GOLc
+PQnYaNUN/Fy2SYtETXTb0CQ9X1rt8ffkFP7ya+5TC83aMg==
+-----END RSA PRIVATE KEY-----
diff --git a/inc/simplesamlphp/config-templates/acl.php b/inc/simplesamlphp/config-templates/acl.php
new file mode 100644
index 0000000..ce901ce
--- /dev/null
+++ b/inc/simplesamlphp/config-templates/acl.php
@@ -0,0 +1,61 @@
+<?php
+
+/*
+ * This file defines "named" access control lists, which can
+ * be reused in several places.
+ */
+$config = array(
+
+ 'adminlist' => array(
+ //array('allow', 'equals', 'mail', 'admin1@example.org'),
+ //array('allow', 'has', 'groups', 'admin'),
+ /* The default action is to deny access. */
+ ),
+
+ 'example-simple' => array(
+ array('allow', 'equals', 'mail', 'admin1@example.org'),
+ array('allow', 'equals', 'mail', 'admin2@example.org'),
+ /* The default action is to deny access. */
+ ),
+
+ 'example-deny-some' => array(
+ array('deny', 'equals', 'mail', 'eviluser@example.org'),
+ array('allow'), /* Allow everybody else. */
+ ),
+
+ 'example-maildomain' => array(
+ array('allow', 'equals-preg', 'mail', '/@example\.org$/'),
+ /* The default action is to deny access. */
+ ),
+
+ 'example-allow-employees' => array(
+ array('allow', 'has', 'eduPersonAffiliation', 'employee'),
+ /* The default action is to deny access. */
+ ),
+
+ 'example-allow-employees-not-students' => array(
+ array('deny', 'has', 'eduPersonAffiliation', 'student'),
+ array('allow', 'has', 'eduPersonAffiliation', 'employee'),
+ /* The default action is to deny access. */
+ ),
+
+ 'example-deny-student-except-one' => array(
+ array('deny', 'and',
+ array('has', 'eduPersonAffiliation', 'student'),
+ array('not', 'equals', 'mail', 'user@example.org'),
+ ),
+ array('allow'),
+ ),
+
+ 'example-allow-or' => array(
+ array('allow', 'or',
+ array('equals', 'eduPersonAffiliation', 'student', 'member'),
+ array('equals', 'mail', 'someuser@example2.org'),
+ ),
+ ),
+
+ 'example-allow-all' => array(
+ array('allow'),
+ ),
+
+); \ No newline at end of file
diff --git a/inc/simplesamlphp/config-templates/authmemcookie.php b/inc/simplesamlphp/config-templates/authmemcookie.php
new file mode 100644
index 0000000..036e8c2
--- /dev/null
+++ b/inc/simplesamlphp/config-templates/authmemcookie.php
@@ -0,0 +1,86 @@
+<?php
+
+/**
+ * This is the configuration file for the Auth MemCookie example.
+ */
+
+$config = array(
+
+ /*
+ * What type of login Auth MemCookie will use.
+ * Can be either 'authsource', 'saml2' or 'shib13'.
+ *
+ * For backwards compatibility, the default value if unset is 'saml2'.
+ * New installations should use 'authsource'.
+ */
+ 'loginmethod' => 'authsource',
+
+ /*
+ * The authentication source that should be used.
+ *
+ * This must be one of the authentication sources configured in config/authsources.php.
+ */
+ 'authsource' => 'default-sp',
+
+ /*
+ * This is the name of the cookie we should save the session id in. The value of this option must match the
+ * Auth_memCookie_CookieName option in the Auth MemCookie configuration. The default value is 'AuthMemCookie'.
+ *
+ * Default:
+ * 'cookiename' => 'AuthMemCookie',
+ */
+ 'cookiename' => 'AuthMemCookie',
+
+ /*
+ * This option specifies the name of the attribute which contains the username of the user. It must be set to
+ * a valid attribute name.
+ *
+ * Examples:
+ * 'username' => 'uid', // LDAP attribute for user id.
+ * 'username' => 'mail', // LDAP attribute for email address.
+ *
+ * Default:
+ * No default value.
+ */
+ 'username' => NULL,
+
+ /*
+ * This option specifies the name of the attribute which contains the groups of the user. Set this option to
+ * NULL if you don't want to include any groups.
+ *
+ * Example:
+ * 'groups' => 'edupersonaffiliation',
+ *
+ * Default:
+ * 'groups' => NULL,
+ */
+ 'groups' => NULL,
+
+ /*
+ * This option contains the hostnames or IP addresses of the memcache servers where we should store the
+ * authentication information. Separator is a comma. This option should match the address part of the
+ * Auth_memCookie_Memcached_AddrPort option in the Auth MemCookie configuration.
+ *
+ * Examples:
+ * 'memcache.host' => '192.168.93.52',
+ * 'memcache.host' => 'memcache.example.org',
+ * 'memcache.host' => 'memcache1.example.org,memcache2.example.org'
+ *
+ * Default:
+ * 'memcache.host' => '127.0.0.1',
+ */
+ 'memcache.host' => '127.0.0.1',
+
+ /*
+ * This option contains the port number of the memcache server where we should store the
+ * authentication information. This option should match the port part of the
+ * Auth_memCookie_Memcached_AddrPort option in the Auth MemCookie configuration.
+ *
+ * Default:
+ * 'memcache.port' => 11211,
+ */
+ 'memcache.port' => 11211,
+
+);
+
+?> \ No newline at end of file
diff --git a/inc/simplesamlphp/config-templates/authsources.php b/inc/simplesamlphp/config-templates/authsources.php
new file mode 100644
index 0000000..87d1834
--- /dev/null
+++ b/inc/simplesamlphp/config-templates/authsources.php
@@ -0,0 +1,347 @@
+<?php
+
+$config = array(
+
+ // This is a authentication source which handles admin authentication.
+ 'admin' => array(
+ // The default is to use core:AdminPassword, but it can be replaced with
+ // any authentication source.
+
+ 'core:AdminPassword',
+ ),
+
+
+ // An authentication source which can authenticate against both SAML 2.0
+ // and Shibboleth 1.3 IdPs.
+ 'default-sp' => array(
+ 'saml:SP',
+
+ // The entity ID of this SP.
+ // Can be NULL/unset, in which case an entity ID is generated based on the metadata URL.
+ 'entityID' => NULL,
+
+ // The entity ID of the IdP this should SP should contact.
+ // Can be NULL/unset, in which case the user will be shown a list of available IdPs.
+ 'idp' => NULL,
+
+ // The URL to the discovery service.
+ // Can be NULL/unset, in which case a builtin discovery service will be used.
+ 'discoURL' => NULL,
+ ),
+
+
+ /*
+ 'example-sql' => array(
+ 'sqlauth:SQL',
+ 'dsn' => 'pgsql:host=sql.example.org;port=5432;dbname=simplesaml',
+ 'username' => 'simplesaml',
+ 'password' => 'secretpassword',
+ 'query' => 'SELECT "username", "name", "email" FROM "users" WHERE "username" = :username AND "password" = :password',
+ ),
+ */
+
+ /*
+ 'example-static' => array(
+ 'exampleauth:Static',
+ 'uid' => array('testuser'),
+ 'eduPersonAffiliation' => array('member', 'employee'),
+ 'cn' => array('Test User'),
+ ),
+ */
+
+ /*
+ 'example-userpass' => array(
+ 'exampleauth:UserPass',
+
+ // Give the user an option to save their username for future login attempts
+ // And when enabled, what should the default be, to save the username or not
+ //'remember.username.enabled' => FALSE,
+ //'remember.username.checked' => FALSE,
+
+ 'student:studentpass' => array(
+ 'uid' => array('test'),
+ 'eduPersonAffiliation' => array('member', 'student'),
+ ),
+ 'employee:employeepass' => array(
+ 'uid' => array('employee'),
+ 'eduPersonAffiliation' => array('member', 'employee'),
+ ),
+ ),
+ */
+
+ /*
+ 'crypto-hash' => array(
+ 'authcrypt:Hash',
+ // hashed version of 'verysecret', made with bin/pwgen.php
+ 'professor:{SSHA256}P6FDTEEIY2EnER9a6P2GwHhI5JDrwBgjQ913oVQjBngmCtrNBUMowA==' => array(
+ 'uid' => array('prof_a'),
+ 'eduPersonAffiliation' => array('member', 'employee', 'board'),
+ ),
+ ),
+ */
+
+ /*
+ 'htpasswd' => array(
+ 'authcrypt:Htpasswd',
+ 'htpasswd_file' => '/var/www/foo.edu/legacy_app/.htpasswd',
+ 'static_attributes' => array(
+ 'eduPersonAffiliation' => array('member', 'employee'),
+ 'Organization' => array('University of Foo'),
+ ),
+ ),
+ */
+
+ /*
+ // This authentication source serves as an example of integration with an
+ // external authentication engine. Take a look at the comment in the beginning
+ // of modules/exampleauth/lib/Auth/Source/External.php for a description of
+ // how to adjust it to your own site.
+ 'example-external' => array(
+ 'exampleauth:External',
+ ),
+ */
+
+ /*
+ 'yubikey' => array(
+ 'authYubiKey:YubiKey',
+ 'id' => '000',
+ // 'key' => '012345678',
+ ),
+ */
+
+ /*
+ 'openid' => array(
+ 'openid:OpenIDConsumer',
+ 'attributes.required' => array('nickname'),
+ 'attributes.optional' => array('fullname', 'email',),
+ // 'sreg.validate' => FALSE,
+ 'attributes.ax_required' => array('http://axschema.org/namePerson/friendly'),
+ 'attributes.ax_optional' => array('http://axschema.org/namePerson','http://axschema.org/contact/email'),
+ // Prefer HTTP redirect over POST
+ // 'prefer_http_redirect' => FALSE,
+ ),
+ */
+
+ /*
+ // Example of an authsource that authenticates against Google.
+ // See: http://code.google.com/apis/accounts/docs/OpenID.html
+ 'google' => array(
+ 'openid:OpenIDConsumer',
+ // Googles OpenID endpoint.
+ 'target' => 'https://www.google.com/accounts/o8/id',
+ // Custom realm
+ // 'realm' => 'http://*.example.org',
+ // Attributes that google can supply.
+ 'attributes.ax_required' => array(
+ //'http://axschema.org/namePerson/first',
+ //'http://axschema.org/namePerson/last',
+ //'http://axschema.org/contact/email',
+ //'http://axschema.org/contact/country/home',
+ //'http://axschema.org/pref/language',
+ ),
+ // custom extension arguments
+ 'extension.args' => array(
+ //'http://specs.openid.net/extensions/ui/1.0' => array(
+ // 'mode' => 'popup',
+ // 'icon' => 'true',
+ //),
+ ),
+ ),
+ */
+
+ /*
+ 'papi' => array(
+ 'authpapi:PAPI',
+ ),
+ */
+
+
+ /*
+ 'facebook' => array(
+ 'authfacebook:Facebook',
+ // Register your Facebook application on http://www.facebook.com/developers
+ // App ID or API key (requests with App ID should be faster; https://github.com/facebook/php-sdk/issues/214)
+ 'api_key' => 'xxxxxxxxxxxxxxxx',
+ // App Secret
+ 'secret' => 'xxxxxxxxxxxxxxxx',
+ // which additional data permissions to request from user
+ // see http://developers.facebook.com/docs/authentication/permissions/ for the full list
+ // 'req_perms' => 'email,user_birthday',
+ ),
+ */
+
+ /*
+ // LinkedIn OAuth Authentication API.
+ // Register your application to get an API key here:
+ // https://www.linkedin.com/secure/developer
+ 'linkedin' => array(
+ 'authlinkedin:LinkedIn',
+ 'key' => 'xxxxxxxxxxxxxxxx',
+ 'secret' => 'xxxxxxxxxxxxxxxx',
+ ),
+ */
+
+ /*
+ // Twitter OAuth Authentication API.
+ // Register your application to get an API key here:
+ // http://twitter.com/oauth_clients
+ 'twitter' => array(
+ 'authtwitter:Twitter',
+ 'key' => 'xxxxxxxxxxxxxxxx',
+ 'secret' => 'xxxxxxxxxxxxxxxx',
+ ),
+ */
+
+ /*
+ // MySpace OAuth Authentication API.
+ // Register your application to get an API key here:
+ // http://developer.myspace.com/
+ 'myspace' => array(
+ 'authmyspace:MySpace',
+ 'key' => 'xxxxxxxxxxxxxxxx',
+ 'secret' => 'xxxxxxxxxxxxxxxx',
+ ),
+ */
+
+ /*
+ // Windows Live ID Authentication API.
+ // Register your application to get an API key here:
+ // https://manage.dev.live.com
+ 'windowslive' => array(
+ 'authwindowslive:LiveID',
+ 'key' => 'xxxxxxxxxxxxxxxx',
+ 'secret' => 'xxxxxxxxxxxxxxxx',
+ ),
+ */
+
+ /*
+ // Example of a LDAP authentication source.
+ 'example-ldap' => array(
+ 'ldap:LDAP',
+
+ // Give the user an option to save their username for future login attempts
+ // And when enabled, what should the default be, to save the username or not
+ //'remember.username.enabled' => FALSE,
+ //'remember.username.checked' => FALSE,
+
+ // The hostname of the LDAP server.
+ 'hostname' => 'ldap.example.org',
+
+ // Whether SSL/TLS should be used when contacting the LDAP server.
+ 'enable_tls' => FALSE,
+
+ // Whether debug output from the LDAP library should be enabled.
+ // Default is FALSE.
+ 'debug' => FALSE,
+
+ // The timeout for accessing the LDAP server, in seconds.
+ // The default is 0, which means no timeout.
+ 'timeout' => 0,
+
+ // Which attributes should be retrieved from the LDAP server.
+ // This can be an array of attribute names, or NULL, in which case
+ // all attributes are fetched.
+ 'attributes' => NULL,
+
+ // The pattern which should be used to create the users DN given the username.
+ // %username% in this pattern will be replaced with the users username.
+ //
+ // This option is not used if the search.enable option is set to TRUE.
+ 'dnpattern' => 'uid=%username%,ou=people,dc=example,dc=org',
+
+ // As an alternative to specifying a pattern for the users DN, it is possible to
+ // search for the username in a set of attributes. This is enabled by this option.
+ 'search.enable' => FALSE,
+
+ // The DN which will be used as a base for the search.
+ // This can be a single string, in which case only that DN is searched, or an
+ // array of strings, in which case they will be searched in the order given.
+ 'search.base' => 'ou=people,dc=example,dc=org',
+
+ // The attribute(s) the username should match against.
+ //
+ // This is an array with one or more attribute names. Any of the attributes in
+ // the array may match the value the username.
+ 'search.attributes' => array('uid', 'mail'),
+
+ // The username & password the simpleSAMLphp should bind to before searching. If
+ // this is left as NULL, no bind will be performed before searching.
+ 'search.username' => NULL,
+ 'search.password' => NULL,
+
+ // If the directory uses privilege separation,
+ // the authenticated user may not be able to retrieve
+ // all required attribures, a privileged entity is required
+ // to get them. This is enabled with this option.
+ 'priv.read' => FALSE,
+
+ // The DN & password the simpleSAMLphp should bind to before
+ // retrieving attributes. These options are required if
+ // 'priv.read' is set to TRUE.
+ 'priv.username' => NULL,
+ 'priv.password' => NULL,
+
+ ),
+ */
+
+ /*
+ // Example of an LDAPMulti authentication source.
+ 'example-ldapmulti' => array(
+ 'ldap:LDAPMulti',
+
+ // Give the user an option to save their username for future login attempts
+ // And when enabled, what should the default be, to save the username or not
+ //'remember.username.enabled' => FALSE,
+ //'remember.username.checked' => FALSE,
+
+ // The way the organization as part of the username should be handled.
+ // Three possible values:
+ // - 'none': No handling of the organization. Allows '@' to be part
+ // of the username.
+ // - 'allow': Will allow users to type 'username@organization'.
+ // - 'force': Force users to type 'username@organization'. The dropdown
+ // list will be hidden.
+ //
+ // The default is 'none'.
+ 'username_organization_method' => 'none',
+
+ // Whether the organization should be included as part of the username
+ // when authenticating. If this is set to TRUE, the username will be on
+ // the form <username>@<organization identifier>. If this is FALSE, the
+ // username will be used as the user enters it.
+ //
+ // The default is FALSE.
+ 'include_organization_in_username' => FALSE,
+
+ // A list of available LDAP servers.
+ //
+ // The index is an identifier for the organization/group. When
+ // 'username_organization_method' is set to something other than 'none',
+ // the organization-part of the username is matched against the index.
+ //
+ // The value of each element is an array in the same format as an LDAP
+ // authentication source.
+ 'employees' => array(
+ // A short name/description for this group. Will be shown in a dropdown list
+ // when the user logs on.
+ //
+ // This option can be a string or an array with language => text mappings.
+ 'description' => 'Employees',
+
+ // The rest of the options are the same as those available for
+ // the LDAP authentication source.
+ 'hostname' => 'ldap.employees.example.org',
+ 'dnpattern' => 'uid=%username%,ou=employees,dc=example,dc=org',
+ ),
+
+ 'students' => array(
+ 'description' => 'Students',
+
+ 'hostname' => 'ldap.students.example.org',
+ 'dnpattern' => 'uid=%username%,ou=students,dc=example,dc=org',
+ ),
+
+ ),
+ */
+
+);
diff --git a/inc/simplesamlphp/config-templates/cas-ldap.php b/inc/simplesamlphp/config-templates/cas-ldap.php
new file mode 100644
index 0000000..0eba48a
--- /dev/null
+++ b/inc/simplesamlphp/config-templates/cas-ldap.php
@@ -0,0 +1,39 @@
+<?php
+/*
+ * The configuration of simpleSAMLphp
+ *
+ *
+ */
+
+$casldapconfig = array (
+ 'idpentityid.example.org' => array(
+ 'cas' => array(
+ 'login' => 'https://idpentityid.example.org/cas/login',
+ 'validate' => 'https://idpentityid.example.org/cas/validate',
+ ),
+ 'ldap' => array(
+ 'servers' => 'idpentityid.example.org',
+ 'enable_tls' => false,
+ 'searchbase' => 'dc=example,dc=org',
+ 'searchattributes' => 'uid',
+ 'attributes' => array('cn', 'mail'),
+ ),
+ ),
+ 'idpentityid2.example.org' => array(
+ 'cas' => array(
+ 'login' => 'https://idpentityid2.example.org/login',
+ 'validate' => 'https://idpentityid2.example.org/validate',
+ ),
+ 'ldap' => array(
+ 'servers' => 'ldap://idpentityid2.example.org',
+ 'enable_tls' => false,
+ 'searchbase' => 'ou=users,dc=example,dc=org',
+ 'searchattributes' => array('uid', 'mail'), # array for being able to login with either uid or mail.
+ 'attributes' => null,
+ 'priv_user_dn' => 'uid=admin,ou=users,dc=example,dc=org',
+ 'priv_user_pw' => 'xxxxx',
+ ),
+ ),
+
+);
+?> \ No newline at end of file
diff --git a/inc/simplesamlphp/config-templates/config-login-auto.php b/inc/simplesamlphp/config-templates/config-login-auto.php
new file mode 100644
index 0000000..2fd0741
--- /dev/null
+++ b/inc/simplesamlphp/config-templates/config-login-auto.php
@@ -0,0 +1,68 @@
+<?php
+/*
+ * The configuration of the login-auto authentication module.
+ *
+ * $Id: config.php 451 2008-03-27 15:33:34Z olavmrk $
+ */
+
+$config = array (
+
+ /*
+ * This option enables or disables the login-auto authentication
+ * handler. This handler is implemented in 'www/auth/login-auto.php'.
+ *
+ * When this option is set to true, a user can go to the
+ * 'auth/login-auto.php' web page to be authenticated as an example
+ * user. The user will receive the attributes set in the
+ * 'auth.auto.attributes' option.
+ *
+ * WARNING: setting this option to true will make it possible to use
+ * this authenticator for all users, irrespectively of the 'auth'
+ * setting in the IdP's metadata. They can always use it by opening the
+ * 'auth/login-auto.php' webpage manually.
+ */
+ 'auth.auto.enable' => true,
+
+ /*
+ * This option configures which attributes the login-auto
+ * authentication handler will set for the user. It is an array of
+ * arrays. The name of the attribute is the index in the first array,
+ * and all the values for the attribute is given in the array
+ * referenced to by the name.
+ *
+ * Example:
+ * 'auth.auto.attributes' => array(
+ * 'edupersonaffiliation' => array('student', 'member'),
+ * 'uid' => array('example_uid'),
+ * 'mail' => array('example@example.com'),
+ * ),
+ */
+ 'auth.auto.attributes' => array(
+ 'edupersonaffiliation' => array('student', 'member'),
+ 'title' => array('Example user title'),
+ 'uid' => array('example_uid'),
+ 'mail' => array('example@example.com'),
+ 'cn' => array('Example user commonname'),
+ 'givenname' => array('Example user givenname'),
+ 'sn' => array("Example surname"),
+ ),
+
+ /*
+ * When this option is set to true, the login-auto authentication
+ * handler will ask for a username and a password. This can be used to
+ * test the IdP. The username and password isn't verified, and the
+ * user/script can enter anything.
+ */
+ 'auth.auto.ask_login' => false,
+
+ /*
+ * This option configures a delay in the login-auto authentication
+ * handler. The script will wait for the given number of milliseconds
+ * before authenticating the user. This can, for example, be used in
+ * a simple simulation of a slow LDAP server.
+ */
+ 'auth.auto.delay_login' => 0,
+);
+
+
+?> \ No newline at end of file
diff --git a/inc/simplesamlphp/config-templates/config-login-feide.php b/inc/simplesamlphp/config-templates/config-login-feide.php
new file mode 100644
index 0000000..7c437a0
--- /dev/null
+++ b/inc/simplesamlphp/config-templates/config-login-feide.php
@@ -0,0 +1,39 @@
+<?php
+/*
+ * Configuration for the auth/login-feide.php login module.
+ *
+ * The configuration file is an array with multiple organizations. The user
+ * can select which organization he/she wants to log in with, with a drop-down
+ * menu in the user interface.
+ *
+ */
+
+$config = array (
+
+ 'orgldapconfig' => array(
+
+ 'example1.com' => array(
+ 'description' => 'Example Org 1',
+ 'searchbase' => 'cn=people,dc=example1,dc=com',
+ 'hostname' => 'ldaps://ldap.example1.com',
+ 'attributes' => null,
+
+ 'contactMail' => 'admin@example1.com',
+ 'contactURL' => 'http://admin.example1.com',
+
+ // System user to bind() before we do a search for eduPersonPrincipalName
+ 'adminUser' => 'uid=admin,dc=example1,dc=com',
+ 'adminPassword' => 'xxx',
+
+ ),
+ 'example1.com' => array(
+ 'description' => 'Example Org 1',
+ 'searchbase' => 'cn=people,dc=example1,dc=com',
+ 'hostname' => 'ldaps://ldap.example1.com',
+
+ 'attributes' => array('mail', 'street'),
+ ),
+ ),
+);
+
+?>
diff --git a/inc/simplesamlphp/config-templates/config.php b/inc/simplesamlphp/config-templates/config.php
new file mode 100644
index 0000000..71f7e78
--- /dev/null
+++ b/inc/simplesamlphp/config-templates/config.php
@@ -0,0 +1,638 @@
+<?php
+/*
+ * The configuration of simpleSAMLphp
+ *
+ * $Id: config.php 3171 2012-09-25 08:54:06Z jaimepc@gmail.com $
+ */
+
+$config = array (
+
+ /**
+ * Setup the following parameters to match the directory of your installation.
+ * See the user manual for more details.
+ *
+ * Valid format for baseurlpath is:
+ * [(http|https)://(hostname|fqdn)[:port]]/[path/to/simplesaml/]
+ * (note that it must end with a '/')
+ *
+ * The full url format is useful if your simpleSAMLphp setup is hosted behind
+ * a reverse proxy. In that case you can specify the external url here.
+ *
+ * Please note that simpleSAMLphp will then redirect all queries to the
+ * external url, no matter where you come from (direct access or via the
+ * reverse proxy).
+ */
+ 'baseurlpath' => 'simplesaml/',
+ 'certdir' => 'cert/',
+ 'loggingdir' => 'log/',
+ 'datadir' => 'data/',
+
+ /*
+ * A directory where simpleSAMLphp can save temporary files.
+ *
+ * SimpleSAMLphp will attempt to create this directory if it doesn't exist.
+ */
+ 'tempdir' => '/tmp/simplesaml',
+
+
+ /*
+ * If you enable this option, simpleSAMLphp will log all sent and received messages
+ * to the log file.
+ *
+ * This option also enables logging of the messages that are encrypted and decrypted.
+ *
+ * Note: The messages are logged with the DEBUG log level, so you also need to set
+ * the 'logging.level' option to LOG_DEBUG.
+ */
+ 'debug' => FALSE,
+
+
+ 'showerrors' => TRUE,
+
+ /**
+ * Custom error show function called from SimpleSAML_Error_Error::show.
+ * See docs/simplesamlphp-errorhandling.txt for function code example.
+ *
+ * Example:
+ * 'errors.show_function' => array('sspmod_example_Error_Show', 'show'),
+ */
+
+ /**
+ * This option allows you to enable validation of XML data against its
+ * schemas. A warning will be written to the log if validation fails.
+ */
+ 'debug.validatexml' => FALSE,
+
+ /**
+ * This password must be kept secret, and modified from the default value 123.
+ * This password will give access to the installation page of simpleSAMLphp with
+ * metadata listing and diagnostics pages.
+ * You can also put a hash here; run "bin/pwgen.php" to generate one.
+ */
+ 'auth.adminpassword' => '123',
+ 'admin.protectindexpage' => false,
+ 'admin.protectmetadata' => false,
+
+ /**
+ * This is a secret salt used by simpleSAMLphp when it needs to generate a secure hash
+ * of a value. It must be changed from its default value to a secret value. The value of
+ * 'secretsalt' can be any valid string of any length.
+ *
+ * A possible way to generate a random salt is by running the following command from a unix shell:
+ * tr -c -d '0123456789abcdefghijklmnopqrstuvwxyz' </dev/urandom | dd bs=32 count=1 2>/dev/null;echo
+ */
+ 'secretsalt' => 'defaultsecretsalt',
+
+ /*
+ * Some information about the technical persons running this installation.
+ * The email address will be used as the recipient address for error reports, and
+ * also as the technical contact in generated metadata.
+ */
+ 'technicalcontact_name' => 'Administrator',
+ 'technicalcontact_email' => 'na@example.org',
+
+ /*
+ * The timezone of the server. This option should be set to the timezone you want
+ * simpleSAMLphp to report the time in. The default is to guess the timezone based
+ * on your system timezone.
+ *
+ * See this page for a list of valid timezones: http://php.net/manual/en/timezones.php
+ */
+ 'timezone' => NULL,
+
+ /*
+ * Logging.
+ *
+ * define the minimum log level to log
+ * SimpleSAML_Logger::ERR No statistics, only errors
+ * SimpleSAML_Logger::WARNING No statistics, only warnings/errors
+ * SimpleSAML_Logger::NOTICE Statistics and errors
+ * SimpleSAML_Logger::INFO Verbose logs
+ * SimpleSAML_Logger::DEBUG Full debug logs - not reccomended for production
+ *
+ * Choose logging handler.
+ *
+ * Options: [syslog,file,errorlog]
+ *
+ */
+ 'logging.level' => SimpleSAML_Logger::NOTICE,
+ 'logging.handler' => 'syslog',
+
+ /*
+ * Choose which facility should be used when logging with syslog.
+ *
+ * These can be used for filtering the syslog output from simpleSAMLphp into its
+ * own file by configuring the syslog daemon.
+ *
+ * See the documentation for openlog (http://php.net/manual/en/function.openlog.php) for available
+ * facilities. Note that only LOG_USER is valid on windows.
+ *
+ * The default is to use LOG_LOCAL5 if available, and fall back to LOG_USER if not.
+ */
+ 'logging.facility' => defined('LOG_LOCAL5') ? constant('LOG_LOCAL5') : LOG_USER,
+
+ /*
+ * The process name that should be used when logging to syslog.
+ * The value is also written out by the other logging handlers.
+ */
+ 'logging.processname' => 'simplesamlphp',
+
+ /* Logging: file - Logfilename in the loggingdir from above.
+ */
+ 'logging.logfile' => 'simplesamlphp.log',
+
+ /* (New) statistics output configuration.
+ *
+ * This is an array of outputs. Each output has at least a 'class' option, which
+ * selects the output.
+ */
+ 'statistics.out' => array(
+ // Log statistics to the normal log.
+ /*
+ array(
+ 'class' => 'core:Log',
+ 'level' => 'notice',
+ ),
+ */
+ // Log statistics to files in a directory. One file per day.
+ /*
+ array(
+ 'class' => 'core:File',
+ 'directory' => '/var/log/stats',
+ ),
+ */
+ ),
+
+
+ /*
+ * Enable
+ *
+ * Which functionality in simpleSAMLphp do you want to enable. Normally you would enable only
+ * one of the functionalities below, but in some cases you could run multiple functionalities.
+ * In example when you are setting up a federation bridge.
+ */
+ 'enable.saml20-idp' => false,
+ 'enable.shib13-idp' => false,
+ 'enable.adfs-idp' => false,
+ 'enable.wsfed-sp' => false,
+ 'enable.authmemcookie' => false,
+
+ /*
+ * This value is the duration of the session in seconds. Make sure that the time duration of
+ * cookies both at the SP and the IdP exceeds this duration.
+ */
+ 'session.duration' => 8 * (60*60), // 8 hours.
+ 'session.requestcache' => 4 * (60*60), // 4 hours
+
+ /*
+ * Sets the duration, in seconds, data should be stored in the datastore. As the datastore is used for
+ * login and logout requests, thid option will control the maximum time these operations can take.
+ * The default is 4 hours (4*60*60) seconds, which should be more than enough for these operations.
+ */
+ 'session.datastore.timeout' => (4*60*60), // 4 hours
+
+ /*
+ * Sets the duration, in seconds, auth state should be stored.
+ */
+ 'session.state.timeout' => (60*60), // 1 hour
+
+ /*
+ * Option to override the default settings for the session cookie name
+ */
+ 'session.cookie.name' => 'SimpleSAMLSessionID',
+
+ /*
+ * Expiration time for the session cookie, in seconds.
+ *
+ * Defaults to 0, which means that the cookie expires when the browser is closed.
+ *
+ * Example:
+ * 'session.cookie.lifetime' => 30*60,
+ */
+ 'session.cookie.lifetime' => 0,
+
+ /*
+ * Limit the path of the cookies.
+ *
+ * Can be used to limit the path of the cookies to a specific subdirectory.
+ *
+ * Example:
+ * 'session.cookie.path' => '/simplesaml/',
+ */
+ 'session.cookie.path' => '/',
+
+ /*
+ * Cookie domain.
+ *
+ * Can be used to make the session cookie available to several domains.
+ *
+ * Example:
+ * 'session.cookie.domain' => '.example.org',
+ */
+ 'session.cookie.domain' => NULL,
+
+ /*
+ * Set the secure flag in the cookie.
+ *
+ * Set this to TRUE if the user only accesses your service
+ * through https. If the user can access the service through
+ * both http and https, this must be set to FALSE.
+ */
+ 'session.cookie.secure' => FALSE,
+
+ /*
+ * When set to FALSE fallback to transient session on session initialization
+ * failure, throw exception otherwise.
+ */
+ 'session.disable_fallback' => FALSE,
+
+ /*
+ * Enable secure POST from HTTPS to HTTP.
+ *
+ * If you have some SP's on HTTP and IdP is normally on HTTPS, this option
+ * enables secure POSTing to HTTP endpoint without warning from browser.
+ *
+ * For this to work, module.php/core/postredirect.php must be accessible
+ * also via HTTP on IdP, e.g. if your IdP is on
+ * https://idp.example.org/ssp/, then
+ * http://idp.example.org/ssp/module.php/core/postredirect.php must be accessible.
+ */
+ 'enable.http_post' => FALSE,
+
+ /*
+ * Options to override the default settings for php sessions.
+ */
+ 'session.phpsession.cookiename' => null,
+ 'session.phpsession.savepath' => null,
+ 'session.phpsession.httponly' => FALSE,
+
+ /*
+ * Option to override the default settings for the auth token cookie
+ */
+ 'session.authtoken.cookiename' => 'SimpleSAMLAuthToken',
+
+ /*
+ * Languages available, RTL languages, and what language is default
+ */
+ 'language.available' => array('en', 'no', 'nn', 'se', 'da', 'de', 'sv', 'fi', 'es', 'fr', 'it', 'nl', 'lb', 'cs', 'sl', 'lt', 'hr', 'hu', 'pl', 'pt', 'pt-br', 'tr', 'ja', 'zh', 'zh-tw', 'ru', 'et', 'he', 'id', 'sr'),
+ 'language.rtl' => array('ar','dv','fa','ur','he'),
+ 'language.default' => 'en',
+
+ /**
+ * Custom getLanguage function called from SimpleSAML_XHTML_Template::getLanguage().
+ * Function should return language code of one of the available languages or NULL.
+ * See SimpleSAML_XHTML_Template::getLanguage() source code for more info.
+ *
+ * This option can be used to implement a custom function for determining
+ * the default language for the user.
+ *
+ * Example:
+ * 'language.get_language_function' => array('sspmod_example_Template', 'getLanguage'),
+ */
+
+ /*
+ * Extra dictionary for attribute names.
+ * This can be used to define local attributes.
+ *
+ * The format of the parameter is a string with <module>:<dictionary>.
+ *
+ * Specifying this option will cause us to look for modules/<module>/dictionaries/<dictionary>.definition.json
+ * The dictionary should look something like:
+ *
+ * {
+ * "firstattribute": {
+ * "en": "English name",
+ * "no": "Norwegian name"
+ * },
+ * "secondattribute": {
+ * "en": "English name",
+ * "no": "Norwegian name"
+ * }
+ * }
+ *
+ * Note that all attribute names in the dictionary must in lowercase.
+ *
+ * Example: 'attributes.extradictionary' => 'ourmodule:ourattributes',
+ */
+ 'attributes.extradictionary' => NULL,
+
+ /*
+ * Which theme directory should be used?
+ */
+ 'theme.use' => 'default',
+
+
+ /*
+ * Default IdP for WS-Fed.
+ */
+ 'default-wsfed-idp' => 'urn:federation:pingfederate:localhost',
+
+ /*
+ * Whether the discovery service should allow the user to save his choice of IdP.
+ */
+ 'idpdisco.enableremember' => TRUE,
+ 'idpdisco.rememberchecked' => TRUE,
+
+ // Disco service only accepts entities it knows.
+ 'idpdisco.validate' => TRUE,
+
+ 'idpdisco.extDiscoveryStorage' => NULL,
+
+ /*
+ * IdP Discovery service look configuration.
+ * Wether to display a list of idp or to display a dropdown box. For many IdP' a dropdown box
+ * gives the best use experience.
+ *
+ * When using dropdown box a cookie is used to highlight the previously chosen IdP in the dropdown.
+ * This makes it easier for the user to choose the IdP
+ *
+ * Options: [links,dropdown]
+ *
+ */
+ 'idpdisco.layout' => 'dropdown',
+
+ /*
+ * Whether simpleSAMLphp should sign the response or the assertion in SAML 1.1 authentication
+ * responses.
+ *
+ * The default is to sign the assertion element, but that can be overridden by setting this
+ * option to TRUE. It can also be overridden on a pr. SP basis by adding an option with the
+ * same name to the metadata of the SP.
+ */
+ 'shib13.signresponse' => TRUE,
+
+
+
+ /*
+ * Authentication processing filters that will be executed for all IdPs
+ * Both Shibboleth and SAML 2.0
+ */
+ 'authproc.idp' => array(
+ /* Enable the authproc filter below to add URN Prefixces to all attributes
+ 10 => array(
+ 'class' => 'core:AttributeMap', 'addurnprefix'
+ ), */
+ /* Enable the authproc filter below to automatically generated eduPersonTargetedID.
+ 20 => 'core:TargetedID',
+ */
+
+ // Adopts language from attribute to use in UI
+ 30 => 'core:LanguageAdaptor',
+
+ /* Add a realm attribute from edupersonprincipalname
+ 40 => 'core:AttributeRealm',
+ */
+ 45 => array(
+ 'class' => 'core:StatisticsWithAttribute',
+ 'attributename' => 'realm',
+ 'type' => 'saml20-idp-SSO',
+ ),
+
+ /* When called without parameters, it will fallback to filter attributes ‹the old way›
+ * by checking the 'attributes' parameter in metadata on IdP hosted and SP remote.
+ */
+ 50 => 'core:AttributeLimit',
+
+ /*
+ * Search attribute "distinguishedName" for pattern and replaces if found
+
+ 60 => array(
+ 'class' => 'core:AttributeAlter',
+ 'pattern' => '/OU=studerende/',
+ 'replacement' => 'Student',
+ 'subject' => 'distinguishedName',
+ '%replace',
+ ),
+ */
+
+ /*
+ * Consent module is enabled (with no permanent storage, using cookies).
+
+ 90 => array(
+ 'class' => 'consent:Consent',
+ 'store' => 'consent:Cookie',
+ 'focus' => 'yes',
+ 'checked' => TRUE
+ ),
+ */
+ // If language is set in Consent module it will be added as an attribute.
+ 99 => 'core:LanguageAdaptor',
+ ),
+ /*
+ * Authentication processing filters that will be executed for all SPs
+ * Both Shibboleth and SAML 2.0
+ */
+ 'authproc.sp' => array(
+ /*
+ 10 => array(
+ 'class' => 'core:AttributeMap', 'removeurnprefix'
+ ),
+ */
+
+ /*
+ * Generate the 'group' attribute populated from other variables, including eduPersonAffiliation.
+ */
+ 60 => array('class' => 'core:GenerateGroups', 'eduPersonAffiliation'),
+ // All users will be members of 'users' and 'members'
+ 61 => array('class' => 'core:AttributeAdd', 'groups' => array('users', 'members')),
+
+ // Adopts language from attribute to use in UI
+ 90 => 'core:LanguageAdaptor',
+
+ ),
+
+
+ /*
+ * This option configures the metadata sources. The metadata sources is given as an array with
+ * different metadata sources. When searching for metadata, simpleSAMPphp will search through
+ * the array from start to end.
+ *
+ * Each element in the array is an associative array which configures the metadata source.
+ * The type of the metadata source is given by the 'type' element. For each type we have
+ * different configuration options.
+ *
+ * Flat file metadata handler:
+ * - 'type': This is always 'flatfile'.
+ * - 'directory': The directory we will load the metadata files from. The default value for
+ * this option is the value of the 'metadatadir' configuration option, or
+ * 'metadata/' if that option is unset.
+ *
+ * XML metadata handler:
+ * This metadata handler parses an XML file with either an EntityDescriptor element or an
+ * EntitiesDescriptor element. The XML file may be stored locally, or (for debugging) on a remote
+ * web server.
+ * The XML hetadata handler defines the following options:
+ * - 'type': This is always 'xml'.
+ * - 'file': Path to the XML file with the metadata.
+ * - 'url': The url to fetch metadata from. THIS IS ONLY FOR DEBUGGING - THERE IS NO CACHING OF THE RESPONSE.
+ *
+ *
+ * Examples:
+ *
+ * This example defines two flatfile sources. One is the default metadata directory, the other
+ * is a metadata directory with autogenerated metadata files.
+ *
+ * 'metadata.sources' => array(
+ * array('type' => 'flatfile'),
+ * array('type' => 'flatfile', 'directory' => 'metadata-generated'),
+ * ),
+ *
+ * This example defines a flatfile source and an XML source.
+ * 'metadata.sources' => array(
+ * array('type' => 'flatfile'),
+ * array('type' => 'xml', 'file' => 'idp.example.org-idpMeta.xml'),
+ * ),
+ *
+ *
+ * Default:
+ * 'metadata.sources' => array(
+ * array('type' => 'flatfile')
+ * ),
+ */
+ 'metadata.sources' => array(
+ array('type' => 'flatfile'),
+ ),
+
+
+ /*
+ * Configure the datastore for simpleSAMLphp.
+ *
+ * - 'phpsession': Limited datastore, which uses the PHP session.
+ * - 'memcache': Key-value datastore, based on memcache.
+ * - 'sql': SQL datastore, using PDO.
+ *
+ * The default datastore is 'phpsession'.
+ *
+ * (This option replaces the old 'session.handler'-option.)
+ */
+ 'store.type' => 'phpsession',
+
+
+ /*
+ * The DSN the sql datastore should connect to.
+ *
+ * See http://www.php.net/manual/en/pdo.drivers.php for the various
+ * syntaxes.
+ */
+ 'store.sql.dsn' => 'sqlite:/path/to/sqlitedatabase.sq3',
+
+ /*
+ * The username and password to use when connecting to the database.
+ */
+ 'store.sql.username' => NULL,
+ 'store.sql.password' => NULL,
+
+ /*
+ * The prefix we should use on our tables.
+ */
+ 'store.sql.prefix' => 'simpleSAMLphp',
+
+
+ /*
+ * Configuration for the MemcacheStore class. This allows you to store
+ * multiple redudant copies of sessions on different memcache servers.
+ *
+ * 'memcache_store.servers' is an array of server groups. Every data
+ * item will be mirrored in every server group.
+ *
+ * Each server group is an array of servers. The data items will be
+ * load-balanced between all servers in each server group.
+ *
+ * Each server is an array of parameters for the server. The following
+ * options are available:
+ * - 'hostname': This is the hostname or ip address where the
+ * memcache server runs. This is the only required option.
+ * - 'port': This is the port number of the memcache server. If this
+ * option isn't set, then we will use the 'memcache.default_port'
+ * ini setting. This is 11211 by default.
+ * - 'weight': This sets the weight of this server in this server
+ * group. http://php.net/manual/en/function.Memcache-addServer.php
+ * contains more information about the weight option.
+ * - 'timeout': The timeout for this server. By default, the timeout
+ * is 3 seconds.
+ *
+ * Example of redudant configuration with load balancing:
+ * This configuration makes it possible to lose both servers in the
+ * a-group or both servers in the b-group without losing any sessions.
+ * Note that sessions will be lost if one server is lost from both the
+ * a-group and the b-group.
+ *
+ * 'memcache_store.servers' => array(
+ * array(
+ * array('hostname' => 'mc_a1'),
+ * array('hostname' => 'mc_a2'),
+ * ),
+ * array(
+ * array('hostname' => 'mc_b1'),
+ * array('hostname' => 'mc_b2'),
+ * ),
+ * ),
+ *
+ * Example of simple configuration with only one memcache server,
+ * running on the same computer as the web server:
+ * Note that all sessions will be lost if the memcache server crashes.
+ *
+ * 'memcache_store.servers' => array(
+ * array(
+ * array('hostname' => 'localhost'),
+ * ),
+ * ),
+ *
+ */
+ 'memcache_store.servers' => array(
+ array(
+ array('hostname' => 'localhost'),
+ ),
+ ),
+
+
+ /*
+ * This value is the duration data should be stored in memcache. Data
+ * will be dropped from the memcache servers when this time expires.
+ * The time will be reset every time the data is written to the
+ * memcache servers.
+ *
+ * This value should always be larger than the 'session.duration'
+ * option. Not doing this may result in the session being deleted from
+ * the memcache servers while it is still in use.
+ *
+ * Set this value to 0 if you don't want data to expire.
+ *
+ * Note: The oldest data will always be deleted if the memcache server
+ * runs out of storage space.
+ */
+ 'memcache_store.expires' => 36 * (60*60), // 36 hours.
+
+
+ /*
+ * Should signing of generated metadata be enabled by default.
+ *
+ * Metadata signing can also be enabled for a individual SP or IdP by setting the
+ * same option in the metadata for the SP or IdP.
+ */
+ 'metadata.sign.enable' => FALSE,
+
+ /*
+ * The default key & certificate which should be used to sign generated metadata. These
+ * are files stored in the cert dir.
+ * These values can be overridden by the options with the same names in the SP or
+ * IdP metadata.
+ *
+ * If these aren't specified here or in the metadata for the SP or IdP, then
+ * the 'certificate' and 'privatekey' option in the metadata will be used.
+ * if those aren't set, signing of metadata will fail.
+ */
+ 'metadata.sign.privatekey' => NULL,
+ 'metadata.sign.privatekey_pass' => NULL,
+ 'metadata.sign.certificate' => NULL,
+
+
+ /*
+ * Proxy to use for retrieving URLs.
+ *
+ * Example:
+ * 'proxy' => 'tcp://proxy.example.com:5100'
+ */
+ 'proxy' => NULL,
+
+);
diff --git a/inc/simplesamlphp/config-templates/ldap.php b/inc/simplesamlphp/config-templates/ldap.php
new file mode 100644
index 0000000..192278e
--- /dev/null
+++ b/inc/simplesamlphp/config-templates/ldap.php
@@ -0,0 +1,46 @@
+<?php
+/*
+ * Configuration for the LDAP authentication module.
+ *
+ * $Id: $
+ */
+
+$config = array (
+
+ /**
+ * LDAP configuration. This is only relevant if you use the LDAP authentication plugin.
+ *
+ * The attributes parameter is a list of attributes that should be retrieved.
+ * If the attributes parameter is set to null, all attributes will be retrieved.
+ */
+ 'auth.ldap.dnpattern' => 'uid=%username%,dc=feide,dc=no,ou=feide,dc=uninett,dc=no',
+ 'auth.ldap.hostname' => 'ldap.uninett.no',
+ 'auth.ldap.attributes' => null,
+ 'auth.ldap.enable_tls' => false,
+
+ /*
+ * Searching the DN of the user.
+ */
+
+ /* Set this to TRUE to enable searching. */
+ 'auth.ldap.search.enable' => FALSE,
+
+ /* The base DN for the search. */
+ 'auth.ldap.search.base' => NULL,
+
+ /* The attribute(s) to search for.
+ *
+ * This may be a single string, or an array of string. If this is an array, then any of the attributes
+ * in the array may match the value the user supplied as the username.
+ */
+ 'auth.ldap.search.attributes' => NULL,
+
+ /* The username & password the simpleSAMLphp should bind as before searching. If this is left
+ * as NULL, no bind will be performed before searching.
+ */
+ 'auth.ldap.search.username' => NULL,
+ 'auth.ldap.search.password' => NULL,
+
+);
+
+?>
diff --git a/inc/simplesamlphp/config-templates/ldapmulti.php b/inc/simplesamlphp/config-templates/ldapmulti.php
new file mode 100644
index 0000000..4042d64
--- /dev/null
+++ b/inc/simplesamlphp/config-templates/ldapmulti.php
@@ -0,0 +1,34 @@
+<?php
+
+/*
+ * Configuration for the multi-DN LDAP authentication module.
+ *
+ * $Id: ldapmulti.php 826 2008-08-20 14:14:08Z hans.zandbelt $
+ */
+
+$ldapmulti = array (
+
+ 'feide.no' => array(
+ 'description' => 'Feide',
+ /* for a description of options see equivalent options in ldap.php starting with auth.ldap. */
+ 'dnpattern' => 'uid=%username%,dc=feide,dc=no,ou=feide,dc=uninett,dc=no',
+ 'hostname' => 'ldap.uninett.no',
+ 'attributes' => NULL,
+ 'enable_tls' => FALSE,
+ 'search.enable' => FALSE,
+ 'search.base' => NULL,
+ 'search.attributes' => NULL,
+ 'search.username' => NULL,
+ 'search.password' => NULL,
+ ),
+
+ 'uninett.no' => array(
+ 'description' => 'UNINETT',
+ 'dnpattern' => 'uid=%username%,ou=people,dc=uninett,dc=no',
+ 'hostname' => 'ldap.uninett.no',
+ 'attributes' => NULL,
+ )
+
+);
+
+?>
diff --git a/inc/simplesamlphp/config-templates/translation.php b/inc/simplesamlphp/config-templates/translation.php
new file mode 100644
index 0000000..9dcb1c4
--- /dev/null
+++ b/inc/simplesamlphp/config-templates/translation.php
@@ -0,0 +1,17 @@
+<?php
+/*
+ * Configuration
+ *
+ * $Id: translation.php 2100 2010-01-12 11:33:22Z andreassolberg $
+ */
+
+$config = array (
+
+ 'application' => 'simplesamlphp',
+ 'baseurl' => 'https://translation.rnd.feide.no/simplesaml',
+ 'key' => '_e7224d54cda84434e25ef087e5c22c1fa5f6ae87cc',
+ 'secret' => '_0e29f782d295bc9782112981f654f1db58174d19d7',
+
+);
+
+?>
diff --git a/inc/simplesamlphp/config/acl.php b/inc/simplesamlphp/config/acl.php
new file mode 100644
index 0000000..ce901ce
--- /dev/null
+++ b/inc/simplesamlphp/config/acl.php
@@ -0,0 +1,61 @@
+<?php
+
+/*
+ * This file defines "named" access control lists, which can
+ * be reused in several places.
+ */
+$config = array(
+
+ 'adminlist' => array(
+ //array('allow', 'equals', 'mail', 'admin1@example.org'),
+ //array('allow', 'has', 'groups', 'admin'),
+ /* The default action is to deny access. */
+ ),
+
+ 'example-simple' => array(
+ array('allow', 'equals', 'mail', 'admin1@example.org'),
+ array('allow', 'equals', 'mail', 'admin2@example.org'),
+ /* The default action is to deny access. */
+ ),
+
+ 'example-deny-some' => array(
+ array('deny', 'equals', 'mail', 'eviluser@example.org'),
+ array('allow'), /* Allow everybody else. */
+ ),
+
+ 'example-maildomain' => array(
+ array('allow', 'equals-preg', 'mail', '/@example\.org$/'),
+ /* The default action is to deny access. */
+ ),
+
+ 'example-allow-employees' => array(
+ array('allow', 'has', 'eduPersonAffiliation', 'employee'),
+ /* The default action is to deny access. */
+ ),
+
+ 'example-allow-employees-not-students' => array(
+ array('deny', 'has', 'eduPersonAffiliation', 'student'),
+ array('allow', 'has', 'eduPersonAffiliation', 'employee'),
+ /* The default action is to deny access. */
+ ),
+
+ 'example-deny-student-except-one' => array(
+ array('deny', 'and',
+ array('has', 'eduPersonAffiliation', 'student'),
+ array('not', 'equals', 'mail', 'user@example.org'),
+ ),
+ array('allow'),
+ ),
+
+ 'example-allow-or' => array(
+ array('allow', 'or',
+ array('equals', 'eduPersonAffiliation', 'student', 'member'),
+ array('equals', 'mail', 'someuser@example2.org'),
+ ),
+ ),
+
+ 'example-allow-all' => array(
+ array('allow'),
+ ),
+
+); \ No newline at end of file
diff --git a/inc/simplesamlphp/config/authmemcookie.php b/inc/simplesamlphp/config/authmemcookie.php
new file mode 100644
index 0000000..036e8c2
--- /dev/null
+++ b/inc/simplesamlphp/config/authmemcookie.php
@@ -0,0 +1,86 @@
+<?php
+
+/**
+ * This is the configuration file for the Auth MemCookie example.
+ */
+
+$config = array(
+
+ /*
+ * What type of login Auth MemCookie will use.
+ * Can be either 'authsource', 'saml2' or 'shib13'.
+ *
+ * For backwards compatibility, the default value if unset is 'saml2'.
+ * New installations should use 'authsource'.
+ */
+ 'loginmethod' => 'authsource',
+
+ /*
+ * The authentication source that should be used.
+ *
+ * This must be one of the authentication sources configured in config/authsources.php.
+ */
+ 'authsource' => 'default-sp',
+
+ /*
+ * This is the name of the cookie we should save the session id in. The value of this option must match the
+ * Auth_memCookie_CookieName option in the Auth MemCookie configuration. The default value is 'AuthMemCookie'.
+ *
+ * Default:
+ * 'cookiename' => 'AuthMemCookie',
+ */
+ 'cookiename' => 'AuthMemCookie',
+
+ /*
+ * This option specifies the name of the attribute which contains the username of the user. It must be set to
+ * a valid attribute name.
+ *
+ * Examples:
+ * 'username' => 'uid', // LDAP attribute for user id.
+ * 'username' => 'mail', // LDAP attribute for email address.
+ *
+ * Default:
+ * No default value.
+ */
+ 'username' => NULL,
+
+ /*
+ * This option specifies the name of the attribute which contains the groups of the user. Set this option to
+ * NULL if you don't want to include any groups.
+ *
+ * Example:
+ * 'groups' => 'edupersonaffiliation',
+ *
+ * Default:
+ * 'groups' => NULL,
+ */
+ 'groups' => NULL,
+
+ /*
+ * This option contains the hostnames or IP addresses of the memcache servers where we should store the
+ * authentication information. Separator is a comma. This option should match the address part of the
+ * Auth_memCookie_Memcached_AddrPort option in the Auth MemCookie configuration.
+ *
+ * Examples:
+ * 'memcache.host' => '192.168.93.52',
+ * 'memcache.host' => 'memcache.example.org',
+ * 'memcache.host' => 'memcache1.example.org,memcache2.example.org'
+ *
+ * Default:
+ * 'memcache.host' => '127.0.0.1',
+ */
+ 'memcache.host' => '127.0.0.1',
+
+ /*
+ * This option contains the port number of the memcache server where we should store the
+ * authentication information. This option should match the port part of the
+ * Auth_memCookie_Memcached_AddrPort option in the Auth MemCookie configuration.
+ *
+ * Default:
+ * 'memcache.port' => 11211,
+ */
+ 'memcache.port' => 11211,
+
+);
+
+?> \ No newline at end of file
diff --git a/inc/simplesamlphp/config/authsources.php b/inc/simplesamlphp/config/authsources.php
new file mode 100644
index 0000000..79b18d1
--- /dev/null
+++ b/inc/simplesamlphp/config/authsources.php
@@ -0,0 +1,350 @@
+<?php
+
+$config = array(
+
+ // This is a authentication source which handles admin authentication.
+ 'admin' => array(
+ // The default is to use core:AdminPassword, but it can be replaced with
+ // any authentication source.
+
+ 'core:AdminPassword',
+ ),
+
+
+ // An authentication source which can authenticate against both SAML 2.0
+ // and Shibboleth 1.3 IdPs.
+ 'default-sp' => array(
+ 'saml:SP',
+
+ // The entity ID of this SP.
+ // Can be NULL/unset, in which case an entity ID is generated based on the metadata URL.
+ 'entityID' => NULL,
+
+ // The entity ID of the IdP this should SP should contact.
+ // Can be NULL/unset, in which case the user will be shown a list of available IdPs.
+ 'idp' => NULL,
+
+ // The URL to the discovery service.
+ // Can be NULL/unset, in which case a builtin discovery service will be used.
+ 'discoURL' => NULL,
+
+ // Force persistent NameID
+ 'NameIDFormat' => 'urn:oasis:names:tc:SAML:2.0:nameid-format:persistent',
+ ),
+
+
+ /*
+ 'example-sql' => array(
+ 'sqlauth:SQL',
+ 'dsn' => 'pgsql:host=sql.example.org;port=5432;dbname=simplesaml',
+ 'username' => 'simplesaml',
+ 'password' => 'secretpassword',
+ 'query' => 'SELECT "username", "name", "email" FROM "users" WHERE "username" = :username AND "password" = :password',
+ ),
+ */
+
+ /*
+ 'example-static' => array(
+ 'exampleauth:Static',
+ 'uid' => array('testuser'),
+ 'eduPersonAffiliation' => array('member', 'employee'),
+ 'cn' => array('Test User'),
+ ),
+ */
+
+ /*
+ 'example-userpass' => array(
+ 'exampleauth:UserPass',
+
+ // Give the user an option to save their username for future login attempts
+ // And when enabled, what should the default be, to save the username or not
+ //'remember.username.enabled' => FALSE,
+ //'remember.username.checked' => FALSE,
+
+ 'student:studentpass' => array(
+ 'uid' => array('test'),
+ 'eduPersonAffiliation' => array('member', 'student'),
+ ),
+ 'employee:employeepass' => array(
+ 'uid' => array('employee'),
+ 'eduPersonAffiliation' => array('member', 'employee'),
+ ),
+ ),
+ */
+
+ /*
+ 'crypto-hash' => array(
+ 'authcrypt:Hash',
+ // hashed version of 'verysecret', made with bin/pwgen.php
+ 'professor:{SSHA256}P6FDTEEIY2EnER9a6P2GwHhI5JDrwBgjQ913oVQjBngmCtrNBUMowA==' => array(
+ 'uid' => array('prof_a'),
+ 'eduPersonAffiliation' => array('member', 'employee', 'board'),
+ ),
+ ),
+ */
+
+ /*
+ 'htpasswd' => array(
+ 'authcrypt:Htpasswd',
+ 'htpasswd_file' => '/var/www/foo.edu/legacy_app/.htpasswd',
+ 'static_attributes' => array(
+ 'eduPersonAffiliation' => array('member', 'employee'),
+ 'Organization' => array('University of Foo'),
+ ),
+ ),
+ */
+
+ /*
+ // This authentication source serves as an example of integration with an
+ // external authentication engine. Take a look at the comment in the beginning
+ // of modules/exampleauth/lib/Auth/Source/External.php for a description of
+ // how to adjust it to your own site.
+ 'example-external' => array(
+ 'exampleauth:External',
+ ),
+ */
+
+ /*
+ 'yubikey' => array(
+ 'authYubiKey:YubiKey',
+ 'id' => '000',
+ // 'key' => '012345678',
+ ),
+ */
+
+ /*
+ 'openid' => array(
+ 'openid:OpenIDConsumer',
+ 'attributes.required' => array('nickname'),
+ 'attributes.optional' => array('fullname', 'email',),
+ // 'sreg.validate' => FALSE,
+ 'attributes.ax_required' => array('http://axschema.org/namePerson/friendly'),
+ 'attributes.ax_optional' => array('http://axschema.org/namePerson','http://axschema.org/contact/email'),
+ // Prefer HTTP redirect over POST
+ // 'prefer_http_redirect' => FALSE,
+ ),
+ */
+
+ /*
+ // Example of an authsource that authenticates against Google.
+ // See: http://code.google.com/apis/accounts/docs/OpenID.html
+ 'google' => array(
+ 'openid:OpenIDConsumer',
+ // Googles OpenID endpoint.
+ 'target' => 'https://www.google.com/accounts/o8/id',
+ // Custom realm
+ // 'realm' => 'http://*.example.org',
+ // Attributes that google can supply.
+ 'attributes.ax_required' => array(
+ //'http://axschema.org/namePerson/first',
+ //'http://axschema.org/namePerson/last',
+ //'http://axschema.org/contact/email',
+ //'http://axschema.org/contact/country/home',
+ //'http://axschema.org/pref/language',
+ ),
+ // custom extension arguments
+ 'extension.args' => array(
+ //'http://specs.openid.net/extensions/ui/1.0' => array(
+ // 'mode' => 'popup',
+ // 'icon' => 'true',
+ //),
+ ),
+ ),
+ */
+
+ /*
+ 'papi' => array(
+ 'authpapi:PAPI',
+ ),
+ */
+
+
+ /*
+ 'facebook' => array(
+ 'authfacebook:Facebook',
+ // Register your Facebook application on http://www.facebook.com/developers
+ // App ID or API key (requests with App ID should be faster; https://github.com/facebook/php-sdk/issues/214)
+ 'api_key' => 'xxxxxxxxxxxxxxxx',
+ // App Secret
+ 'secret' => 'xxxxxxxxxxxxxxxx',
+ // which additional data permissions to request from user
+ // see http://developers.facebook.com/docs/authentication/permissions/ for the full list
+ // 'req_perms' => 'email,user_birthday',
+ ),
+ */
+
+ /*
+ // LinkedIn OAuth Authentication API.
+ // Register your application to get an API key here:
+ // https://www.linkedin.com/secure/developer
+ 'linkedin' => array(
+ 'authlinkedin:LinkedIn',
+ 'key' => 'xxxxxxxxxxxxxxxx',
+ 'secret' => 'xxxxxxxxxxxxxxxx',
+ ),
+ */
+
+ /*
+ // Twitter OAuth Authentication API.
+ // Register your application to get an API key here:
+ // http://twitter.com/oauth_clients
+ 'twitter' => array(
+ 'authtwitter:Twitter',
+ 'key' => 'xxxxxxxxxxxxxxxx',
+ 'secret' => 'xxxxxxxxxxxxxxxx',
+ ),
+ */
+
+ /*
+ // MySpace OAuth Authentication API.
+ // Register your application to get an API key here:
+ // http://developer.myspace.com/
+ 'myspace' => array(
+ 'authmyspace:MySpace',
+ 'key' => 'xxxxxxxxxxxxxxxx',
+ 'secret' => 'xxxxxxxxxxxxxxxx',
+ ),
+ */
+
+ /*
+ // Windows Live ID Authentication API.
+ // Register your application to get an API key here:
+ // https://manage.dev.live.com
+ 'windowslive' => array(
+ 'authwindowslive:LiveID',
+ 'key' => 'xxxxxxxxxxxxxxxx',
+ 'secret' => 'xxxxxxxxxxxxxxxx',
+ ),
+ */
+
+ /*
+ // Example of a LDAP authentication source.
+ 'example-ldap' => array(
+ 'ldap:LDAP',
+
+ // Give the user an option to save their username for future login attempts
+ // And when enabled, what should the default be, to save the username or not
+ //'remember.username.enabled' => FALSE,
+ //'remember.username.checked' => FALSE,
+
+ // The hostname of the LDAP server.
+ 'hostname' => 'ldap.example.org',
+
+ // Whether SSL/TLS should be used when contacting the LDAP server.
+ 'enable_tls' => FALSE,
+
+ // Whether debug output from the LDAP library should be enabled.
+ // Default is FALSE.
+ 'debug' => FALSE,
+
+ // The timeout for accessing the LDAP server, in seconds.
+ // The default is 0, which means no timeout.
+ 'timeout' => 0,
+
+ // Which attributes should be retrieved from the LDAP server.
+ // This can be an array of attribute names, or NULL, in which case
+ // all attributes are fetched.
+ 'attributes' => NULL,
+
+ // The pattern which should be used to create the users DN given the username.
+ // %username% in this pattern will be replaced with the users username.
+ //
+ // This option is not used if the search.enable option is set to TRUE.
+ 'dnpattern' => 'uid=%username%,ou=people,dc=example,dc=org',
+
+ // As an alternative to specifying a pattern for the users DN, it is possible to
+ // search for the username in a set of attributes. This is enabled by this option.
+ 'search.enable' => FALSE,
+
+ // The DN which will be used as a base for the search.
+ // This can be a single string, in which case only that DN is searched, or an
+ // array of strings, in which case they will be searched in the order given.
+ 'search.base' => 'ou=people,dc=example,dc=org',
+
+ // The attribute(s) the username should match against.
+ //
+ // This is an array with one or more attribute names. Any of the attributes in
+ // the array may match the value the username.
+ 'search.attributes' => array('uid', 'mail'),
+
+ // The username & password the simpleSAMLphp should bind to before searching. If
+ // this is left as NULL, no bind will be performed before searching.
+ 'search.username' => NULL,
+ 'search.password' => NULL,
+
+ // If the directory uses privilege separation,
+ // the authenticated user may not be able to retrieve
+ // all required attribures, a privileged entity is required
+ // to get them. This is enabled with this option.
+ 'priv.read' => FALSE,
+
+ // The DN & password the simpleSAMLphp should bind to before
+ // retrieving attributes. These options are required if
+ // 'priv.read' is set to TRUE.
+ 'priv.username' => NULL,
+ 'priv.password' => NULL,
+
+ ),
+ */
+
+ /*
+ // Example of an LDAPMulti authentication source.
+ 'example-ldapmulti' => array(
+ 'ldap:LDAPMulti',
+
+ // Give the user an option to save their username for future login attempts
+ // And when enabled, what should the default be, to save the username or not
+ //'remember.username.enabled' => FALSE,
+ //'remember.username.checked' => FALSE,
+
+ // The way the organization as part of the username should be handled.
+ // Three possible values:
+ // - 'none': No handling of the organization. Allows '@' to be part
+ // of the username.
+ // - 'allow': Will allow users to type 'username@organization'.
+ // - 'force': Force users to type 'username@organization'. The dropdown
+ // list will be hidden.
+ //
+ // The default is 'none'.
+ 'username_organization_method' => 'none',
+
+ // Whether the organization should be included as part of the username
+ // when authenticating. If this is set to TRUE, the username will be on
+ // the form <username>@<organization identifier>. If this is FALSE, the
+ // username will be used as the user enters it.
+ //
+ // The default is FALSE.
+ 'include_organization_in_username' => FALSE,
+
+ // A list of available LDAP servers.
+ //
+ // The index is an identifier for the organization/group. When
+ // 'username_organization_method' is set to something other than 'none',
+ // the organization-part of the username is matched against the index.
+ //
+ // The value of each element is an array in the same format as an LDAP
+ // authentication source.
+ 'employees' => array(
+ // A short name/description for this group. Will be shown in a dropdown list
+ // when the user logs on.
+ //
+ // This option can be a string or an array with language => text mappings.
+ 'description' => 'Employees',
+
+ // The rest of the options are the same as those available for
+ // the LDAP authentication source.
+ 'hostname' => 'ldap.employees.example.org',
+ 'dnpattern' => 'uid=%username%,ou=employees,dc=example,dc=org',
+ ),
+
+ 'students' => array(
+ 'description' => 'Students',
+
+ 'hostname' => 'ldap.students.example.org',
+ 'dnpattern' => 'uid=%username%,ou=students,dc=example,dc=org',
+ ),
+
+ ),
+ */
+
+);
diff --git a/inc/simplesamlphp/config/cas-ldap.php b/inc/simplesamlphp/config/cas-ldap.php
new file mode 100644
index 0000000..0eba48a
--- /dev/null
+++ b/inc/simplesamlphp/config/cas-ldap.php
@@ -0,0 +1,39 @@
+<?php
+/*
+ * The configuration of simpleSAMLphp
+ *
+ *
+ */
+
+$casldapconfig = array (
+ 'idpentityid.example.org' => array(
+ 'cas' => array(
+ 'login' => 'https://idpentityid.example.org/cas/login',
+ 'validate' => 'https://idpentityid.example.org/cas/validate',
+ ),
+ 'ldap' => array(
+ 'servers' => 'idpentityid.example.org',
+ 'enable_tls' => false,
+ 'searchbase' => 'dc=example,dc=org',
+ 'searchattributes' => 'uid',
+ 'attributes' => array('cn', 'mail'),
+ ),
+ ),
+ 'idpentityid2.example.org' => array(
+ 'cas' => array(
+ 'login' => 'https://idpentityid2.example.org/login',
+ 'validate' => 'https://idpentityid2.example.org/validate',
+ ),
+ 'ldap' => array(
+ 'servers' => 'ldap://idpentityid2.example.org',
+ 'enable_tls' => false,
+ 'searchbase' => 'ou=users,dc=example,dc=org',
+ 'searchattributes' => array('uid', 'mail'), # array for being able to login with either uid or mail.
+ 'attributes' => null,
+ 'priv_user_dn' => 'uid=admin,ou=users,dc=example,dc=org',
+ 'priv_user_pw' => 'xxxxx',
+ ),
+ ),
+
+);
+?> \ No newline at end of file
diff --git a/inc/simplesamlphp/config/config-login-auto.php b/inc/simplesamlphp/config/config-login-auto.php
new file mode 100644
index 0000000..2fd0741
--- /dev/null
+++ b/inc/simplesamlphp/config/config-login-auto.php
@@ -0,0 +1,68 @@
+<?php
+/*
+ * The configuration of the login-auto authentication module.
+ *
+ * $Id: config.php 451 2008-03-27 15:33:34Z olavmrk $
+ */
+
+$config = array (
+
+ /*
+ * This option enables or disables the login-auto authentication
+ * handler. This handler is implemented in 'www/auth/login-auto.php'.
+ *
+ * When this option is set to true, a user can go to the
+ * 'auth/login-auto.php' web page to be authenticated as an example
+ * user. The user will receive the attributes set in the
+ * 'auth.auto.attributes' option.
+ *
+ * WARNING: setting this option to true will make it possible to use
+ * this authenticator for all users, irrespectively of the 'auth'
+ * setting in the IdP's metadata. They can always use it by opening the
+ * 'auth/login-auto.php' webpage manually.
+ */
+ 'auth.auto.enable' => true,
+
+ /*
+ * This option configures which attributes the login-auto
+ * authentication handler will set for the user. It is an array of
+ * arrays. The name of the attribute is the index in the first array,
+ * and all the values for the attribute is given in the array
+ * referenced to by the name.
+ *
+ * Example:
+ * 'auth.auto.attributes' => array(
+ * 'edupersonaffiliation' => array('student', 'member'),
+ * 'uid' => array('example_uid'),
+ * 'mail' => array('example@example.com'),
+ * ),
+ */
+ 'auth.auto.attributes' => array(
+ 'edupersonaffiliation' => array('student', 'member'),
+ 'title' => array('Example user title'),
+ 'uid' => array('example_uid'),
+ 'mail' => array('example@example.com'),
+ 'cn' => array('Example user commonname'),
+ 'givenname' => array('Example user givenname'),
+ 'sn' => array("Example surname"),
+ ),
+
+ /*
+ * When this option is set to true, the login-auto authentication
+ * handler will ask for a username and a password. This can be used to
+ * test the IdP. The username and password isn't verified, and the
+ * user/script can enter anything.
+ */
+ 'auth.auto.ask_login' => false,
+
+ /*
+ * This option configures a delay in the login-auto authentication
+ * handler. The script will wait for the given number of milliseconds
+ * before authenticating the user. This can, for example, be used in
+ * a simple simulation of a slow LDAP server.
+ */
+ 'auth.auto.delay_login' => 0,
+);
+
+
+?> \ No newline at end of file
diff --git a/inc/simplesamlphp/config/config-login-feide.php b/inc/simplesamlphp/config/config-login-feide.php
new file mode 100644
index 0000000..7c437a0
--- /dev/null
+++ b/inc/simplesamlphp/config/config-login-feide.php
@@ -0,0 +1,39 @@
+<?php
+/*
+ * Configuration for the auth/login-feide.php login module.
+ *
+ * The configuration file is an array with multiple organizations. The user
+ * can select which organization he/she wants to log in with, with a drop-down
+ * menu in the user interface.
+ *
+ */
+
+$config = array (
+
+ 'orgldapconfig' => array(
+
+ 'example1.com' => array(
+ 'description' => 'Example Org 1',
+ 'searchbase' => 'cn=people,dc=example1,dc=com',
+ 'hostname' => 'ldaps://ldap.example1.com',
+ 'attributes' => null,
+
+ 'contactMail' => 'admin@example1.com',
+ 'contactURL' => 'http://admin.example1.com',
+
+ // System user to bind() before we do a search for eduPersonPrincipalName
+ 'adminUser' => 'uid=admin,dc=example1,dc=com',
+ 'adminPassword' => 'xxx',
+
+ ),
+ 'example1.com' => array(
+ 'description' => 'Example Org 1',
+ 'searchbase' => 'cn=people,dc=example1,dc=com',
+ 'hostname' => 'ldaps://ldap.example1.com',
+
+ 'attributes' => array('mail', 'street'),
+ ),
+ ),
+);
+
+?>
diff --git a/inc/simplesamlphp/config/config.php b/inc/simplesamlphp/config/config.php
new file mode 100644
index 0000000..989d84b
--- /dev/null
+++ b/inc/simplesamlphp/config/config.php
@@ -0,0 +1,645 @@
+<?php
+/*
+ * The configuration of simpleSAMLphp
+ *
+ * $Id: config.php 3171 2012-09-25 08:54:06Z jaimepc@gmail.com $
+ */
+
+$config = array (
+
+ /**
+ * Setup the following parameters to match the directory of your installation.
+ * See the user manual for more details.
+ *
+ * Valid format for baseurlpath is:
+ * [(http|https)://(hostname|fqdn)[:port]]/[path/to/simplesaml/]
+ * (note that it must end with a '/')
+ *
+ * The full url format is useful if your simpleSAMLphp setup is hosted behind
+ * a reverse proxy. In that case you can specify the external url here.
+ *
+ * Please note that simpleSAMLphp will then redirect all queries to the
+ * external url, no matter where you come from (direct access or via the
+ * reverse proxy).
+ */
+ 'baseurlpath' => 'simplesaml/',
+ 'certdir' => 'cert/',
+ 'loggingdir' => 'log/',
+ 'datadir' => 'data/',
+
+ /*
+ * A directory where simpleSAMLphp can save temporary files.
+ *
+ * SimpleSAMLphp will attempt to create this directory if it doesn't exist.
+ */
+ 'tempdir' => '/tmp/simplesaml',
+
+
+ /*
+ * If you enable this option, simpleSAMLphp will log all sent and received messages
+ * to the log file.
+ *
+ * This option also enables logging of the messages that are encrypted and decrypted.
+ *
+ * Note: The messages are logged with the DEBUG log level, so you also need to set
+ * the 'logging.level' option to LOG_DEBUG.
+ */
+ 'debug' => FALSE,
+
+
+ 'showerrors' => TRUE,
+
+ /**
+ * Custom error show function called from SimpleSAML_Error_Error::show.
+ * See docs/simplesamlphp-errorhandling.txt for function code example.
+ *
+ * Example:
+ * 'errors.show_function' => array('sspmod_example_Error_Show', 'show'),
+ */
+
+ /**
+ * This option allows you to enable validation of XML data against its
+ * schemas. A warning will be written to the log if validation fails.
+ */
+ 'debug.validatexml' => FALSE,
+
+ /**
+ * This password must be kept secret, and modified from the default value 123.
+ * This password will give access to the installation page of simpleSAMLphp with
+ * metadata listing and diagnostics pages.
+ * You can also put a hash here; run "bin/pwgen.php" to generate one.
+ */
+ 'auth.adminpassword' => '123',
+ 'admin.protectindexpage' => false,
+ 'admin.protectmetadata' => false,
+
+ /**
+ * This is a secret salt used by simpleSAMLphp when it needs to generate a secure hash
+ * of a value. It must be changed from its default value to a secret value. The value of
+ * 'secretsalt' can be any valid string of any length.
+ *
+ * A possible way to generate a random salt is by running the following command from a unix shell:
+ * tr -c -d '0123456789abcdefghijklmnopqrstuvwxyz' </dev/urandom | dd bs=32 count=1 2>/dev/null;echo
+ */
+ 'secretsalt' => 'defaultsecretsalt',
+
+ /*
+ * Some information about the technical persons running this installation.
+ * The email address will be used as the recipient address for error reports, and
+ * also as the technical contact in generated metadata.
+ */
+ 'technicalcontact_name' => 'Administrator',
+ 'technicalcontact_email' => 'na@example.org',
+
+ /*
+ * The timezone of the server. This option should be set to the timezone you want
+ * simpleSAMLphp to report the time in. The default is to guess the timezone based
+ * on your system timezone.
+ *
+ * See this page for a list of valid timezones: http://php.net/manual/en/timezones.php
+ */
+ 'timezone' => NULL,
+
+ /*
+ * Logging.
+ *
+ * define the minimum log level to log
+ * SimpleSAML_Logger::ERR No statistics, only errors
+ * SimpleSAML_Logger::WARNING No statistics, only warnings/errors
+ * SimpleSAML_Logger::NOTICE Statistics and errors
+ * SimpleSAML_Logger::INFO Verbose logs
+ * SimpleSAML_Logger::DEBUG Full debug logs - not reccomended for production
+ *
+ * Choose logging handler.
+ *
+ * Options: [syslog,file,errorlog]
+ *
+ */
+ 'logging.level' => SimpleSAML_Logger::NOTICE,
+ 'logging.handler' => 'syslog',
+
+ /*
+ * Choose which facility should be used when logging with syslog.
+ *
+ * These can be used for filtering the syslog output from simpleSAMLphp into its
+ * own file by configuring the syslog daemon.
+ *
+ * See the documentation for openlog (http://php.net/manual/en/function.openlog.php) for available
+ * facilities. Note that only LOG_USER is valid on windows.
+ *
+ * The default is to use LOG_LOCAL5 if available, and fall back to LOG_USER if not.
+ */
+ 'logging.facility' => defined('LOG_LOCAL5') ? constant('LOG_LOCAL5') : LOG_USER,
+
+ /*
+ * The process name that should be used when logging to syslog.
+ * The value is also written out by the other logging handlers.
+ */
+ 'logging.processname' => 'simplesamlphp',
+
+ /* Logging: file - Logfilename in the loggingdir from above.
+ */
+ 'logging.logfile' => 'simplesamlphp.log',
+
+ /* (New) statistics output configuration.
+ *
+ * This is an array of outputs. Each output has at least a 'class' option, which
+ * selects the output.
+ */
+ 'statistics.out' => array(
+ // Log statistics to the normal log.
+ /*
+ array(
+ 'class' => 'core:Log',
+ 'level' => 'notice',
+ ),
+ */
+ // Log statistics to files in a directory. One file per day.
+ /*
+ array(
+ 'class' => 'core:File',
+ 'directory' => '/var/log/stats',
+ ),
+ */
+ ),
+
+
+ /*
+ * Enable
+ *
+ * Which functionality in simpleSAMLphp do you want to enable. Normally you would enable only
+ * one of the functionalities below, but in some cases you could run multiple functionalities.
+ * In example when you are setting up a federation bridge.
+ */
+ 'enable.saml20-idp' => false,
+ 'enable.shib13-idp' => false,
+ 'enable.adfs-idp' => false,
+ 'enable.wsfed-sp' => false,
+ 'enable.authmemcookie' => false,
+
+ /*
+ * This value is the duration of the session in seconds. Make sure that the time duration of
+ * cookies both at the SP and the IdP exceeds this duration.
+ */
+ 'session.duration' => 8 * (60*60), // 8 hours.
+ 'session.requestcache' => 4 * (60*60), // 4 hours
+
+ /*
+ * Sets the duration, in seconds, data should be stored in the datastore. As the datastore is used for
+ * login and logout requests, thid option will control the maximum time these operations can take.
+ * The default is 4 hours (4*60*60) seconds, which should be more than enough for these operations.
+ */
+ 'session.datastore.timeout' => (4*60*60), // 4 hours
+
+ /*
+ * Sets the duration, in seconds, auth state should be stored.
+ */
+ 'session.state.timeout' => (60*60), // 1 hour
+
+ /*
+ * Option to override the default settings for the session cookie name
+ */
+ 'session.cookie.name' => 'SimpleSAMLSessionID',
+
+ /*
+ * Expiration time for the session cookie, in seconds.
+ *
+ * Defaults to 0, which means that the cookie expires when the browser is closed.
+ *
+ * Example:
+ * 'session.cookie.lifetime' => 30*60,
+ */
+ 'session.cookie.lifetime' => 0,
+
+ /*
+ * Limit the path of the cookies.
+ *
+ * Can be used to limit the path of the cookies to a specific subdirectory.
+ *
+ * Example:
+ * 'session.cookie.path' => '/simplesaml/',
+ */
+ 'session.cookie.path' => '/',
+
+ /*
+ * Cookie domain.
+ *
+ * Can be used to make the session cookie available to several domains.
+ *
+ * Example:
+ * 'session.cookie.domain' => '.example.org',
+ */
+ 'session.cookie.domain' => NULL,
+
+ /*
+ * Set the secure flag in the cookie.
+ *
+ * Set this to TRUE if the user only accesses your service
+ * through https. If the user can access the service through
+ * both http and https, this must be set to FALSE.
+ */
+ 'session.cookie.secure' => FALSE,
+
+ /*
+ * When set to FALSE fallback to transient session on session initialization
+ * failure, throw exception otherwise.
+ */
+ 'session.disable_fallback' => FALSE,
+
+ /*
+ * Enable secure POST from HTTPS to HTTP.
+ *
+ * If you have some SP's on HTTP and IdP is normally on HTTPS, this option
+ * enables secure POSTing to HTTP endpoint without warning from browser.
+ *
+ * For this to work, module.php/core/postredirect.php must be accessible
+ * also via HTTP on IdP, e.g. if your IdP is on
+ * https://idp.example.org/ssp/, then
+ * http://idp.example.org/ssp/module.php/core/postredirect.php must be accessible.
+ */
+ 'enable.http_post' => FALSE,
+
+ /*
+ * Options to override the default settings for php sessions.
+ */
+ 'session.phpsession.cookiename' => null,
+ 'session.phpsession.savepath' => null,
+ 'session.phpsession.httponly' => FALSE,
+
+ /*
+ * Option to override the default settings for the auth token cookie
+ */
+ 'session.authtoken.cookiename' => 'SimpleSAMLAuthToken',
+
+ /*
+ * Languages available, RTL languages, and what language is default
+ */
+ 'language.available' => array('en', 'no', 'nn', 'se', 'da', 'de', 'sv', 'fi', 'es', 'fr', 'it', 'nl', 'lb', 'cs', 'sl', 'lt', 'hr', 'hu', 'pl', 'pt', 'pt-br', 'tr', 'ja', 'zh', 'zh-tw', 'ru', 'et', 'he', 'id', 'sr'),
+ 'language.rtl' => array('ar','dv','fa','ur','he'),
+ 'language.default' => 'en',
+
+ /**
+ * Custom getLanguage function called from SimpleSAML_XHTML_Template::getLanguage().
+ * Function should return language code of one of the available languages or NULL.
+ * See SimpleSAML_XHTML_Template::getLanguage() source code for more info.
+ *
+ * This option can be used to implement a custom function for determining
+ * the default language for the user.
+ *
+ * Example:
+ * 'language.get_language_function' => array('sspmod_example_Template', 'getLanguage'),
+ */
+
+ /*
+ * Extra dictionary for attribute names.
+ * This can be used to define local attributes.
+ *
+ * The format of the parameter is a string with <module>:<dictionary>.
+ *
+ * Specifying this option will cause us to look for modules/<module>/dictionaries/<dictionary>.definition.json
+ * The dictionary should look something like:
+ *
+ * {
+ * "firstattribute": {
+ * "en": "English name",
+ * "no": "Norwegian name"
+ * },
+ * "secondattribute": {
+ * "en": "English name",
+ * "no": "Norwegian name"
+ * }
+ * }
+ *
+ * Note that all attribute names in the dictionary must in lowercase.
+ *
+ * Example: 'attributes.extradictionary' => 'ourmodule:ourattributes',
+ */
+ 'attributes.extradictionary' => NULL,
+
+ /*
+ * Which theme directory should be used?
+ */
+ 'theme.use' => 'default',
+
+
+ /*
+ * Default IdP for WS-Fed.
+ */
+ 'default-wsfed-idp' => 'urn:federation:pingfederate:localhost',
+
+ /*
+ * Whether the discovery service should allow the user to save his choice of IdP.
+ */
+ 'idpdisco.enableremember' => TRUE,
+ 'idpdisco.rememberchecked' => TRUE,
+
+ // Disco service only accepts entities it knows.
+ 'idpdisco.validate' => TRUE,
+
+ 'idpdisco.extDiscoveryStorage' => NULL,
+
+ /*
+ * IdP Discovery service look configuration.
+ * Wether to display a list of idp or to display a dropdown box. For many IdP' a dropdown box
+ * gives the best use experience.
+ *
+ * When using dropdown box a cookie is used to highlight the previously chosen IdP in the dropdown.
+ * This makes it easier for the user to choose the IdP
+ *
+ * Options: [links,dropdown]
+ *
+ */
+ 'idpdisco.layout' => 'dropdown',
+
+ /*
+ * Whether simpleSAMLphp should sign the response or the assertion in SAML 1.1 authentication
+ * responses.
+ *
+ * The default is to sign the assertion element, but that can be overridden by setting this
+ * option to TRUE. It can also be overridden on a pr. SP basis by adding an option with the
+ * same name to the metadata of the SP.
+ */
+ 'shib13.signresponse' => TRUE,
+
+
+
+ /*
+ * Authentication processing filters that will be executed for all IdPs
+ * Both Shibboleth and SAML 2.0
+ */
+ 'authproc.idp' => array(
+ /* Enable the authproc filter below to add URN Prefixces to all attributes
+ 10 => array(
+ 'class' => 'core:AttributeMap', 'addurnprefix'
+ ), */
+ /* Enable the authproc filter below to automatically generated eduPersonTargetedID.
+ 20 => 'core:TargetedID',
+ */
+
+ // Adopts language from attribute to use in UI
+ 30 => 'core:LanguageAdaptor',
+
+ /* Add a realm attribute from edupersonprincipalname
+ 40 => 'core:AttributeRealm',
+ */
+ 45 => array(
+ 'class' => 'core:StatisticsWithAttribute',
+ 'attributename' => 'realm',
+ 'type' => 'saml20-idp-SSO',
+ ),
+
+ /* When called without parameters, it will fallback to filter attributes ‹the old way›
+ * by checking the 'attributes' parameter in metadata on IdP hosted and SP remote.
+ */
+ 50 => 'core:AttributeLimit',
+
+ /*
+ * Search attribute "distinguishedName" for pattern and replaces if found
+
+ 60 => array(
+ 'class' => 'core:AttributeAlter',
+ 'pattern' => '/OU=studerende/',
+ 'replacement' => 'Student',
+ 'subject' => 'distinguishedName',
+ '%replace',
+ ),
+ */
+
+ /*
+ * Consent module is enabled (with no permanent storage, using cookies).
+
+ 90 => array(
+ 'class' => 'consent:Consent',
+ 'store' => 'consent:Cookie',
+ 'focus' => 'yes',
+ 'checked' => TRUE
+ ),
+ */
+ // If language is set in Consent module it will be added as an attribute.
+ 99 => 'core:LanguageAdaptor',
+ ),
+ /*
+ * Authentication processing filters that will be executed for all SPs
+ * Both Shibboleth and SAML 2.0
+ */
+ 'authproc.sp' => array(
+ /*
+ 10 => array(
+ 'class' => 'core:AttributeMap', 'removeurnprefix'
+ ),
+ */
+
+ /* Exposes nameid */
+ 10 => array(
+ 'class' => 'saml:NameIDAttribute',
+ 'format' => '%V',
+ 'attribute' => 'NameID',
+ ),
+
+ /*
+ * Generate the 'group' attribute populated from other variables, including eduPersonAffiliation.
+ */
+ 60 => array('class' => 'core:GenerateGroups', 'eduPersonAffiliation'),
+ // All users will be members of 'users' and 'members'
+ 61 => array('class' => 'core:AttributeAdd', 'groups' => array('users', 'members')),
+
+ // Adopts language from attribute to use in UI
+ 90 => 'core:LanguageAdaptor',
+
+ ),
+
+
+ /*
+ * This option configures the metadata sources. The metadata sources is given as an array with
+ * different metadata sources. When searching for metadata, simpleSAMPphp will search through
+ * the array from start to end.
+ *
+ * Each element in the array is an associative array which configures the metadata source.
+ * The type of the metadata source is given by the 'type' element. For each type we have
+ * different configuration options.
+ *
+ * Flat file metadata handler:
+ * - 'type': This is always 'flatfile'.
+ * - 'directory': The directory we will load the metadata files from. The default value for
+ * this option is the value of the 'metadatadir' configuration option, or
+ * 'metadata/' if that option is unset.
+ *
+ * XML metadata handler:
+ * This metadata handler parses an XML file with either an EntityDescriptor element or an
+ * EntitiesDescriptor element. The XML file may be stored locally, or (for debugging) on a remote
+ * web server.
+ * The XML hetadata handler defines the following options:
+ * - 'type': This is always 'xml'.
+ * - 'file': Path to the XML file with the metadata.
+ * - 'url': The url to fetch metadata from. THIS IS ONLY FOR DEBUGGING - THERE IS NO CACHING OF THE RESPONSE.
+ *
+ *
+ * Examples:
+ *
+ * This example defines two flatfile sources. One is the default metadata directory, the other
+ * is a metadata directory with autogenerated metadata files.
+ *
+ * 'metadata.sources' => array(
+ * array('type' => 'flatfile'),
+ * array('type' => 'flatfile', 'directory' => 'metadata-generated'),
+ * ),
+ *
+ * This example defines a flatfile source and an XML source.
+ * 'metadata.sources' => array(
+ * array('type' => 'flatfile'),
+ * array('type' => 'xml', 'file' => 'idp.example.org-idpMeta.xml'),
+ * ),
+ *
+ *
+ * Default:
+ * 'metadata.sources' => array(
+ * array('type' => 'flatfile')
+ * ),
+ */
+ 'metadata.sources' => array(
+ array('type' => 'flatfile'),
+ ),
+
+
+ /*
+ * Configure the datastore for simpleSAMLphp.
+ *
+ * - 'phpsession': Limited datastore, which uses the PHP session.
+ * - 'memcache': Key-value datastore, based on memcache.
+ * - 'sql': SQL datastore, using PDO.
+ *
+ * The default datastore is 'phpsession'.
+ *
+ * (This option replaces the old 'session.handler'-option.)
+ */
+ 'store.type' => 'phpsession',
+
+
+ /*
+ * The DSN the sql datastore should connect to.
+ *
+ * See http://www.php.net/manual/en/pdo.drivers.php for the various
+ * syntaxes.
+ */
+ 'store.sql.dsn' => 'sqlite:/path/to/sqlitedatabase.sq3',
+
+ /*
+ * The username and password to use when connecting to the database.
+ */
+ 'store.sql.username' => NULL,
+ 'store.sql.password' => NULL,
+
+ /*
+ * The prefix we should use on our tables.
+ */
+ 'store.sql.prefix' => 'simpleSAMLphp',
+
+
+ /*
+ * Configuration for the MemcacheStore class. This allows you to store
+ * multiple redudant copies of sessions on different memcache servers.
+ *
+ * 'memcache_store.servers' is an array of server groups. Every data
+ * item will be mirrored in every server group.
+ *
+ * Each server group is an array of servers. The data items will be
+ * load-balanced between all servers in each server group.
+ *
+ * Each server is an array of parameters for the server. The following
+ * options are available:
+ * - 'hostname': This is the hostname or ip address where the
+ * memcache server runs. This is the only required option.
+ * - 'port': This is the port number of the memcache server. If this
+ * option isn't set, then we will use the 'memcache.default_port'
+ * ini setting. This is 11211 by default.
+ * - 'weight': This sets the weight of this server in this server
+ * group. http://php.net/manual/en/function.Memcache-addServer.php
+ * contains more information about the weight option.
+ * - 'timeout': The timeout for this server. By default, the timeout
+ * is 3 seconds.
+ *
+ * Example of redudant configuration with load balancing:
+ * This configuration makes it possible to lose both servers in the
+ * a-group or both servers in the b-group without losing any sessions.
+ * Note that sessions will be lost if one server is lost from both the
+ * a-group and the b-group.
+ *
+ * 'memcache_store.servers' => array(
+ * array(
+ * array('hostname' => 'mc_a1'),
+ * array('hostname' => 'mc_a2'),
+ * ),
+ * array(
+ * array('hostname' => 'mc_b1'),
+ * array('hostname' => 'mc_b2'),
+ * ),
+ * ),
+ *
+ * Example of simple configuration with only one memcache server,
+ * running on the same computer as the web server:
+ * Note that all sessions will be lost if the memcache server crashes.
+ *
+ * 'memcache_store.servers' => array(
+ * array(
+ * array('hostname' => 'localhost'),
+ * ),
+ * ),
+ *
+ */
+ 'memcache_store.servers' => array(
+ array(
+ array('hostname' => 'localhost'),
+ ),
+ ),
+
+
+ /*
+ * This value is the duration data should be stored in memcache. Data
+ * will be dropped from the memcache servers when this time expires.
+ * The time will be reset every time the data is written to the
+ * memcache servers.
+ *
+ * This value should always be larger than the 'session.duration'
+ * option. Not doing this may result in the session being deleted from
+ * the memcache servers while it is still in use.
+ *
+ * Set this value to 0 if you don't want data to expire.
+ *
+ * Note: The oldest data will always be deleted if the memcache server
+ * runs out of storage space.
+ */
+ 'memcache_store.expires' => 36 * (60*60), // 36 hours.
+
+
+ /*
+ * Should signing of generated metadata be enabled by default.
+ *
+ * Metadata signing can also be enabled for a individual SP or IdP by setting the
+ * same option in the metadata for the SP or IdP.
+ */
+ 'metadata.sign.enable' => FALSE,
+
+ /*
+ * The default key & certificate which should be used to sign generated metadata. These
+ * are files stored in the cert dir.
+ * These values can be overridden by the options with the same names in the SP or
+ * IdP metadata.
+ *
+ * If these aren't specified here or in the metadata for the SP or IdP, then
+ * the 'certificate' and 'privatekey' option in the metadata will be used.
+ * if those aren't set, signing of metadata will fail.
+ */
+ 'metadata.sign.privatekey' => NULL,
+ 'metadata.sign.privatekey_pass' => NULL,
+ 'metadata.sign.certificate' => NULL,
+
+
+ /*
+ * Proxy to use for retrieving URLs.
+ *
+ * Example:
+ * 'proxy' => 'tcp://proxy.example.com:5100'
+ */
+ 'proxy' => NULL,
+
+);
diff --git a/inc/simplesamlphp/config/ldap.php b/inc/simplesamlphp/config/ldap.php
new file mode 100644
index 0000000..192278e
--- /dev/null
+++ b/inc/simplesamlphp/config/ldap.php
@@ -0,0 +1,46 @@
+<?php
+/*
+ * Configuration for the LDAP authentication module.
+ *
+ * $Id: $
+ */
+
+$config = array (
+
+ /**
+ * LDAP configuration. This is only relevant if you use the LDAP authentication plugin.
+ *
+ * The attributes parameter is a list of attributes that should be retrieved.
+ * If the attributes parameter is set to null, all attributes will be retrieved.
+ */
+ 'auth.ldap.dnpattern' => 'uid=%username%,dc=feide,dc=no,ou=feide,dc=uninett,dc=no',
+ 'auth.ldap.hostname' => 'ldap.uninett.no',
+ 'auth.ldap.attributes' => null,
+ 'auth.ldap.enable_tls' => false,
+
+ /*
+ * Searching the DN of the user.
+ */
+
+ /* Set this to TRUE to enable searching. */
+ 'auth.ldap.search.enable' => FALSE,
+
+ /* The base DN for the search. */
+ 'auth.ldap.search.base' => NULL,
+
+ /* The attribute(s) to search for.
+ *
+ * This may be a single string, or an array of string. If this is an array, then any of the attributes
+ * in the array may match the value the user supplied as the username.
+ */
+ 'auth.ldap.search.attributes' => NULL,
+
+ /* The username & password the simpleSAMLphp should bind as before searching. If this is left
+ * as NULL, no bind will be performed before searching.
+ */
+ 'auth.ldap.search.username' => NULL,
+ 'auth.ldap.search.password' => NULL,
+
+);
+
+?>
diff --git a/inc/simplesamlphp/config/ldapmulti.php b/inc/simplesamlphp/config/ldapmulti.php
new file mode 100644
index 0000000..4042d64
--- /dev/null
+++ b/inc/simplesamlphp/config/ldapmulti.php
@@ -0,0 +1,34 @@
+<?php
+
+/*
+ * Configuration for the multi-DN LDAP authentication module.
+ *
+ * $Id: ldapmulti.php 826 2008-08-20 14:14:08Z hans.zandbelt $
+ */
+
+$ldapmulti = array (
+
+ 'feide.no' => array(
+ 'description' => 'Feide',
+ /* for a description of options see equivalent options in ldap.php starting with auth.ldap. */
+ 'dnpattern' => 'uid=%username%,dc=feide,dc=no,ou=feide,dc=uninett,dc=no',
+ 'hostname' => 'ldap.uninett.no',
+ 'attributes' => NULL,
+ 'enable_tls' => FALSE,
+ 'search.enable' => FALSE,
+ 'search.base' => NULL,
+ 'search.attributes' => NULL,
+ 'search.username' => NULL,
+ 'search.password' => NULL,
+ ),
+
+ 'uninett.no' => array(
+ 'description' => 'UNINETT',
+ 'dnpattern' => 'uid=%username%,ou=people,dc=uninett,dc=no',
+ 'hostname' => 'ldap.uninett.no',
+ 'attributes' => NULL,
+ )
+
+);
+
+?>
diff --git a/inc/simplesamlphp/config/translation.php b/inc/simplesamlphp/config/translation.php
new file mode 100644
index 0000000..9dcb1c4
--- /dev/null
+++ b/inc/simplesamlphp/config/translation.php
@@ -0,0 +1,17 @@
+<?php
+/*
+ * Configuration
+ *
+ * $Id: translation.php 2100 2010-01-12 11:33:22Z andreassolberg $
+ */
+
+$config = array (
+
+ 'application' => 'simplesamlphp',
+ 'baseurl' => 'https://translation.rnd.feide.no/simplesaml',
+ 'key' => '_e7224d54cda84434e25ef087e5c22c1fa5f6ae87cc',
+ 'secret' => '_0e29f782d295bc9782112981f654f1db58174d19d7',
+
+);
+
+?>
diff --git a/inc/simplesamlphp/dictionaries/admin.definition.json b/inc/simplesamlphp/dictionaries/admin.definition.json
new file mode 100644
index 0000000..fc9739f
--- /dev/null
+++ b/inc/simplesamlphp/dictionaries/admin.definition.json
@@ -0,0 +1,143 @@
+{
+ "cfg_check_header": {
+ "en": "Configuration check"
+ },
+ "cfg_check_select_file": {
+ "en": "Select configuration file to check:"
+ },
+ "cfg_check_notices": {
+ "en": "Notices"
+ },
+ "cfg_check_missing": {
+ "en": "Options missing from config file"
+ },
+ "cfg_check_superfluous": {
+ "en": "Superfluous options in config file"
+ },
+ "cfg_check_noerrors": {
+ "en": "No errors found."
+ },
+ "cfg_check_back": {
+ "en": "Go back to the file list"
+ },
+ "metaover_header": {
+ "en": "Metadata overview"
+ },
+ "metaover_intro": {
+ "en": "To look at the details for an SAML entity, click on the SAML entity header."
+ },
+ "metaover_errorentry": {
+ "en": "Error in this metadata entry"
+ },
+ "metaover_required_found": {
+ "en": "Required fields"
+ },
+ "metaover_required_not_found": {
+ "en": "The following required fields was not found"
+ },
+ "metaover_optional_found": {
+ "en": "Optional fields"
+ },
+ "metaover_optional_not_found": {
+ "en": "The following optional fields was not found"
+ },
+ "metaover_unknown_found": {
+ "en": "The following fields was not recognized"
+ },
+ "metaover_group_metadata.saml20-sp-hosted": {
+ "en": "SAML 2.0 Service Provider (Hosted)"
+ },
+ "metaover_group_metadata.saml20-sp-remote": {
+ "en": "SAML 2.0 Service Provider (Remote)"
+ },
+ "metaover_group_metadata.saml20-idp-hosted": {
+ "en": "SAML 2.0 Identity Provider (Hosted)"
+ },
+ "metaover_group_metadata.saml20-idp-remote": {
+ "en": "SAML 2.0 Identity Provider (Remote)"
+ },
+ "metaover_group_metadata.shib13-sp-hosted": {
+ "en": "Shib 1.3 Service Provider (Hosted)"
+ },
+ "metaover_group_metadata.shib13-sp-remote": {
+ "en": "Shib 1.3 Service Provider (Remote)"
+ },
+ "metaover_group_metadata.shib13-idp-hosted": {
+ "en": "Shib 1.3 Identity Provider (Hosted)"
+ },
+ "metaover_group_metadata.shib13-idp-remote": {
+ "en": "Shib 1.3 Identity Provider (Remote)"
+ },
+ "metaover_group_metadata.wsfed-sp-hosted": {
+ "en": "WS-Federation Service Provider (Hosted)"
+ },
+ "metaover_group_metadata.wsfed-idp-remote": {
+ "en": "WS-Federation Identity Provider (Remote)"
+ },
+ "metaconv_title": {
+ "en": "Metadata parser"
+ },
+ "metaconv_parse": {
+ "en": "Parse"
+ },
+ "metaconv_converted": {
+ "en": "Converted metadata"
+ },
+ "metadata_saml20-sp": {
+ "en": "SAML 2.0 SP Metadata"
+ },
+ "metadata_saml20-idp": {
+ "en": "SAML 2.0 IdP Metadata"
+ },
+ "metadata_shib13-sp": {
+ "en": "Shib 1.3 SP Metadata"
+ },
+ "metadata_shib13-idp": {
+ "en": "Shib 1.3 IdP Metadata"
+ },
+ "metadata_intro": {
+ "en": "Here is the metadata that simpleSAMLphp has generated for you. You may send this metadata document to trusted partners to setup a trusted federation."
+ },
+ "metadata_xmlurl": {
+ "en": "You can <a href=\"%METAURL%\">get the metadata xml on a dedicated URL<\/a>:"
+ },
+ "metadata_metadata": {
+ "en": "Metadata"
+ },
+ "metadata_cert": {
+ "en": "Certificates"
+ },
+ "metadata_cert_intro": {
+ "en": "Download the X509 certificates as PEM-encoded files."
+ },
+ "metadata_xmlformat": {
+ "en": "In SAML 2.0 Metadata XML format:"
+ },
+ "metadata_simplesamlformat": {
+ "en": "In simpleSAMLphp flat file format - use this if you are using a simpleSAMLphp entity on the other side:"
+ },
+ "debug_sending_message_title": {
+ "en": "Sending message"
+ },
+ "debug_sending_message_text_button": {
+ "en": "You are about to send a message. Hit the submit message button to continue."
+ },
+ "debug_sending_message_text_link": {
+ "en": "You are about to send a message. Hit the submit message link to continue."
+ },
+ "debug_sending_message_send": {
+ "en": "Submit message"
+ },
+ "debug_sending_message_msg_title": {
+ "en": "Message"
+ },
+ "debug_sending_message_msg_text": {
+ "en": "As you are in debug mode, you get to see the content of the message you are sending:"
+ },
+ "debug_disable_debug_mode": {
+ "en": "You can turn off debug mode in the global simpleSAMLphp configuration file <tt>config\/config.php<\/tt>."
+ },
+ "metaconv_xmlmetadata": {
+ "en": "XML metadata"
+ }
+}
diff --git a/inc/simplesamlphp/dictionaries/admin.translation.json b/inc/simplesamlphp/dictionaries/admin.translation.json
new file mode 100644
index 0000000..e399a26
--- /dev/null
+++ b/inc/simplesamlphp/dictionaries/admin.translation.json
@@ -0,0 +1,1297 @@
+{
+ "cfg_check_header": {
+ "no": "Sjekker konfigurasjonen",
+ "nn": "Konfigurasjonssjekk",
+ "sv": "Konfigurationskontroll",
+ "es": "Comprobar configuraci\u00f3n",
+ "nl": "Configuratie-validatie",
+ "sl": "Preverjanje konfiguracije",
+ "da": "Unders\u00f8gelse af konfiguration",
+ "hr": "Provjera konfiguracije",
+ "hu": "Be\u00e1ll\u00edt\u00e1sok ellen\u0151rz\u00e9se",
+ "pt-br": "Verificar configura\u00e7\u00e3o",
+ "pt": "Verifica\u00e7\u00e3o da configura\u00e7\u00e3o",
+ "pl": "Sprawdzenie konfiguracji",
+ "cs": "Verifikace konfigurace",
+ "tr": "Konfig\u00fcrasyon kontrol\u00fc",
+ "de": "Konfigurationscheck",
+ "fr": "V\u00e9rification de la configuration",
+ "it": "Verifica della configurazione",
+ "ja": "\u8a2d\u5b9a\u78ba\u8a8d",
+ "lt": "Konfig\u016bracijos patikrinimas",
+ "zh-tw": "\u8a2d\u5b9a\u6aa2\u67e5",
+ "et": "Seadistuste kontroll",
+ "he": "\u05d1\u05d3\u05d9\u05e7\u05ea \u05d4\u05d2\u05d3\u05e8\u05d5\u05ea",
+ "ru": "\u041f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438",
+ "zh": "\u914d\u7f6e\u68c0\u67e5",
+ "ar": "\u0645\u0631\u0627\u062c\u0639\u0629 \u0627\u0644\u062a\u0631\u062a\u064a\u0628",
+ "id": "Pemeriksaan konfigurasi",
+ "sr": "Provera pode\u0161avanja"
+ },
+ "cfg_check_select_file": {
+ "no": "Velg hvilken konfigurasjonfil som skal sjekkes",
+ "nn": "Vel konfigurasjonsfil som skal sjekkast",
+ "sv": "V\u00e4lj vilken konfigurationfil som ska kontrolleras:",
+ "es": "Seleccione el fichero de configuraci\u00f3n a comprobar:",
+ "nl": "Selecteer een configuratiefile voor validatie:",
+ "sl": "Izberite konfiguracijsko datoteko, ki jo \u017eelite preveriti",
+ "da": "V\u00e6lg den konfiguration som skal unders\u00f8ges",
+ "hr": "Odaberite konfiguracijsku datoteku koju \u017eelite provjeriti:",
+ "hu": "V\u00e1lassza ki az ellen\u0151rizend\u0151 konfigur\u00e1ci\u00f3s \u00e1llom\u00e1nyt",
+ "pt-br": "Selecione o arquivo de configura\u00e7\u00e3o para verificar",
+ "pt": "Escolha o ficheiro de configura\u00e7\u00e3o a verificar:",
+ "pl": "Wybierz plik konfiguracyjny do sprawdzenia:",
+ "cs": "Vyber konfiguracniho souboru k verifikaci:",
+ "tr": "Kontrol edilecek konfig\u00fcrasyon dosyas\u0131n\u0131 se\u00e7:",
+ "de": "W\u00e4hlen Sie die Konfigurationsdatei, die gecheckt werden soll:",
+ "fr": "S\u00e9lectionnez le fichier de configuration \u00e0 v\u00e9rifier :",
+ "it": "Selezionare il file di configurazione da verificare:",
+ "ja": "\u78ba\u8a8d\u3059\u308b\u8a2d\u5b9a\u30d5\u30a1\u30a4\u30eb\u3092\u9078\u629e:",
+ "lt": "Tikrinti konfig\u016bracijos fail\u0105:",
+ "zh-tw": "\u9078\u64c7\u8981\u6aa2\u67e5\u7684\u8a2d\u5b9a\u6a94\uff1a",
+ "et": "Vali seadistustefail, mida kontrollida:",
+ "he": "\u05d1\u05d7\u05e8 \u05e7\u05d5\u05d1\u05e5 \u05d4\u05d2\u05d3\u05e8\u05d5\u05ea \u05dc\u05d1\u05d3\u05d9\u05e7\u05d4:",
+ "ru": "\u0412\u044b\u0431\u0435\u0440\u0438\u0442\u0435 \u0444\u0430\u0439\u043b \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 \u0434\u043b\u044f \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0438:",
+ "zh": "\u9009\u62e9\u4e00\u4e2a\u914d\u7f6e\u6587\u4ef6\u7528\u4e8e\u68c0\u6d4b",
+ "ar": "\u0627\u062e\u062a\u0627\u0631\u0645\u0644\u0641 \u0627\u0644\u062a\u0631\u062a\u064a\u0628 \u0627\u0644\u0630\u064a \u062a\u0631\u063a\u0628 \u0628\u0645\u0631\u0627\u062c\u0639\u062a\u0647",
+ "id": "Pilih file konfigurasi untuk diperiksa",
+ "sr": "Odaberite konfiguracionu fajl koji \u017eelite proveriti:"
+ },
+ "cfg_check_missing": {
+ "no": "Mangler element i konfigurasjonsfilen",
+ "nn": "Det manglar informasjon i konfigurasjonsfila",
+ "sv": "Alternativ saknas i konfigurationsfilen",
+ "es": "Opciones que faltan en el fichero de configuraci\u00f3n",
+ "nl": "Opties missen in de config file",
+ "sl": "V konfiguracijski datoteki manjkajo nastavitve",
+ "da": "Valg kan ikke behandles - se konfigurationsfil",
+ "hr": "Parametri koji nedostaju u konfiguracijskoj datoteci",
+ "hu": "Hi\u00e1nyz\u00f3 opci\u00f3k a konfigur\u00e1ci\u00f3s \u00e1llom\u00e1nyban",
+ "pt-br": "Op\u00e7\u00f5es faltando no arquivo de configura\u00e7\u00e3o",
+ "pt": "Op\u00e7\u00f5es ausentes do ficheiro de configura\u00e7\u00e3o",
+ "pl": "Brakuj\u0105ce opcje z pliku konfiguracyjnego",
+ "cs": "Chybejici polozky v konfiguracnim souboru",
+ "tr": "Config dosyas\u0131ndaki tercihler eksik",
+ "de": "Optionen, die in der Konfigurationsdatei fehlen",
+ "fr": "Options manquantes dans le fichier de configuration",
+ "it": "Opzioni mancanti dal file di configurazione",
+ "ja": "\u8a2d\u5b9a\u30d5\u30a1\u30a4\u30eb\u306b\u30aa\u30d7\u30b7\u30e7\u30f3\u304c\u5728\u308a\u307e\u305b\u3093",
+ "lt": "Tr\u016bkstami parametrai konfig\u016braciniame faile",
+ "zh-tw": "\u8a2d\u5b9a\u6a94\u7f3a\u5c11\u9078\u9805",
+ "et": "Seadistustefailist puuduvad seadistused:",
+ "he": "\u05d0\u05e4\u05e9\u05e8\u05d5\u05d9\u05d5\u05ea \u05d7\u05e1\u05e8\u05d5\u05ea \u05de\u05e7\u05d5\u05d1\u05e5 \u05d4\u05d4\u05d2\u05d3\u05e8\u05d5\u05ea",
+ "zh": "\u914d\u7f6e\u6587\u4ef6\u4e2d\u9009\u9879\u7f3a\u5931",
+ "ar": "\u062e\u064a\u0627\u0631\u0627\u062a \u0645\u0641\u0642\u0648\u062f\u0629 \u0645\u0646 \u0645\u0644\u0641 \u0627\u0644\u062a\u0631\u062a\u064a\u0628",
+ "id": "Opsi-opsi uang hilang dari file konfigurasi",
+ "sr": "Paramentri koji nedostaju u konfiguracionom fajlu"
+ },
+ "cfg_check_superfluous": {
+ "no": "Overf\u00f8ldig element i konfigurasjonsfilen",
+ "nn": "Overfl\u00f8dig informasjon i konfigurasjonsfila",
+ "sv": "\u00d6verfl\u00f6diga alternativ i konfigurationsfilen",
+ "es": "Opciones sobrantes en el fichero de configuraci\u00f3n",
+ "nl": "Teveel opties in de config file",
+ "sl": "Odve\u010dne nastavitve v konfiguracijski datoteki",
+ "da": "Overfl\u00f8digt valg i konfigurationsfil",
+ "hr": "Suvi\u0161ni parametri u konfiguracijskoj datoteci",
+ "hu": "Felesleges opci\u00f3k a konfigur\u00e1ci\u00f3s \u00e1llom\u00e1nyban",
+ "pt-br": "Op\u00e7\u00f5es sup\u00e9rfluas no arquivo de configura\u00e7\u00e3o",
+ "pt": "Op\u00e7\u00f5es sup\u00e9rfluas do ficheiro de configura\u00e7\u00e3o",
+ "pl": "Zb\u0119dne opcje w pliku konfiguracyjnym",
+ "cs": "Nadbyte\u010dn\u00e9 polo\u017eky v konfigura\u010dn\u00edm souboru",
+ "tr": "Config dosyas\u0131ndaki gereksiz tercihler",
+ "de": "\u00dcberfl\u00fcssige Optionen in der Konfigurationsdatei",
+ "fr": "Options superflues dans le fichier de configuration",
+ "it": "Opzioni superflue nel file di configurazione",
+ "ja": "\u8a2d\u5b9a\u30d5\u30a1\u30a4\u30eb\u306b\u4e0d\u9069\u5207\u306a\u30aa\u30d7\u30b7\u30e7\u30f3\u304c\u5728\u308a\u307e\u3059",
+ "lt": "Pertekliniai parametrai konfig\u016braciniame faile",
+ "zh-tw": "\u591a\u9918\u8a2d\u5b9a\u5b58\u5728\u65bc\u8a2d\u5b9a\u6a94",
+ "et": "\u00dcleliigne seadistus seadistustefailis",
+ "he": "\u05d0\u05e4\u05e9\u05e8\u05d5\u05d9\u05d5\u05ea \u05de\u05d9\u05d5\u05ea\u05e8\u05d5\u05ea \u05d1\u05e7\u05d5\u05d1\u05e5 \u05d4\u05d4\u05d2\u05d3\u05e8\u05d5\u05ea",
+ "zh": "\u914d\u7f6e\u6587\u4ef6\u4e2d\u62e5\u6709\u8fc7\u591a\u7684\u9009\u9879",
+ "ar": "\u062e\u064a\u0627\u0631\u0627\u062a \u0641\u0627\u0626\u0636\u0629 \u0628\u0645\u0644\u0641 \u0627\u0644\u062a\u0631\u062a\u064a\u0628",
+ "id": "Pilihan tak beguna di file konfigurasi",
+ "sr": "Suvi\u0161ni parametri u konfiguracionom fajlu"
+ },
+ "cfg_check_noerrors": {
+ "no": "Ingen feil funnet",
+ "nn": "Fann ingen feil",
+ "sv": "Inga fel funna.",
+ "es": "No se han encontrado errores",
+ "nl": "Geen fouten gevonden.",
+ "sl": "Ni napak",
+ "da": "Ingen fejl",
+ "hr": "Nije prona\u0111ena niti jedna gre\u0161ka.",
+ "hu": "Nincs hiba.",
+ "pt-br": "N\u00e3o foram encontrados erros.",
+ "pt": "N\u00e3o foram encontrados erros.",
+ "pl": "Nie znaleziono b\u0142\u0119d\u00f3w.",
+ "cs": "Nenalezeny \u017e\u00e1dn\u00e9 chyby",
+ "tr": "Hata bulunmad\u0131.",
+ "de": "Keine Fehler gefunden.",
+ "fr": "Aucune erreur.",
+ "it": "Nessun errore trovato.",
+ "ja": "\u30a8\u30e9\u30fc\u306f\u898b\u3064\u304b\u308a\u307e\u305b\u3093\u3067\u3057\u305f\u3002",
+ "lt": "Klaid\u0173 nerasta.",
+ "zh-tw": "\u6c92\u6709\u932f\u8aa4\u3002",
+ "et": "T\u00f5rkeid ei leitud",
+ "he": "\u05dc\u05d0 \u05e0\u05de\u05e6\u05d0\u05d5 \u05e9\u05d2\u05d9\u05d0\u05d5\u05ea.",
+ "zh": "\u6ca1\u6709\u53d1\u73b0\u9519\u8bef",
+ "ar": "\u0644\u0627 \u062a\u0648\u062c\u062f \u0623\u062e\u0637\u0627\u0621 ",
+ "id": "Tidak ada error yang ditemukan",
+ "sr": "Nije prona\u0111ena nijedna gre\u0161ka."
+ },
+ "cfg_check_back": {
+ "no": "G\u00e5 tilbake til fil-listen",
+ "nn": "G\u00e5 tilbake til filoversikten",
+ "sv": "G\u00e5 tillbaka till fillistan",
+ "es": "Volver al listado de archivos",
+ "nl": "Ga terug naar de lijst van files.",
+ "sl": "Vrnite se na seznam datotek",
+ "da": "Tilbage til listen over filer",
+ "hr": "Vrati se natrag na popis datoteka",
+ "hu": "Vissza az f\u00e1jlok list\u00e1j\u00e1hoz",
+ "pt-br": "Voltar a lista de arquivos",
+ "pt": "Voltar \u00e0 lista de ficheiros",
+ "pl": "Powr\u00f3t do listy plik\u00f3w",
+ "cs": "Zp\u00e1tky na seznam soubor\u016f",
+ "tr": "Dosya listesine geri d\u00f6n",
+ "de": "Gehe zur\u00fcck zur Dateiliste",
+ "fr": "Retour \u00e0 la liste des fichiers",
+ "it": "Tornare indietro alla lista dei file",
+ "ja": "\u30d5\u30a1\u30a4\u30eb\u30ea\u30b9\u30c8\u306b\u623b\u308b",
+ "lt": "Gr\u012f\u017eti \u012f fail\u0173 s\u0105ra\u0161\u0105",
+ "zh-tw": "\u56de\u5230\u6a94\u6848\u6e05\u55ae",
+ "et": "Mine tagasi failide nimekirja",
+ "he": "\u05d7\u05d6\u05d5\u05e8 \u05d0\u05dc \u05e8\u05e9\u05d9\u05de\u05ea \u05d4\u05e7\u05d1\u05e6\u05d9\u05dd",
+ "zh": "\u8fd4\u56de\u81f3\u6587\u4ef6\u5217\u8868",
+ "ar": "\u0639\u062f \u0644\u0642\u0627\u0626\u0645\u0629 \u0627\u0644\u0645\u0644\u0641\u0627\u062a",
+ "id": "Kembali ke daftar file",
+ "sr": "Vrati se natrag na listu fajlova"
+ },
+ "metaover_header": {
+ "no": "Oversikt over metadata",
+ "nn": "Oversikt over metadata",
+ "sv": "Metadata\u00f6versikt",
+ "es": "Ver metadatos",
+ "nl": "Metadata-overzicht",
+ "sl": "Pregled metapodatkov",
+ "da": "Metadataoversigt",
+ "hr": "Pregled metapodataka",
+ "hu": "Metaadat \u00e1ttekint\u00e9s",
+ "pt-br": "Vis\u00e3o geral da metadata",
+ "pt": "Vista geral dos metadados",
+ "pl": "Przegl\u0105d metadanych",
+ "cs": "P\u0159ehled metadat",
+ "tr": "\u00dcstveri (metada) genel g\u00f6r\u00fcn\u00fcm\u00fc",
+ "de": "Metadaten-\u00dcberblick",
+ "fr": "Vue d'ensemble des m\u00e9tadonn\u00e9es",
+ "it": "Visione generale dei metadati",
+ "ja": "\u30e1\u30bf\u30c7\u30fc\u30bf\u306e\u6982\u8981",
+ "lt": "Metaduomen\u0173 per\u017ei\u016bra",
+ "zh-tw": "\u8a6e\u91cb\u8cc7\u6599\u7e3d\u89bd",
+ "et": "Metaandmete \u00fclevaade",
+ "he": "\u05e1\u05e7\u05d9\u05e8\u05ea \u05de\u05d8\u05d0-\u05de\u05d9\u05d3\u05e2",
+ "zh": "\u5143\u4fe1\u606f\u6d4f\u89c8",
+ "ar": "\u0646\u0638\u0631\u0629 \u0639\u0627\u0645\u0629 \u0644\u0644\u0628\u064a\u0627\u0646\u0627\u062a \u0627\u0644\u0648\u0635\u0641\u064a\u0629\/ \u0627\u0644\u0645\u064a\u062a\u0627\u062f\u0627\u062a\u0627",
+ "id": "Ikhtisar Metadata",
+ "sr": "Pregled metapodataka"
+ },
+ "metaover_intro": {
+ "no": "For \u00e5 se p\u00e5 detaljene i en SAML-entitet, klikk p\u00e5 SAML-entitet overskriften",
+ "nn": "For \u00e5 sj\u00e5 p\u00e5 detaljane for ein SAML entitet, klikk p\u00e5 SAML entitet",
+ "sv": "F\u00f6r att titta p\u00e5 detaljer f\u00f6r en SAML-entitet klicka p\u00e5 rubriken f\u00f6r SAML-entiteten.",
+ "es": "Para ver los detalles de una entidad SAML, haga click en la cabecera de la entidad.",
+ "nl": "Klik op een SAML-entiteit om de details voor die entiteit te bekijken.",
+ "sl": "Za pregled podrobnosti SAML entitete, kliknite na glavo te entitete",
+ "da": "For at se detaljer vedr\u00f8rende SAML-entiteten, klik p\u00e5 entitets-headeren",
+ "hr": "Da biste vidjeli detalje o SAML entitetu, kliknite na njegovo zaglavlje.",
+ "hu": "A SAML entit\u00e1sok r\u00e9szletei\u00e9rt kattintson a SAML entit\u00e1s fejl\u00e9c\u00e9re",
+ "pt-br": "Para ver os detalhes da entidade SAML, clique ",
+ "pt": "Para obter detalhes sobre uma entidade SAML, clique no t\u00edtulo da entidade.",
+ "pl": "Kliknij na nag\u0142\u00f3wek ko\u0144c\u00f3wki aby wy\u015bwietli\u0107 szczeg\u00f3\u0142y SAML.",
+ "cs": "Pro zobrazen\u00ed detailu SAML entity, klikni na hlavi\u010dku entity",
+ "tr": "Bir SAML eleman\u0131 hakk\u0131ndaki detaylar\u0131 g\u00f6rmek i\u00e7in, SAML eleman\u0131 ba\u015fl\u0131\u011f\u0131na t\u0131klay\u0131n.",
+ "de": "Um sich Details f\u00fcr eine SAML-Entit\u00e4t anzusehen, klicken Sie auf die Kopfzeile der SAML-Entit\u00e4t.",
+ "fr": "Pour examiner les d\u00e9tails d'une entit\u00e9 SAML, cliquez sur son en-t\u00eate.",
+ "it": "Per visualizzare i dettagli di una entit\u00e0 SAML, cliccare sull'header SAML dell'entit\u00e0.",
+ "ja": "SAML\u5b9f\u4f53\u306e\u8a73\u7d30\u3092\u78ba\u8a8d\u3059\u308b\u70ba\u306b\u306f\u3001SAML\u5b9f\u4f53\u30d8\u30c3\u30c0\u3092\u30af\u30ea\u30c3\u30af\u3057\u3066\u4e0b\u3055\u3044\u3002",
+ "lt": "Nor\u0117dami per\u017ei\u016br\u0117ti detalesn\u0119 informacij\u0105 apie SAML, paspauskite ant SAML antra\u0161t\u0117s.",
+ "zh-tw": "\u9ede\u9078 SAML \u7269\u4ef6\u6a19\u984c\uff0c\u53ef\u6aa2\u8996 SAML \u7269\u4ef6\u8a73\u7d30\u8cc7\u8a0a\u3002",
+ "et": "SAML olemi detailide vaatamiseks kl\u00f5psa SAML olemi p\u00e4isel.",
+ "he": "\u05db\u05d3\u05d9 \u05dc\u05d4\u05e1\u05ea\u05db\u05dc \u05e2\u05dc \u05d4\u05e4\u05e8\u05d8\u05d9\u05dd \u05e9\u05dc \u05d9\u05e9\u05d5\u05ea SAML, \u05dc\u05d7\u05e5 \u05e2\u05dc \u05db\u05d5\u05ea\u05e8\u05ea \u05d9\u05e9\u05d5\u05ea \u05d4SAML ",
+ "zh": "\u60f3\u8981\u67e5\u770bSAML\u5b9e\u4f53\u7684\u8be6\u7ec6\u60c5\u51b5\uff0c\u8bf7\u70b9\u51fbSAML\u5b9e\u4f53\u8f7d\u5165\u5668",
+ "ar": "\u0644\u0625\u0644\u063a\u0627\u0621 \u0646\u0638\u0631\u0629 \u0639\u0644\u064a \u062a\u0641\u0627\u0635\u064a\u0644 \u0627\u062d\u062f\u064a \u0648\u062d\u062f\u0627\u062a SAML, \u0627\u0636\u063a\u0637 \u0639\u0644\u064a \u062a\u0631\u0648\u064a\u0633\u0629 \u0627\u0644\u0648\u062d\u062f\u0629 ",
+ "id": "Untuk melihat detail entiti SAML, klik pada bagian header entiti SAML",
+ "sr": "Da biste videli detalje o SAML entitetu, kliknite na njegovo zaglavlje."
+ },
+ "metaover_errorentry": {
+ "no": "Feil i metadataoppf\u00f8ringen",
+ "nn": "Feil i dette metadatainnslaget",
+ "sv": "Fel i dessa metadat",
+ "es": "Error en los metadatos de la entrada",
+ "de": "Fehler in diesem Metadaten Eintrag",
+ "nl": "Fout in metadata",
+ "sl": "Napaka pri vnosu metapodatkov",
+ "da": "Fejl i denne sektion af metadata",
+ "hr": "Ovaj zapis metapodataka sadr\u017ei gre\u0161ku",
+ "hu": "Hiba ebben a metaadat bejegyz\u00e9sben",
+ "pt-br": "Erro na entrada desta metadata",
+ "pt": "Erro nesta entrada de metadados",
+ "pl": "B\u0142\u0105d w metadanych",
+ "cs": "Chyba v t\u00e9to polo\u017ece metadat",
+ "tr": "\u00dcstveri (metadata) bilgisinde hata var",
+ "fr": "Erreur dans les m\u00e9tadonn\u00e9es de cet \u00e9l\u00e9ment",
+ "it": "Errore in questo elemento dei metadati",
+ "ja": "\u3053\u306e\u30e1\u30bf\u30c7\u30fc\u30bf\u30a8\u30f3\u30c8\u30ea\u3067\u306e\u30a8\u30e9\u30fc",
+ "lt": "Klaida \u0161iame metaduomen\u0173 \u012fra\u0161e",
+ "zh-tw": "\u6709\u932f\u8aa4\u5b58\u5728\u9019\u500b\u8a6e\u91cb\u8cc7\u6599\u55ae\u5143",
+ "et": "T\u00f5rge selles metaandmete kirjes",
+ "he": "\u05e9\u05d2\u05d9\u05d0\u05d4 \u05d1\u05e8\u05e9\u05d5\u05de\u05ea \u05de\u05d8\u05d0-\u05de\u05d9\u05d3\u05e2 \u05d6\u05d5",
+ "zh": "\u8be5\u5143\u4fe1\u606f\u5b9e\u4f53\u5b58\u5728\u9519\u8bef",
+ "ar": "\u062e\u0637\u0627 \u0628\u0647\u0630\u0627 \u0627\u0644\u0628\u064a\u0627\u0646 \u0627\u0644\u0648\u0635\u0641\u064a\/ \u0627\u0644\u0645\u064a\u062a\u0627\u062f\u0627\u062a\u0627",
+ "id": "Error pada entri metadata ini",
+ "sr": "Ovaj zapis metapodataka sadr\u017ei gre\u0161ku"
+ },
+ "metaover_required_found": {
+ "no": "Obligatorisk felt",
+ "nn": "N\u00f8dvendige felt",
+ "sv": "N\u00f6dv\u00e4ndiga alternativ",
+ "es": "Campos obligatorios",
+ "de": "Notwendige Felder",
+ "nl": "Verplichte velden",
+ "sl": "Zahtevana polja",
+ "da": "Obligatoriske felter",
+ "hr": "Obavezna polja",
+ "hu": "K\u00f6telez\u0151 mez\u0151k",
+ "pt-br": "Campos requeridos",
+ "pt": "Campos obrigat\u00f3rios",
+ "pl": "Pola wymagane",
+ "cs": "Po\u017eadovan\u00e1 pole",
+ "tr": "Gerekli alanlar",
+ "fr": "Champs requis",
+ "it": "Campi richiesti",
+ "ja": "\u5fc5\u9808\u9805\u76ee",
+ "lt": "Privalomi laukai",
+ "zh-tw": "\u5fc5\u8981\u6b04\u4f4d",
+ "et": "Kohustuslikud v\u00e4ljad",
+ "he": "\u05e9\u05d3\u05d5\u05ea \u05e0\u05d3\u05e8\u05e9\u05d9\u05dd",
+ "zh": "\u5fc5\u9700\u7684\u533a\u57df",
+ "ar": "\u062d\u0642\u0644 \u0625\u062c\u0628\u0627\u0631\u064a",
+ "id": "Field-field yang wajib diisi",
+ "sr": "Obavezna polja"
+ },
+ "metaover_required_not_found": {
+ "no": "F\u00f8lgende obligatoriske felter ble ikke funnet",
+ "nn": "Fann ikkje f\u00f8lgjande n\u00f8dvendige felt",
+ "sv": "F\u00f6ljande n\u00f6dv\u00e4ndiga alternativ hittades inte",
+ "es": "Los siguientes datos obligatorios no se han encontrado",
+ "de": "Die folgenden notwendigen Felder wurden nicht gefunden",
+ "nl": "De volgende verplichte velden konden niet worden gevonden",
+ "sl": "Naslednjih zahtevanih polj ni bilo mogo\u010de najti",
+ "da": "F\u00f8lgende obligatoriske felter kunne ikke findes ",
+ "hr": "Nisu prona\u0111ena sljede\u0107a obavezna polja",
+ "hu": "A k\u00f6vetkez\u0151 k\u00f6telez\u0151 mez\u0151k hi\u00e1nyoznak",
+ "pt-br": "Os seguintes campos requeridos n\u00e3o foram encontrados",
+ "pt": "Os seguintes campos obrigat\u00f3rios n\u00e3o foram encontrados",
+ "pl": "Nastepuj\u0105ce wymagane pola nie zosta\u0142y znalezione",
+ "cs": "N\u00e1sleduj\u00edc\u00ed po\u017eadovan\u00e1 pole nenalezena",
+ "tr": "\u015eu gerekli alanlar bulunamad\u0131",
+ "fr": "Les champs suivants n'existent pas et sont requis",
+ "it": "I seguenti campi, richiesti, non sono stati trovati",
+ "ja": "\u4ee5\u4e0b\u306e\u5fc5\u9808\u9805\u76ee\u306f\u898b\u3064\u304b\u308a\u307e\u305b\u3093\u3067\u3057\u305f",
+ "lt": "\u0160ie privalomi laukai nerasti",
+ "zh-tw": "\u4e0b\u5217\u8cc7\u6599\u627e\u4e0d\u5230\u5fc5\u8981\u6b04\u4f4d",
+ "et": "J\u00e4rgmisi kohuslikke v\u00e4lju ei leitud",
+ "he": "\u05d4\u05e9\u05d3\u05d5\u05ea \u05d4\u05d3\u05e8\u05d5\u05e9\u05d9\u05dd \u05d4\u05d1\u05d0\u05d9\u05dd \u05dc\u05d0 \u05e0\u05de\u05e6\u05d0\u05d5",
+ "zh": "\u4e0b\u5217\u5fc5\u9700\u7684\u533a\u57df\u6ca1\u6709\u627e\u5230",
+ "ar": "\u0627\u0644\u062d\u0642\u0648\u0644 \u0627\u0644\u0625\u062c\u0628\u0627\u0631\u064a\u0629 \u0623\u062f\u0646\u0627\u0647 \u0645\u0641\u0642\u0648\u062f\u0629",
+ "id": "Field-field yang diperlukan wajib disisi berikut ini tidak ditemukan",
+ "sr": "Nisu prona\u0111ena slede\u0107a opciona polja"
+ },
+ "metaover_optional_found": {
+ "no": "Valgbart felt",
+ "nn": "Valfrie felt",
+ "sv": "Frivilliga alternativ",
+ "es": "Datos opcionales",
+ "de": "Optionale Felder",
+ "nl": "Optionele velden",
+ "sl": "Neobvezna polja",
+ "da": "Valgfrie felter",
+ "hr": "Opcionalna polja",
+ "hu": "Opcion\u00e1lis mez\u0151",
+ "pt-br": "Campos opcionais",
+ "pt": "Campos opcionais",
+ "pl": "Pola opcjonalne",
+ "cs": "Voliteln\u00e1 pole",
+ "tr": "\u0130ste\u011fe ba\u011fl\u0131 alanlar",
+ "fr": "Champs optionnels",
+ "it": "Campi opzionali",
+ "ja": "\u4efb\u610f\u9805\u76ee",
+ "lt": "Neprivalomi laukai",
+ "zh-tw": "\u9078\u64c7\u6027\u6b04\u4f4d",
+ "et": "Lisav\u00e4ljad",
+ "he": "\u05e9\u05d3\u05d5\u05ea \u05e8\u05e9\u05d5\u05ea",
+ "zh": "\u9009\u9879\u533a\u57df",
+ "ar": "\u062d\u0642\u0644 \u0627\u062e\u062a\u064a\u0627\u0631\u064a",
+ "id": "Field-field opsional",
+ "sr": "Opciona polja"
+ },
+ "metaover_optional_not_found": {
+ "no": "F\u00f8lgende valgbare felt ble ikke funnet",
+ "nn": "Fann ikkje f\u00f8lgjande valfrie felt",
+ "sv": "F\u00f6ljande frivilliga alternativ hittades inte",
+ "es": "Los siguientes datos opcionales no se han encontrado",
+ "de": "Die folgenden optionalen Felder wurden nicht gefunden",
+ "nl": "De volgende optionele velden konden niet worden gevonden",
+ "sl": "Naslednjih neobveznih polj ni bilo mogo\u010de najti",
+ "da": "F\u00f8lgende valgfrie felter kunne ikke findes",
+ "hr": "Nisu prona\u0111ena sljede\u0107a opcionalna polja",
+ "hu": "A k\u00f6vetkez\u0151 opcion\u00e1lis mez\u0151k nem tal\u00e1lhat\u00f3k",
+ "pt-br": "Os seguintes campos opcionais n\u00e3o foram encontrados",
+ "pt": "Os seguintes campos opcionais n\u00e3o foram encontrados",
+ "pl": "Nastepuj\u0105ce pola opcjonalne nie zosta\u0142y znalezione",
+ "cs": "asleduj\u00edc\u00ed voliteln\u00e1 pole nenalezena",
+ "tr": "\u015eu iste\u011fe ba\u011fl\u0131 alanlar bulunamad\u0131",
+ "fr": "Les champs optionnels suivants n'ont pas \u00e9t\u00e9 trouv\u00e9s",
+ "it": "I seguenti campi, opzionali, non sono stati trovati",
+ "ja": "\u4ee5\u4e0b\u306e\u4efb\u610f\u9805\u76ee\u306f\u898b\u3064\u304b\u308a\u307e\u305b\u3093\u3067\u3057\u305f",
+ "lt": "\u0160ie neprivalomi laukai nerasti",
+ "zh-tw": "\u4e0b\u5217\u8cc7\u6599\u627e\u4e0d\u5230\u9078\u64c7\u6027\u6b04\u4f4d",
+ "et": "J\u00e4rgmisi lisav\u00e4lju ei leitud",
+ "he": "\u05e9\u05d3\u05d5\u05ea \u05d4\u05e8\u05e9\u05d5\u05ea \u05d4\u05d1\u05d0\u05d9\u05dd \u05dc\u05d0 \u05e0\u05de\u05e6\u05d0\u05d5",
+ "zh": "\u4e0b\u5217\u5fc5\u9700\u7684\u9009\u9879\u533a\u57df\u6ca1\u6709\u627e\u5230",
+ "ar": "\u0627\u0644\u062d\u0642\u0648\u0644 \u0627\u0644\u0627\u062e\u062a\u064a\u0627\u0631\u064a\u0629 \u0623\u062f\u0646\u0627\u0647 \u0645\u0641\u0642\u0648\u062f\u0629",
+ "id": "Field-field opsional berikut tidak dapat ditemukan",
+ "sr": "Nisu prona\u0111ena slede\u0107a opciona polja"
+ },
+ "metaover_unknown_found": {
+ "no": "F\u00f8lgende felt ble ikke gjenkjent",
+ "nn": "Gjenkjenner ikkje f\u00f8lgjande felt",
+ "sv": "F\u00f6ljande alternativ k\u00e4ndes inte igen",
+ "es": "No se han reconocido los siguientes datos",
+ "de": "Die folgenden Felder wurden nicht erkannt",
+ "nl": "De volgende velden zijn niet bekend",
+ "sl": "Nepoznana polja",
+ "da": "F\u00f8lgende felter kunne ikke tolkes",
+ "hr": "Sljede\u0107a polja nisu prepoznata",
+ "hu": "A k\u00f6vetkez\u0151 mez\u0151k nem \u00e9rtelmezhet\u0151k",
+ "pt-br": "Os seguintes campos n\u00e3o foram reconhecidos",
+ "pt": "Os seguintes campos n\u00e3o foram reconhecidos",
+ "pl": "Nastepuj\u0105ce pola nie zosta\u0142y rozpoznane",
+ "cs": "N\u00e1sleduj\u00edc\u00ed pole nebyla rozpozn\u00e1na",
+ "tr": "\u015eu alanlar tan\u0131nmad\u0131",
+ "fr": "Les champs suivants n'ont pas \u00e9t\u00e9 reconnus",
+ "it": "I seguenti campi non sono stati riconosciuti",
+ "ja": "\u4ee5\u4e0b\u306e\u9805\u76ee\u306f\u8a8d\u8b58\u3055\u308c\u307e\u305b\u3093\u3067\u3057\u305f",
+ "lt": "\u0160ie laukai neatpa\u017einti",
+ "zh-tw": "\u4e0b\u5217\u8cc7\u6599\u672a\u7d93\u78ba\u8a8d",
+ "et": "J\u00e4rgmistest v\u00e4ljadest ei saadud aru",
+ "he": "\u05d4\u05e9\u05d3\u05d5\u05ea \u05d4\u05d1\u05d0\u05d9\u05dd \u05dc\u05d0 \u05d6\u05d5\u05d4\u05d5",
+ "zh": "\u4e0b\u5217\u533a\u57df\u65e0\u6cd5\u8bc6\u522b",
+ "ar": "\u0644\u0645 \u064a\u062a\u0645 \u0627\u0644\u062a\u0639\u0631\u0641 \u0639\u0644\u064a \u0627\u0644\u0642\u0644 \u0623\u062f\u0646\u0627\u0647 ",
+ "id": "Field-field berikut ini tidak dapat dikenali",
+ "sr": "Slede\u0107a polja nisu prepoznata"
+ },
+ "metadata_metadata": {
+ "no": "Metadata",
+ "nn": "Metadata",
+ "sv": "Metadata",
+ "es": "Metadatos",
+ "nl": "Metadata",
+ "sl": "Metapodatki",
+ "da": "Metadata",
+ "hr": "Metapodaci",
+ "hu": "Metaadatok",
+ "pt-br": "Metadata",
+ "pt": "Metadados",
+ "pl": "Metadane",
+ "cs": "Metadata",
+ "tr": "\u00dcstveri (metadata)",
+ "de": "Metadaten",
+ "fr": "M\u00e9tadonn\u00e9es",
+ "it": "Metadati",
+ "ja": "\u30e1\u30bf\u30c7\u30fc\u30bf",
+ "lt": "Metaduomenys",
+ "zh-tw": "\u8a6e\u91cb\u8cc7\u6599",
+ "et": "Metaandmed",
+ "he": "\u05de\u05d8\u05d0-\u05de\u05d9\u05d3\u05e2",
+ "zh": "\u5143\u4fe1\u606f",
+ "ar": "\u0628\u064a\u0627\u0646\u0627\u062a \u0648\u0635\u0641\u064a\u0629\/ \u0645\u064a\u062a\u0627\u062f\u0627\u062a\u0627",
+ "id": "Metadata",
+ "sr": "Metapodaci"
+ },
+ "metadata_xmlformat": {
+ "no": "I SAML 2.0 Metadata XML Format:",
+ "nn": "P\u00e5 SAML 2.0 metadata XML-format",
+ "sv": "I SAML 2.0 Metadata XML-format:",
+ "es": "en formato xml de metadatos SAML 2.0:",
+ "nl": "In SAML 2.0 Metadata XML formaat:",
+ "sl": "V SAML 2.0 Metapodatkovni XML format:",
+ "da": "I SAML 2.0 metadata xml-format:",
+ "hr": "Metapodaci u SAML 2.0 XML formatu:",
+ "hu": "SAML 2.0 XML form\u00e1tumban:",
+ "pt-br": "Em formato SAML 2.0 Metadata XML",
+ "pt": "Metadados no formato XML SAML 2.0",
+ "pl": "W formacie SAML 2.0 Metadata XML",
+ "cs": "Ve SAML 2.0 metadata xml form\u00e1tu:",
+ "tr": "XML format\u0131nda SAML 2.0 SP \u00dcstverisi (Metadata)",
+ "de": "Im SAML 2.0 Metadaten-XML Format:",
+ "fr": "Au format XML de m\u00e9tadonn\u00e9es SAML 2.0",
+ "it": "Metadati SAML 2.0 in formato XML:",
+ "ja": "SAML 2.0 \u7528\u306e\u30e1\u30bf\u30c7\u30fc\u30bfXML\u30d5\u30a9\u30fc\u30de\u30c3\u30c8:",
+ "lt": "SAML 2.0 Metaduomenys XML formatu:",
+ "zh-tw": "\u5728 SAML 2.0 \u8a6e\u91cb\u8cc7\u6599 xml \u683c\u5f0f\uff1a",
+ "et": "SAML 2.0 metaandmete XML-vormingus:",
+ "he": "\u05de\u05d8\u05d0-\u05de\u05d9\u05d3\u05e2 \u05e2\u05d1\u05d5\u05e8 SAML 2.0 \u05d1\u05ea\u05d1\u05e0\u05d9\u05ea XML:",
+ "zh": "\u5728SAML 2.0 XML \u5143\u4fe1\u606f\u683c\u5f0f\u4e2d\uff1a",
+ "ar": "\u0628\u064a\u0627\u0646\u0627\u062a SAML 2.0 \u0627\u0644\u0648\u0635\u0641\u064a\u0629 \u0628\u0635\u064a\u063a\u0629 XML",
+ "id": "Dalam format XML Metadata SAML 2.0",
+ "sr": "Metapodaci u SAML 2.0 XML formatu:"
+ },
+ "debug_sending_message_text_link": {
+ "no": "Du er i ferd med \u00e5 sende en melding. Trykk p\u00e5 send melding knappen for \u00e5 fortsette.",
+ "nn": "Du er i ferd med \u00e5 senda ei melding. Trykk p\u00e5 send-peikaren for \u00e5 g\u00e5 vidare",
+ "sv": "Du \u00e4r p\u00e5 v\u00e4g att skicka ett meddelande. Klicka p\u00e5 skickal\u00e4nken f\u00f6r att forts\u00e4tta.",
+ "es": "Se va a proceder a enviar un mensaje. Pulse el enlace \"Enviar mensaje\" para continuar.",
+ "nl": "U gaat een bericht versturen. Klik op de Verstuur bericht link om door te gaan.",
+ "sl": "Sporo\u010dilo boste poslali s klikom na gumb za po\u0161iljanje.",
+ "da": "Du er ved at sende en besked. Tryk p\u00e5 'send' for forts\u00e6tte",
+ "hr": "Kliknite na poveznicu \"Po\u0161alji poruku\" da biste poslali poruku.",
+ "hu": "\u00dczenetet k\u00fcldhet. Kattintson az \u00dczenet k\u00fcld\u00e9se linkre a folytat\u00e1shoz.",
+ "pt-br": "Voc\u00ea est\u00e1 prestes a enviar uma mensagem. Clique no link enviar a mensagem para continuar.",
+ "pt": "Est\u00e1 prestes a enviar uma mensagem. Carregue na liga\u00e7\u00e3o para continuar.",
+ "cs": "M\u016f\u017eete poslat zpr\u00e1vu. Klikn\u011bte na odkaz pro pokra\u010dov\u00e1n\u00ed.",
+ "tr": "Mesaj g\u00f6ndermek \u00fczeresiniz. Devam etmek i\u00e7in mesaj g\u00f6nder linkine t\u0131klay\u0131n.",
+ "de": "Sie sind dabei eine Nachricht zu senden. Klicken Sie auf den Nachricht senden Link um fortzufahren.",
+ "fr": "Vous allez envoyer un message. Cliquez sur le lien d'envoi pour continuer.",
+ "it": "Si sta per inviare un messaggio. Premere il pulsante di invio per continuare.",
+ "ja": "\u30e1\u30c3\u30bb\u30fc\u30b8\u3092\u9001\u4fe1\u3057\u307e\u3059\u3002\u7d9a\u3051\u308b\u306b\u306f\u30e1\u30c3\u30bb\u30fc\u30b8\u9001\u4fe1\u30ea\u30f3\u30af\u3092\u62bc\u3057\u3066\u304f\u3060\u3055\u3044\u3002",
+ "lt": "J\u016bs\u0173 prane\u0161imas siun\u010diamas. Nor\u0117dami t\u0119sti, paspauskite prane\u0161imo patvirtinimo nuorod\u0105.",
+ "zh-tw": "\u60a8\u6b63\u5728\u50b3\u9001\u4e00\u5247\u8a0a\u606f\uff0c\u8acb\u9ede\u9078\u63d0\u4ea4\u8a0a\u606f\u9023\u7d50\u4f86\u7e7c\u7e8c\u3002",
+ "et": "Oled teadet saatmas. J\u00e4tkamiseks vajuta teateviidet.",
+ "he": "\u05d0\u05ea\u05d4 \u05e2\u05d5\u05de\u05d3 \u05dc\u05e9\u05dc\u05d5\u05d7 \u05d4\u05d5\u05d3\u05e2\u05d4. \u05dc\u05d7\u05e5 \u05e2\u05dc \u05db\u05e4\u05ea\u05d5\u05e8 \u05d4\u05e9\u05dc\u05d9\u05d7\u05d4 \u05db\u05d3\u05d9 \u05dc\u05d4\u05de\u05e9\u05d9\u05da.",
+ "zh": "\u4f60\u51c6\u5907\u53d1\u9001\u4e00\u4e2a\u6d88\u606f\uff0c\u8bf7\u70b9\u51fb\u63d0\u4ea4\u94fe\u63a5\u4ee5\u7ee7\u7eed",
+ "ar": "\u0627\u0646\u062a \u0639\u0644\u064a \u0648\u0634\u0643 \u0625\u0631\u0633\u0627\u0644 \u0631\u0633\u0627\u0644\u0629. \u0627\u0636\u063a\u0637 \u0639\u0644\u064a \u0627\u0644\u0631\u0627\u0628\u0637 \u0644\u0644\u0645\u0648\u0627\u0635\u0644\u0629",
+ "id": "Anda baru saja akan mengirim sebuah pesan. Tekan link submit pesan untuk melanjutkan.",
+ "sr": "Kliknite na link \"Po\u0161alji poruku\" da biste poslali poruku."
+ },
+ "debug_sending_message_send": {
+ "no": "Send melding",
+ "nn": "Send melding",
+ "sv": "Skicka meddelande",
+ "es": "Enviar mensaje",
+ "nl": "Verstuur bericht",
+ "sl": "Po\u0161lji sporo\u010dilo",
+ "da": "Send besked",
+ "hr": "Po\u0161alji poruku",
+ "hu": "\u00dczenet k\u00fcld\u00e9se",
+ "pt-br": "Enviar mensagem",
+ "pt": "Enviar mensagem",
+ "pl": "Wy\u015blij wiadomo\u015b\u0107",
+ "cs": "Poslat zpr\u00e1vu",
+ "tr": "Mesaj g\u00f6nder",
+ "de": "Nachricht senden",
+ "fr": "Envoi du message",
+ "it": "Invio messaggio",
+ "ja": "\u30e1\u30c3\u30bb\u30fc\u30b8\u3092\u9001\u4fe1",
+ "lt": "Patvirtinti prane\u0161im\u0105",
+ "zh-tw": "\u63d0\u4ea4\u8a0a\u606f",
+ "et": "Saada teade",
+ "he": "\u05e9\u05dc\u05d7 \u05d4\u05d5\u05d3\u05e2\u05d4",
+ "zh": "\u63d0\u4ea4\u4fe1\u606f",
+ "ar": "\u0633\u0644\u0645 \u0627\u0644\u0631\u0633\u0627\u0644\u0629",
+ "id": "Submit pesan",
+ "sr": "Po\u0161alji poruku"
+ },
+ "debug_sending_message_msg_title": {
+ "no": "Melding",
+ "nn": "Melding",
+ "sv": "Meddelande",
+ "es": "Mensaje",
+ "nl": "Bericht",
+ "sl": "Sporo\u010dilo",
+ "da": "Besked",
+ "hr": "Poruka",
+ "hu": "\u00dczenet",
+ "pt-br": "Mensagem",
+ "pt": "Mensagem",
+ "pl": "Wiadomo\u015b\u0107",
+ "cs": "Zpr\u00e1va",
+ "tr": "Mesaj",
+ "de": "Nachricht",
+ "fr": "Message",
+ "it": "Messaggio",
+ "ja": "\u30e1\u30c3\u30bb\u30fc\u30b8",
+ "lt": "Prane\u0161imas",
+ "zh-tw": "\u8a0a\u606f",
+ "et": "Teade",
+ "he": "\u05d4\u05d5\u05d3\u05e2\u05d4",
+ "zh": "\u4fe1\u606f",
+ "ar": "\u0631\u0633\u0627\u0644\u0629",
+ "id": "Pesan",
+ "sr": "Poruka"
+ },
+ "debug_sending_message_msg_text": {
+ "no": "Siden du er i debug modus kan du se innholdet i meldingene du sender.",
+ "nn": "Sidan du er inne i feils\u00f8kingsmodus, ser du innhaldet av meldinga du sender: ",
+ "sv": "Med avseende p\u00e5 att du \u00e4r i debugl\u00e4ge kommer du att se inneh\u00e5llet i meddelandet som du skickar:",
+ "es": "Si est\u00e1 en modo de depuraci\u00f3n, ver\u00e1 el contenido del mensaje que va a enviar:",
+ "nl": "Omdat u in debug mode bent, kunt u de inhoud van het bericht dat u verstuurt inzien",
+ "sl": "Ste v debug na\u010dinu, lahko si ogledate vsebino sporo\u010dila, ki ga po\u0161iljate",
+ "da": "Fordi du er i debug-mode kan du se indholdet af de beskeder du sender:",
+ "hr": "Obzirom da ste u modu za otkrivanje gre\u0161aka, imate mogu\u0107nost vidjeti sadr\u017eaj poruke koju \u0161aljete:",
+ "hu": "Mivel hibakeres\u0151 m\u00f3dban van, l\u00e1thatja az elk\u00fcldend\u0151 \u00fczenet tartalm\u00e1t",
+ "pt-br": "Como voc\u00ea est\u00e1 no modo de debug, voc\u00ea pode ver o conte\u00fado da mensagem que voc\u00ea est\u00e1 enviando:",
+ "pt": "Estando em modo debug, pode consultar o conte\u00fado da mensagem que est\u00e1 a enviar:",
+ "cs": "Pokud jste v debug m\u00f3du, m\u016f\u017eete videt obsah zpr\u00e1vy, kterou pos\u00edl\u00e1te:",
+ "tr": "\"Debug\" modda oldu\u011funuz i\u00e7in, g\u00f6nderdi\u011finiz mesaj\u0131n i\u00e7eri\u011fini g\u00f6receksiniz.",
+ "de": "Da Sie sich im Debug-Modus befinden, sehen Sie den Inhalt der Nachricht, die Sie senden:",
+ "fr": "Le mode de d\u00e9bogage est activ\u00e9, le contenu du message envoy\u00e9 est affich\u00e9 :",
+ "it": "Poich\u00e8 ci si trova in modalit\u00e0 di debug, si pu\u00f2 vedere il contenuto del messaggio che si sta per inviare:",
+ "ja": "\u304a\u6c17\u3065\u304d\u306e\u69d8\u306b\u3042\u306a\u305f\u306f\u30c7\u30d0\u30c3\u30b0\u30e2\u30fc\u30c9\u306b\u3044\u307e\u3059\u3002\u3042\u306a\u305f\u306f\u9001\u4fe1\u3059\u308b\u30e1\u30c3\u30bb\u30fc\u30b8\u306e\u5185\u5bb9\u3092\u898b\u308b\u3053\u3068\u304c\u51fa\u6765\u307e\u3059\u3002",
+ "lt": "\u012ejungtas detalus nar\u0161ymas, tod\u0117l matote siun\u010diamos \u017einut\u0117s turin\u012f:",
+ "zh-tw": "\u7576\u60a8\u5728\u9664\u932f\u6a21\u5f0f\uff0c\u60a8\u53ef\u4ee5\u770b\u5230\u60a8\u6240\u50b3\u905e\u7684\u8a0a\u606f\u5167\u5bb9\uff1a",
+ "et": "Kuna oled silumisre\u017eiimis, siis on sul v\u00f5imalik n\u00e4ha saadetava teate sisu:",
+ "he": "\u05db\u05d9\u05d5\u05d5\u05df \u05e9\u05d0\u05ea\u05d4 \u05d1\u05de\u05e6\u05d1 \u05de\u05d1\u05d3\u05d9\u05e7\u05ea \u05d1\u05d0\u05d2\u05d9\u05dd, \u05d0\u05ea\u05d4 \u05e8\u05d5\u05d0\u05d4 \u05d0\u05ea \u05ea\u05d5\u05db\u05df \u05d4\u05d4\u05d5\u05d3\u05e2\u05d4 \u05e9\u05d0\u05ea\u05d4 \u05e9\u05d5\u05dc\u05d7:",
+ "zh": "\u5f53\u4f60\u5904\u5728\u8c03\u8bd5\u6a21\u5f0f\u4e2d\u65f6\uff0c\u4f60\u5c06\u770b\u5230\u4f60\u6b63\u5728\u53d1\u9001\u7684\u6d88\u606f\u7684\u5185\u5bb9",
+ "ar": "\u064a\u0645\u0643\u0646\u0643 \u0631\u0624\u064a\u0629 \u0645\u062d\u062a\u0648\u064a \u0627\u0644\u0631\u0633\u0627\u0644\u0629 \u0637\u0627\u0644\u0645\u0627 \u0643\u0646\u062a \u0641\u064a \u062d\u0627\u0644\u0629 \u062a\u0635\u062d\u064a\u062d",
+ "id": "Karena anda berada pada mode debug, anda dapat melihat isi pesan yang anda kirim:",
+ "sr": "Obzirom da ste u debug modu, imate mogu\u0107nost videti sadr\u017eaj poruke koju \u0161aljete:"
+ },
+ "metaover_group_metadata.saml20-sp-remote": {
+ "no": "SAML 2.0 Tjenesteleverand\u00f8r (ekstern)",
+ "nn": "SAML 2.0 Service Provider (Remote)",
+ "sv": "SAML 2.0 Service Provider (Fj\u00e4rr)",
+ "es": "Proveedor de Servicio SAML 2.0 (Remoto)",
+ "nl": "SAML 2.0 Service Provider (Remote)",
+ "sl": "SAML 2.0 SP (Oddaljeni)",
+ "da": "SAML 2.0 tjenesteudbyder (remote)",
+ "hr": "SAML 2.0 davatelj usluge (udaljeni)",
+ "hu": "SAML 2.0 alkalmaz\u00e1sszolg\u00e1ltat\u00f3 (t\u00e1voli)",
+ "pt-br": "SAML 2.0 Service Provider (Remoto)",
+ "pt": "Fornecedor de servi\u00e7o (SP) SAML 2.0 (Remoto)",
+ "pl": "SAML 2.0 Dostawca Serwisu (Zdalny)",
+ "cs": "SAML 2.O Service Provider (Remote - vzd\u00e1len\u00fd)",
+ "tr": "SAML 2.0 Servis Sa\u011flay\u0131c\u0131 (Uzak sistemde sunulan)",
+ "de": "SAML 2.0 Service Provider (entfernt)",
+ "fr": "Fournisseur de service SAML 2.0 distant",
+ "it": "SAML 2.0 Service Provider (Remoto)",
+ "ja": "SAML 2.0\u30b5\u30fc\u30d3\u30b9\u30d7\u30ed\u30d0\u30a4\u30c0(\u30ea\u30e2\u30fc\u30c8)",
+ "lt": "SAML 2.0 Paslaugos teik\u0117jas (nutol\u0119s)",
+ "zh-tw": "SAML 2.0 \u670d\u52d9\u63d0\u4f9b\u8005(\u9060\u7aef)",
+ "et": "SAML 2.0 teenusepakkuja (kaug)",
+ "he": "\u05e1\u05e4\u05e7 \u05e9\u05d9\u05e8\u05d5\u05ea \u05de\u05e8\u05d5\u05d7\u05e7 \u05de\u05e1\u05d5\u05d2 SAML 2.0",
+ "zh": "SAML 2.0 \u670d\u52a1\u63d0\u4f9b\u8005 (\u8fdc\u7a0b)",
+ "ar": "\u0645\u0642\u062f\u0645 \u062e\u062f\u0645\u0629 SAML 2.0 \u0627\u0644\u0628\u0639\u064a\u062f",
+ "id": "Service Provider SAML 2.0 (Remote)",
+ "sr": "SAML 2.0 Davalac Servisa (udaljeni)"
+ },
+ "metaover_group_metadata.saml20-idp-hosted": {
+ "no": "SAML 2.0 Identitetsleverand\u00f8r (ekstern)",
+ "nn": "SAML 2.0 Identity Provider (Hosted)",
+ "sv": "SAML 2.0 Identity Provider (V\u00e4rd)",
+ "es": "Proveedor de Identidad SAML 2.0 (Anfitri\u00f3n)",
+ "nl": "SAML 2.0 Identity Provider (Hosted)",
+ "sl": "SAML 2.0 IdP (Lokalni)",
+ "da": "SAML 2.0 identitetsudbyder (hosted)",
+ "hr": "SAML 2.0 autentifikacijski servis (lokalni)",
+ "hu": "SAML 2.0 szem\u00e9lyazonoss\u00e1g-szolg\u00e1ltat\u00f3 (helyi)",
+ "pt-br": "SAML 2.0 Identity Provider (Local)",
+ "pt": "Fornecedor de identidade (IdP) SAML 2.0 (Local)",
+ "pl": "SAML 2.0 Dostawca To\u017csamo\u015bci (Lokalny)",
+ "cs": "SAML 2.0 Identity Provider (Hosted - lok\u00e1ln\u00ed)",
+ "tr": "SAML 2.0 Kimlik Sa\u011flay\u0131c\u0131 (Bu sistemde sunulan)",
+ "de": "SAML 2.0 Identity Provider (gehosted)",
+ "fr": "Fournisseur d'identit\u00e9 SAML 2.0 local",
+ "it": "SAML 2.o Identity Provider (Hosted)",
+ "ja": "SAML 2.0\u30a2\u30a4\u30c7\u30f3\u30c6\u30a3\u30c6\u30a3\u30d7\u30ed\u30d0\u30a4\u30c0(\u30db\u30b9\u30c8)",
+ "lt": "SAML 2.0 Tapatybi\u0173 teik\u0117jas (vietinis)",
+ "zh-tw": "SAML 2.0 \u9a57\u8b49\u63d0\u4f9b\u8005(\u4e3b\u6a5f)",
+ "et": "SAML 2.0 identiteedipakkuja (hostitud)",
+ "he": "\u05e1\u05e4\u05e7 \u05d6\u05d4\u05d5\u05ea \u05de\u05e7\u05d5\u05de\u05d9 \u05de\u05e1\u05d5\u05d2 SAML 2.0",
+ "zh": "SAML 2.0 \u8eab\u4efd\u63d0\u4f9b\u8005\uff08\u672c\u5730\uff09",
+ "ar": "\u0645\u0642\u062f\u0645 \u0647\u0648\u064a\u0629 SAML 2.0 \u0627\u0644\u0645\u0633\u062a\u0636\u0627\u0641",
+ "id": "Identity Provider SAML 2.0 (Hosted)",
+ "sr": "SAML 2.0 Davalac Identiteta (lokalni)"
+ },
+ "metaover_group_metadata.saml20-idp-remote": {
+ "no": "SAML 2.0 Identitetsleverand\u00f8r (ekstern)",
+ "nn": "SAML 2.0 Identity Provider (Remote)",
+ "sv": "SAML 2.0 Identity Provider (Fj\u00e4rr)",
+ "es": "Proveedor de Identidad SAML 2.0 (Remoto)",
+ "nl": "SAML 2.0 Identity Provider (Remote)",
+ "sl": "SAML 2.0 IdP (Oddaljeni)",
+ "da": "SAML 2.0 identitetsudbyder (remote)",
+ "hr": "SAML 2.0 autentifikacijski servis (udaljeni)",
+ "hu": "SAML 2.0 szem\u00e9lyazonoss\u00e1g-szolg\u00e1ltat\u00f3 (t\u00e1voli)",
+ "pt-br": "SAML 2.0 Identity Provider (Remoto)",
+ "pt": "Fornecedor de identidade (IdP) SAML 2.0 (Remoto)",
+ "pl": "SAML 2.0 Dostawca To\u017csamo\u015bci (Zdalny)",
+ "cs": "SAML 2.0 Identity Provider (Remote - vzd\u00e1len\u00fd)",
+ "tr": "SAML 2.0 Kimlik Sa\u011flay\u0131c\u0131 (Uzak sistemde sunulan)",
+ "de": "SAML 2.0 Identity Provider (entfernt)",
+ "fr": "Fournisseur d'identit\u00e9 SAML 2.0 distant",
+ "it": "SAML 2.0 Identity Provider (Remoto)",
+ "ja": "SAML 2.0\u30a2\u30a4\u30c7\u30f3\u30c6\u30a3\u30c6\u30a3\u30d7\u30ed\u30d0\u30a4\u30c0(\u30ea\u30e2\u30fc\u30c8)",
+ "lt": "SAML 2.0 Tapatybi\u0173 teik\u0117jas (nutol\u0119s)",
+ "zh-tw": "SAML 2.0 \u9a57\u8b49\u63d0\u4f9b\u8005(\u9060\u7aef)",
+ "et": "SAML 2.0 identiteedipakkuja (hostitud)",
+ "he": "\u05e1\u05e4\u05e7 \u05d6\u05d4\u05d5\u05ea \u05de\u05e8\u05d5\u05d7\u05e7 \u05de\u05e1\u05d5\u05d2 SAML 2.0",
+ "zh": "SAML 2.0 \u8eab\u4efd\u63d0\u4f9b\u8005\uff08\u8fdc\u7a0b\uff09",
+ "ar": "\u0645\u0642\u062f\u0645 \u0647\u0648\u064a\u0629 SAML 2.0 \u0627\u0644\u0628\u0639\u064a\u062f",
+ "id": "Identity Provider SAML 2.0 (Remote)",
+ "sr": "SAML 2.0 Davalac Identiteta (udaljeni)"
+ },
+ "metaover_group_metadata.shib13-sp-hosted": {
+ "no": "Shib 1.3 Tjenesteleverand\u00f8r (intern)",
+ "nn": "Shib 1.3 Service Provider (Hosted)",
+ "sv": "Shib 1.3 Service Provider (V\u00e4rd)",
+ "es": "Proveedor de Servicio Shib 1.3 (Anfitri\u00f3n)",
+ "nl": "Shib 1.3 Service Provider (Hosted)",
+ "sl": "Shib 1.3 SP (Lokalni)",
+ "da": "Shibboleth 1.3 tjenesteudbyder (hosted)",
+ "hr": "Shib 1.3 davatelj usluge (lokalni)",
+ "hu": "Shib 1.3 alkalmaz\u00e1sszolg\u00e1lat\u00f3 (helyi)",
+ "pt-br": "Shib 1.3 Service Provider (Local)",
+ "pt": "Fornecedor de servi\u00e7o (SP) Shib 1.3 (Local)",
+ "pl": "Shib 1.3 Dostawca Serwisu (Lokalny)",
+ "cs": "Shib 1.3 Service Provider (Hosted - lok\u00e1ln\u00ed)",
+ "tr": "Shib 1.3 Servis Sa\u011flay\u0131c\u0131 (Bu sistemde sunulan)",
+ "de": "Shib 1.3 Service Provider (gehosted)",
+ "fr": "Fournisseur de service Shib 1.3 local",
+ "it": "Shib 1.3 Service Provider (Hosted)",
+ "ja": "Shib 1.3\u30b5\u30fc\u30d3\u30b9\u30d7\u30ed\u30d0\u30a4\u30c0(\u30db\u30b9\u30c8)",
+ "lt": "Shib 1.3 Paslaugos teik\u0117jas (vietinis)",
+ "zh-tw": "Shib 1.3 \u670d\u52d9\u63d0\u4f9b\u8005(\u4e3b\u6a5f)",
+ "et": "Shib 1.3 teenusepakkuja (hostitud)",
+ "he": "\u05e1\u05e4\u05e7 \u05e9\u05d9\u05e8\u05d5\u05ea \u05de\u05e7\u05d5\u05de\u05d9 \u05de\u05e1\u05d5\u05d2 Shib 1.3",
+ "zh": "Shib 1.3 \u670d\u52a1\u63d0\u4f9b\u8005\uff08\u672c\u5730\uff09",
+ "ar": "\u0645\u0642\u062f\u0645 \u062e\u062f\u0645\u0629 Shib 1.3 \u0627\u0644\u0645\u0633\u062a\u0636\u0627\u0641",
+ "id": "Service Provider Shib 1.3 (Hosted)",
+ "sr": "Shib 1.3 Davalac Servisa (lokalni)"
+ },
+ "metaover_group_metadata.shib13-sp-remote": {
+ "no": "Shib 1.3 Tjenesteleverand\u00f8r (ekstern)",
+ "nn": "Shib 1.3 Service Provider (Remote)",
+ "sv": "Shib 1.3 Service Provider (Fj\u00e4rr)",
+ "es": "Proveedor de Servicio Shib 1.3 (Remoto)",
+ "nl": "Shib 1.3 Service Provider (Remote)",
+ "sl": "Shib 1.3 SP (Oddaljeni)",
+ "da": "Shibboleth 1.3 tjenesteudbyder (remote)",
+ "hr": "Shib 1.3 davatelj usluge (udaljeni)",
+ "hu": "Shib 1.3 alkalmaz\u00e1sszolg\u00e1ltat\u00f3 (t\u00e1voli)",
+ "pt-br": "Shib 1.3 Service Provider (Remoto)",
+ "pt": "Fornecedor de servi\u00e7o (SP) SAML 2.0 (Remoto)",
+ "pl": "Shib 1.3 Dostawca Serwisu (Zdalny)",
+ "cs": "Shib 1.3 Service Provider (Remote - vzd\u00e1len\u00fd)",
+ "tr": "Shib 1.3 Servis Sa\u011flay\u0131c\u0131 (Uzak sistemde sunulan)",
+ "de": "Shib 1.3 Service Provider (entfernt)",
+ "fr": "Fournisseur de service Shib 1.3 distant",
+ "it": "Shib 1.3 Service Provider (Remoto)",
+ "ja": "Shib 1.3\u30b5\u30fc\u30d3\u30b9\u30d7\u30ed\u30d0\u30a4\u30c0(\u30ea\u30e2\u30fc\u30c8)",
+ "lt": "Shib 1.3 Paslaugos teik\u0117jas (nutol\u0119s)",
+ "zh-tw": "Shib 1.3 \u670d\u52d9\u63d0\u4f9b\u8005(\u9060\u7aef)",
+ "et": "Shib 1.3 teenusepakkuja (kaug)",
+ "he": "\u05e1\u05e4\u05e7 \u05e9\u05d9\u05e8\u05d5\u05ea \u05de\u05e8\u05d5\u05d7\u05e7 \u05de\u05e1\u05d5\u05d2 Shib 1.3",
+ "zh": "Shib 1.3 \u670d\u52a1\u63d0\u4f9b\u8005\uff08\u8fdc\u7a0b\uff09",
+ "ar": "\u0645\u0642\u062f\u0645 \u062e\u062f\u0645\u0629 Shib 1.3 \u0627\u0644\u0628\u0639\u064a\u062f",
+ "id": "Service Provider Shib 1.3 (Remote)",
+ "sr": "Shib 1.3 Davalac Servisa (udaljeni)"
+ },
+ "metaover_group_metadata.shib13-idp-hosted": {
+ "no": "Shib 1.3 Identitetsleverand\u00f8r (ekstern)",
+ "nn": "Shib 1.3 Identity Provider (Hosted)",
+ "sv": "Shib 1.3 Identity Provider (V\u00e4rd)",
+ "es": "Proveedor de Identidad Shib 1.3 (Anfitri\u00f3n)",
+ "nl": "Shib 1.3 Identity Provider (Hosted)",
+ "sl": "Shib 1.3 SP (Lokalni)",
+ "da": "Shibboleth 1.3 identitetsudbyder (hosted)",
+ "hr": "Shib 1.3 autentifikacijski servis (lokalni)",
+ "hu": "Shib 1.3 szem\u00e9lyazonoss\u00e1g-szolg\u00e1ltat\u00f3 (helyi)",
+ "pt-br": "Shib 1.3 Identity Provider (Local)",
+ "pt": "Fornecedor de identidade (IdP) Shib 1.3 (Local)",
+ "pl": "Shib 1.3 Dostawca To\u017csamo\u015bci (Lokalny)",
+ "cs": "Shib 1.3 Identity Provider (Hosted - lok\u00e1ln\u00ed)",
+ "tr": "Shib 1.3 Kimlik Sa\u011flay\u0131c\u0131 (Bu sistemde sunulan)",
+ "de": "Shib 1.3 Identity Provider (gehosted)",
+ "fr": "Fournisseur d'identit\u00e9 Shib 1.3 local",
+ "it": "Shib 1.3 Identity Provider (Hosted)",
+ "ja": "Shib 1.3\u30a2\u30a4\u30c7\u30f3\u30c6\u30a3\u30c6\u30a3\u30d7\u30ed\u30d0\u30a4\u30c0(\u30db\u30b9\u30c8)",
+ "lt": "Shib 1.3 Tapatybi\u0173 teik\u0117jas (vietinis)",
+ "zh-tw": "Shib 1.3 \u9a57\u8b49\u63d0\u4f9b\u8005(\u4e3b\u6a5f)",
+ "et": "Shib 1.3 identiteedipakkuja (hostitud)",
+ "he": "\u05e1\u05e4\u05e7 \u05d6\u05d4\u05d5\u05ea \u05de\u05e7\u05d5\u05de\u05d9 \u05de\u05e1\u05d5\u05d2 Shib 1.3",
+ "zh": "Shib 1.3 \u8ba4\u8bc1\u63d0\u4f9b\u8005\uff08\u672c\u5730\uff09",
+ "ar": "\u0645\u0642\u062f\u0645 \u0647\u0648\u064a\u0629 Shib 1.3 \u0627\u0644\u0645\u0633\u062a\u0636\u0627\u0641",
+ "id": "Identity Provider Shib 1.3 (Hosted)",
+ "sr": "Shib 1.3 Davalac Identiteta(lokalni)"
+ },
+ "metaover_group_metadata.shib13-idp-remote": {
+ "no": "Shib 1.3 Identitetsleverand\u00f8r (ekstern) ",
+ "nn": "Shib 1.3 Identity Provider (Remote)",
+ "sv": "Shib 1.3 Identity Provider (Fj\u00e4rr)",
+ "es": "Proveedor de Identidad Shib 1.3 (Remoto)",
+ "nl": "Shib 1.3 Identity Provider (Remote)",
+ "sl": "Shib 1.3 SP (Oddaljeni)",
+ "da": "Shibboleth 1.3 identitetsudbyder (remote)",
+ "hr": "Shib 1.3 autentifikacijski servis (udaljeni)",
+ "hu": "Shib 1.3 szem\u00e9lyazonoss\u00e1g-szolg\u00e1ltat\u00f3 (t\u00e1voli)",
+ "pt-br": "Shib 1.3 Identity Provider (Remoto)",
+ "pt": "Fornecedor de identidade (IdP) Shib 1.3 (Remoto)",
+ "pl": "Shib 1.3 Dostawca To\u017csamo\u015bci (Zdalny)",
+ "cs": "Shib 1.3 Identity Provider (Remote - vzd\u00e1len\u00fd)",
+ "tr": "Shib 1.3 Kimlik Sa\u011flay\u0131c\u0131 (Uzak sistemde sunulan)",
+ "de": "Shib 1.3 Identity Provider (entfernt)",
+ "fr": "Fournisseur d'identit\u00e9 Shib 1.3 distant",
+ "it": "Shib 1.3 Identity Provider (Remoto)",
+ "ja": "Shib 1.3\u30a2\u30a4\u30c7\u30f3\u30c6\u30a3\u30c6\u30a3\u30d7\u30ed\u30d0\u30a4\u30c0(\u30ea\u30e2\u30fc\u30c8)",
+ "lt": "Shib 1.3 Tapatybi\u0173 teik\u0117jas (nutol\u0119s)",
+ "zh-tw": "Shib 1.3 \u9a57\u8b49\u63d0\u4f9b\u8005(\u9060\u7aef)",
+ "et": "Shib 1.3 identiteedipakkuja (kaug)",
+ "he": "\u05e1\u05e4\u05e7 \u05d6\u05d4\u05d5\u05ea \u05de\u05e8\u05d5\u05d7\u05e7 \u05de\u05e1\u05d5\u05d2 Shib 1.3",
+ "zh": "Shib 1.3 \u8ba4\u8bc1\u63d0\u4f9b\u8005\uff08\u8fdc\u7a0b\uff09",
+ "ar": "\u0645\u0642\u062f\u0645 \u0647\u0648\u064a\u0629 Shib 1.3 \u0627\u0644\u0628\u0639\u064a\u062f",
+ "id": "Identity Provider Shib 1.3 (Remote)",
+ "sr": "Shib 1.3 Davalac Identiteta (udaljeni)"
+ },
+ "metaover_group_metadata.wsfed-sp-hosted": {
+ "no": "WS-Federation tjenesteleverand\u00f8r (intern)",
+ "nn": "WS-Federation Service Provider (Hosted)",
+ "sv": "WS-Federation Service Provider (V\u00e4rd)",
+ "es": "Proveedor de Servicios WS-Federation (Anfitri\u00f3n)",
+ "nl": "WS-Federation Service Provider (Hosted)",
+ "sl": "WS-Fedration SP (Lokalni)",
+ "da": "WS-Federation tjenesteudbyder (hosted)",
+ "hr": "WS-Federation davatelj usluge (lokalni)",
+ "hu": "WS-Federation alkalmaz\u00e1sszolg\u00e1ltat\u00f3 (helyi)",
+ "pt-br": "WS-Federation Service Provider (Local)",
+ "pt": "Fornecedor de servi\u00e7o (SP) WS-Federation (Local)",
+ "pl": "WS-Federation Dostawca Serwisu (Lokalny)",
+ "cs": "WS-Federation Service Provider (Hosted - lok\u00e1ln\u00ed)",
+ "tr": "WS-Federasyon Servis Sa\u011flay\u0131c\u0131 (Bu sistemde sunulan)",
+ "de": "WS-Federation Service Provider (gehosted)",
+ "fr": "Fournisseur de service WS-federation local",
+ "it": "WS-Federation Service Provider (Hosted)",
+ "ja": "WS-Federation\u30b5\u30fc\u30d3\u30b9\u30d7\u30ed\u30d0\u30a4\u30c0(\u30db\u30b9\u30c8)",
+ "lt": "WS-Federacijos Paslaugos teik\u0117jas (vietinis)",
+ "zh-tw": "WS-Federation \u670d\u52d9\u63d0\u4f9b\u8005(\u4e3b\u6a5f)",
+ "et": "WS-Federation teenusepakkuja (hostitud)",
+ "he": "\u05e1\u05e4\u05e7 \u05e9\u05d9\u05e8\u05d5\u05ea \u05de\u05e7\u05d5\u05de\u05d9 \u05de\u05e1\u05d5\u05d2 \u05d0\u05d9\u05d7\u05d5\u05d3-WS",
+ "zh": "WS-Federation \u670d\u52a1\u63d0\u4f9b\u8005\uff08\u672c\u5730\uff09",
+ "ar": "\u0645\u0642\u062f\u0645 \u062e\u062f\u0645\u0629 WS-\u0627\u0644\u0641\u062f\u0631\u0627\u0644\u064a\u0629 \u0627\u0644\u0645\u0633\u062a\u0636\u0627\u0641 ",
+ "id": "Servide Provider WS-Federation (Hosted)",
+ "sr": "WS-Federation Davalac Servisa (lokalni)"
+ },
+ "metaover_group_metadata.wsfed-idp-remote": {
+ "no": "WS-Federation identitetsleverand\u00f8r (ekstern)",
+ "nn": "WS-Federation Identity Provider (Remote)",
+ "sv": "WS-Federation Service Provider (Fj\u00e4rr)",
+ "es": "Proveedor de Identidad WS-Federation (Remoto)",
+ "nl": "WS-Federation Identity Provider (Remote)",
+ "sl": "WS-Federation Idp (Oddaljni)",
+ "da": "WS-Federation identitetsudbyder (remote)",
+ "hr": "WS-Federation autentifikacijski servis (udaljeni)",
+ "hu": "WS-Federation alkalmaz\u00e1sszolg\u00e1ltat\u00f3 (t\u00e1voli)",
+ "pt-br": "WS-Federation Identity Provider (Remoto)",
+ "pt": "Fornecedor de identidade (IdP) WS-Federation (Remoto)",
+ "pl": "WS-Federation Dostawca To\u017csamo\u015bci (Zdalny)",
+ "cs": "WS-Federation Identity Provider (Remote - vzd\u00e1len\u00fd)",
+ "tr": "WS-Federasyon Kimlik Sa\u011flay\u0131c\u0131 (Uzak sistemde sunulan)",
+ "de": "WS-Federation Identity Provider (entfernt)",
+ "fr": "Fournisseur d'identit\u00e9 Shib 1.3 distant",
+ "it": "WS-Federation Identity Provider (Remoto)",
+ "ja": "WS-Federation\u30a2\u30a4\u30c7\u30f3\u30c6\u30a3\u30c6\u30a3\u30d7\u30ed\u30d0\u30a4\u30c0(\u30ea\u30e2\u30fc\u30c8)",
+ "lt": "WS-Federacijos Paslaugos teik\u0117jas (nutol\u0119s)",
+ "zh-tw": "WS-Federation \u9a57\u8b49\u63d0\u4f9b\u8005(\u9060\u7aef)",
+ "et": "WS-Federation identiteedipakkuja (kaug)",
+ "he": "\u05e1\u05e4\u05e7 \u05d6\u05d4\u05d5\u05ea \u05de\u05e8\u05d5\u05d7\u05e7 \u05de\u05e1\u05d5\u05d2 \u05d0\u05d9\u05d7\u05d5\u05d3-WS",
+ "zh": "WS-Federation \u8eab\u4efd\u63d0\u4f9b\u8005\uff08\u8fdc\u7a0b\uff09",
+ "ar": "\u0645\u0642\u062f\u0645 \u062e\u062f\u0645\u0629 WS-\u0627\u0644\u0641\u062f\u0631\u0627\u0644\u064a\u0629 \u0627\u0644\u0628\u0639\u064a\u062f",
+ "id": "Identity Provider WS-Federation (Remote)",
+ "sr": "WS-Federation Davalac Servisa (udaljeni)"
+ },
+ "metaconv_title": {
+ "no": "Metadata parser",
+ "nn": "Parser for metadata",
+ "sv": "Metadataanalyserare",
+ "es": "Analizar metadatos",
+ "nl": "Metadata parser",
+ "sl": "Metapodatkovna sintakti\u010dna analiza (parser)",
+ "da": "Metadata parser",
+ "hr": "Analizator metapodataka",
+ "hu": "Metaadat \u00e9rtelmez\u0151",
+ "pt-br": "Parser Metadata",
+ "pt": "Conversor de Metadados",
+ "pl": "Parser metadanych",
+ "cs": "Metadata parser",
+ "tr": "\u00dcstveri (metadata) \u00e7\u00f6z\u00fcmleyici",
+ "de": "Metadaten-Parser",
+ "fr": "Analyseur de m\u00e9tadonn\u00e9es",
+ "it": "Parser dei metadati",
+ "ja": "\u30e1\u30bf\u30c7\u30fc\u30bf\u30d1\u30fc\u30b5",
+ "lt": "Metaduomen\u0173 analizatorius",
+ "zh-tw": "\u8a6e\u91cb\u8cc7\u6599\u89e3\u6790",
+ "et": "Metaandmete parsija",
+ "he": "\u05de\u05e0\u05ea\u05d7 \u05de\u05d8\u05d0-\u05de\u05d9\u05d3\u05e2",
+ "zh": "\u5143\u4fe1\u606f\u5206\u6790\u5668",
+ "ar": "\u0645\u062d\u0644\u0644 \u0627\u0644\u0628\u064a\u0627\u0646\u0627\u062a \u0627\u0644\u0648\u0635\u0641\u064a\u0629\/\u0627\u0644\u0645\u064a\u062a\u0627\u062f\u0627\u062a\u0627",
+ "id": "Parser metadata",
+ "sr": "Metadata analizator"
+ },
+ "metaconv_xmlmetadata": {
+ "no": "XML metadata",
+ "nn": "XML metadata",
+ "sv": "XML-metadata",
+ "es": "Metadatos XML",
+ "nl": "XML metadata",
+ "sl": "XML metapodatki",
+ "da": "XML metadata",
+ "hr": "Metapodaci u XML formatu",
+ "hu": "XML metaadat",
+ "pt-br": "Metadata XML",
+ "pt": "Metadados em XML",
+ "pl": "XML Metadane",
+ "cs": "XML Metadata",
+ "tr": "XML \u00fcstverisi (metadata)",
+ "de": "XML-Metadaten",
+ "fr": "M\u00e9tadonn\u00e9es XML",
+ "it": "Metadati XML",
+ "ja": "XML\u30e1\u30bf\u30c7\u30fc\u30bf",
+ "lt": "XML metaduomenys",
+ "zh-tw": "XML \u8a6e\u91cb\u8cc7\u6599",
+ "et": "XML-metaandmed",
+ "he": "\u05de\u05d8\u05d0-\u05de\u05d9\u05d3\u05e2 \u05d1\u05ea\u05d1\u05e0\u05d9\u05ea XML",
+ "zh": "XML\u5143\u4fe1\u606f",
+ "ar": "\u0628\u064a\u0627\u0646\u0627\u062a \u0648\u0635\u0641\u064a\u0629 \u0628\u0635\u064a\u063a\u0629 XML",
+ "id": "metadata XML",
+ "sr": "Metapodaci u XML formatu"
+ },
+ "metaconv_parse": {
+ "no": "Pars",
+ "nn": "Parser",
+ "sv": "Analysera",
+ "es": "Analizar",
+ "nl": "Parse",
+ "sl": "Sintakti\u010dna analiza (parse)",
+ "da": "Parse",
+ "hr": "Analiziraj",
+ "hu": "\u00c9rtelmez",
+ "pt-br": "Parse",
+ "pt": "Converter",
+ "pl": "Przetw\u00f3rz",
+ "cs": "Anal\u00fdza",
+ "tr": "\u00c7\u00f6z\u00fcmle",
+ "de": "Parse",
+ "fr": "Analyser",
+ "it": "Analisi",
+ "ja": "\u30d1\u30fc\u30b9",
+ "lt": "Nagrin\u0117ti",
+ "zh-tw": "\u89e3\u6790",
+ "et": "Parsi",
+ "he": "\u05e0\u05ea\u05d7",
+ "zh": "\u5206\u6790\u5668",
+ "ar": "\u062d\u0644\u0644",
+ "id": "Parse",
+ "sr": "Analiziraj"
+ },
+ "metaconv_converted": {
+ "no": "Konvertert metadata",
+ "nn": "Konverterte metadata",
+ "sv": "Omformat metadata",
+ "es": "Metadatos convertidos",
+ "nl": "Geconverteerde metadata",
+ "sl": "Pretvorjeni metapodatki",
+ "da": "Konverteret metadata",
+ "hr": "Pretvoreni metapodaci",
+ "hu": "Konvert\u00e1lt metaadatok",
+ "pt-br": "Metadata convetida",
+ "pt": "Resultado da convers\u00e3o de Metadados",
+ "pl": "Skonwertowane metadane",
+ "cs": "Konvertovan\u00e1 metadata",
+ "tr": "D\u00f6n\u00fc\u015ft\u00fcr\u00fclm\u00fc\u015f \u00fcstveri (metadata)",
+ "de": "Konvertierte Metadaten",
+ "fr": "M\u00e9tadonn\u00e9es converties",
+ "it": "Metadati convertiti",
+ "ja": "\u5909\u63db\u3055\u308c\u305f\u30e1\u30bf\u30c7\u30fc\u30bf",
+ "lt": "Sukonvertuoti metaduomenys",
+ "zh-tw": "\u8f49\u63db\u8a6e\u91cb\u8cc7\u6599",
+ "et": "Teisendatud metaandmed",
+ "he": "\u05de\u05d8\u05d0-\u05de\u05d9\u05d3\u05e2 \u05de\u05d5\u05de\u05e8",
+ "zh": "\u8f6c\u6362\u8fc7\u7684\u5143\u4fe1\u606f",
+ "ar": "\u0628\u064a\u0627\u0646\u0627\u062a \u0648\u0635\u0641\u064a\u0629 \u0645\u062d\u0648\u0644\u0629",
+ "id": "Metadata yang telah dikonvesi",
+ "sr": "Konvertovani metapodaci"
+ },
+ "metadata_saml20-sp": {
+ "no": "SAML 2.0 SP metadata",
+ "nn": "SAML 2.0 SP Metadata",
+ "sv": "SAML 2.0 SP Metadata",
+ "es": "Metadatos SP SAML 2.0",
+ "nl": "SAML 2.0 SP Metadata",
+ "sl": "SAML 2.0 SP Metapodatki",
+ "da": "SAML 2.0 tjenesteudbyders metadata",
+ "hr": "SAML 2.0 metapodaci o davatelju usluge",
+ "hu": "SAML 2.0 SP Metaadatok",
+ "pt-br": "SAML 2.0 SP Metadata",
+ "pt": "Metadados SAML 2.0 SP",
+ "pl": "SAML 2.0 SP - Metadane",
+ "cs": "SAML 2.0 SP Metadata",
+ "tr": "SAML 2.0 SP \u00dcstveri (Metadata)",
+ "de": "SAML 2.0 SP Metadaten",
+ "fr": "M\u00e9tadonn\u00e9es de SP SAML 2.0",
+ "it": "Metadati SAML 2.0 SP",
+ "ja": "SAML 2.0 SP\u30e1\u30bf\u30c7\u30fc\u30bf",
+ "lt": "SAML 2.0 SP Metaduomenys",
+ "zh-tw": "SAML 2.0 SP \u8a6e\u91cb\u8cc7\u6599",
+ "et": "SAML 2.0 SP metaandmed",
+ "he": "\u05de\u05d8\u05d0-\u05de\u05d9\u05d3\u05e2 \u05e9\u05dc \u05e1\u05e9 \u05de\u05e1\u05d5\u05d2 SAML 2.0 ",
+ "zh": "SAML 2.0 SP \u5143\u4fe1\u606f",
+ "ar": "\u0627\u0644\u0628\u064a\u0627\u0646\u0627\u062a \u0627\u0644\u0648\u0635\u0641\u064a\u0629 \u0644 SAML 2.0 SP",
+ "id": "Metadata SAML 2.0 SP",
+ "sr": "SAML 2.0 SP metapodaci"
+ },
+ "metadata_saml20-idp": {
+ "no": "SAML 2.0 IdP metadata",
+ "nn": "SAML 2.0 IdP Metadata",
+ "sv": "SAML 2.0 IdP Metadata",
+ "es": "Metadatos IdP SAML 2.0",
+ "nl": "SAML 2.0 IdP Metadata",
+ "sl": "SAML 2.0 IdP Metapodatki",
+ "da": "SAML 2.0 identitetsudbyders metadata",
+ "hr": "SAML 2.0 metapodaci o autentifikacijskom servisu",
+ "hu": "SAML 2.0 IdP Metaadatok",
+ "pt-br": "SAML 2.0 IdP Metadata",
+ "pt": "Metadados SAML 2.0 IdP",
+ "pl": "SAML 2.0 IdP - Metadane",
+ "cs": "SAML 2.0 IdP Metadata",
+ "tr": "SAML 2.0 IdP \u00dcstveri (Metadata)",
+ "de": "SAML 2.0 IdP Metadaten",
+ "fr": "M\u00e9tadonn\u00e9es d'IdP SAML 2.0",
+ "it": "Metadati SAML 2.0 IdP",
+ "ja": "SAML 2.0 IdP\u30e1\u30bf\u30c7\u30fc\u30bf",
+ "lt": "SAML 2.0 IdP Metaduomenys",
+ "zh-tw": "SAML 2.0 IdP \u8a6e\u91cb\u8cc7\u6599",
+ "et": "SAML 2.0 IdP metaandmed",
+ "he": "\u05de\u05d8\u05d0-\u05de\u05d9\u05d3\u05e2 \u05e9\u05dc \u05e1\u05d6 \u05de\u05e1\u05d5\u05d2 SAML 2.0 ",
+ "zh": "SAML 2.0 IdP \u5143\u4fe1\u606f",
+ "ar": "\u0627\u0644\u0628\u064a\u0627\u0646\u0627\u062a \u0627\u0644\u0648\u0635\u0641\u064a\u0629 \u0644 SAML 2.0 IdP",
+ "id": "Metadata SAML 2.0 IdP",
+ "sr": "SAML 2.0 IdP metapodaci"
+ },
+ "metadata_shib13-sp": {
+ "no": "Shib 1.3 SP metadata",
+ "nn": "Shib 1.3 SP Metadata",
+ "sv": "Shib 1.3 SP Metadata",
+ "es": "Metadatos SP Shib 1.3",
+ "nl": "Shib 1.3 SP Metadata",
+ "sl": "Shib 1.3 SP Metapodatki",
+ "da": "Shibboleth 1.3 tjenesteudbyders metadata",
+ "hr": "Shib 1.3 metapodaci o davatelju usluge",
+ "hu": "Shib 1.3 SP Metaadatok",
+ "pt-br": "Shib 1.3 SP Metadata",
+ "pt": "Metadados Shib 1.3 SP",
+ "pl": "Shib 1.3 SP - Metadane",
+ "cs": "Shib 1.3 SP Metadata",
+ "tr": "Shib 1.3 SP \u00dcstveri (Metadata)",
+ "de": "Shib 1.3 SP Metadaten",
+ "fr": "M\u00e9tadonn\u00e9es de SP Shib 1.3",
+ "it": "Metadati Shib 1.3 SP",
+ "ja": "Shib 1.3 SP\u30e1\u30bf\u30c7\u30fc\u30bf",
+ "lt": "Shib 1.3 SP Metaduomenys",
+ "zh-tw": "Shib 1.3 SP \u8a6e\u91cb\u8cc7\u6599",
+ "et": "Shib 1.3 SP metaandmed",
+ "he": "\u05de\u05d8\u05d0-\u05de\u05d9\u05d3\u05e2 \u05e9\u05dc \u05e1\u05e9 \u05de\u05e1\u05d5\u05d2 Shib 1.3",
+ "zh": "Shib 1.3 SP \u5143\u4fe1\u606f",
+ "ar": "\u0627\u0644\u0628\u064a\u0627\u0646\u0627\u062a \u0627\u0644\u0648\u0635\u0641\u064a\u0629 \u0644Shib 1.3 SP",
+ "id": "Metadata Shib 1.3 SP",
+ "sr": "Shib 1.3 SP metapodaci"
+ },
+ "metadata_shib13-idp": {
+ "no": "Shib 1.3 IdP metadata",
+ "nn": "Shib 1.3 IdP Metadata",
+ "sv": "Shib 1.3 IdP Metadata",
+ "es": "Metadatos IdP Shib 1.3",
+ "nl": "Shib 1.3 IdP Metadata",
+ "sl": "Shib 1.3 IdP Metapodatki",
+ "da": "Shibboleth 1.3 identitetsudbyders metadata",
+ "hr": "Shib 1.3 metapodaci o autentifikacijskom servisu",
+ "hu": "Shib 1.3 IdP Metaadatok",
+ "pt-br": "Shib 1.3 IdP Metadata",
+ "pt": "Metadados Shib 1.3 IdP",
+ "pl": "Shib 1.3 IdP - Metadane",
+ "cs": "Shib 1.3 IdP Metadata",
+ "tr": "Shib 1.3 IdP \u00dcstveri (Metadata)",
+ "de": "Shib 1.3 IdP Metadaten",
+ "fr": "M\u00e9tadonn\u00e9es d'IdP Shib 1.3",
+ "it": "Metadati Shib 1.3 IdP",
+ "ja": "Shib 1.3 IdP\u30e1\u30bf\u30c7\u30fc\u30bf",
+ "lt": "Shib 1.3 IdP Metaduomenys",
+ "zh-tw": "Shib 1.3 IdP \u8a6e\u91cb\u8cc7\u6599",
+ "et": "Shib 1.3 IdP metaandmed",
+ "he": "\u05de\u05d8\u05d0-\u05de\u05d9\u05d3\u05e2 \u05e9\u05dc \u05e1\u05d6 \u05de\u05e1\u05d5\u05d2 Shib 1.3",
+ "zh": "Shib 1.3 IdP \u5143\u4fe1\u606f",
+ "ar": "\u0627\u0644\u0628\u064a\u0627\u0646\u0627\u062a \u0627\u0644\u0648\u0635\u0641\u064a\u0629 \u0644Shib 1.3 IdP",
+ "id": "Metadata Shib 1.3 IdP",
+ "sr": "Shib 1.3 IdP metapodaci"
+ },
+ "metadata_intro": {
+ "no": "Her er metadata som simpleSAMLphp har generert for deg. Du m\u00e5 utveksle metadata med de partene du stoler p\u00e5 for \u00e5 sette opp en f\u00f8derasjon.",
+ "nn": "Her er metadata generert av simpleSAMLphp for deg. Du kan senda dette metadata-dokumentet til dine partnarar, slik at de kan setja opp ein tillitsf\u00f8derasjon.",
+ "sv": "simpleSAMLphp har har genererat f\u00f6ljande metadata. F\u00f6r att s\u00e4tta upp en betrodd federation kan du skicka metadata till de parter du har f\u00f6rtroende f\u00f6r.",
+ "es": "Aqu\u00ed est\u00e1n los metadatos que simpleSAMLphp ha generado. Puede enviar este documento de metadatos a sus socios de confianza para configurar una federaci\u00f3n.",
+ "nl": "Dit is de metadata die automatisch is gegenereerd door simpleSAMLphp. U kunt deze metadata uitwisselen met uw federatiepartners.",
+ "sl": "Tu so metapodatki, ki jih je generiral simpleSAMLphp. Dokument lahko po\u0161ljete zaupanja vrednim partnerjem, s katerimi boste ustvarili federacijo.",
+ "da": "Her er det metadata, som simpleSAMLphp har genereret. Du kan sende det til dem du stoler i forbindelse med oprettelsen af en f\u00f8deration.",
+ "hr": "Ovo su metapodaci koje je simpleSAMLphp izgenerirao za vas. Te metapodatke mo\u017eete poslati davateljima usluga ili elektroni\u010dkih identiteta u koje imate povjerenja i s kojima \u017eelite uspostaviti federaciju.",
+ "hu": "Ezeket a metaadatokat a SimpleSAMLphp gener\u00e1lta. Ezt a dokumentumot k\u00fcldheti el f\u00f6der\u00e1ci\u00f3s partnerei sz\u00e1m\u00e1ra.",
+ "pt-br": "Aqui est\u00e1 a metadata que o simpleSAMLphp gerou para voc\u00ea. Voc\u00ea pode enviar este documento metadata para parceiros confi\u00e1veis para a configura\u00e7\u00e3o de uma federa\u00e7\u00e3o confi\u00e1vel.",
+ "pt": "De seguida pode encontrar os metadados gerados pelo simpleSAMLphp. Pode enviar este documento de metadados aos seus parceiros para configurar uma federa\u00e7\u00e3o.",
+ "pl": "Tutaj sa metadane, kt\u00f3re simpleSAMLphp wygenerowa\u0142 dla Ciebie. Mo\u017cesz je wys\u0142a\u0107 zaufanym partnerom w celu stworzenia zaufanej federacji.",
+ "cs": "Zde jsou metadata, kter\u00e1 pro v\u00e1s simpleSAMLphp generuje. M\u016f\u017eete zaslat tento dokument sv\u00fdm d\u016fv\u011bryhodn\u00fdm partner\u016fm a zalo\u017eit tak federaci.",
+ "tr": "simpleSAMLphp'nin sizin i\u00e7in \u00fcretti\u011fi \u00fcstveri (metada). Bu \u00fcstveri dok\u00fcman\u0131n\u0131 g\u00fcvenilir bir federasyon kurmak i\u00e7in g\u00fcvenilir payda\u015flara g\u00f6nderebilirsiniz.",
+ "de": "Hier finden Sie die Metadaten, die simpleSAMLphp f\u00fcr Sie erzeugt hat. Sie k\u00f6nnen dieses Metadaten-Dokument zu Partnern schicken, denen Sie vertrauen, um eine vertrauensbasierte F\u00f6deration aufzusetzen.",
+ "fr": "Voici les m\u00e9tadonn\u00e9es g\u00e9n\u00e9r\u00e9es par simpleSAMLphp. Vous pouvez les envoyer \u00e0 vos partenaires de confiances pour construire une f\u00e9d\u00e9ration d'identit\u00e9.",
+ "it": "Questi sono i metadati che simpleSAMLphp ha generato e che possono essere inviati ai partner fidati per creare una federazione tra siti.",
+ "ja": "\u3053\u3053\u306f simpleSAMLphp \u304c\u751f\u6210\u3057\u305f\u30e1\u30bf\u30c7\u30fc\u30bf\u304c\u3042\u308a\u307e\u3059\u3002\u3042\u306a\u305f\u306f\u4fe1\u983c\u3059\u308b\u30d1\u30fc\u30c8\u30ca\u30fc\u306b\u3053\u306e\u30e1\u30bf\u30c7\u30fc\u30bf\u3092\u9001\u4fe1\u3057\u4fe1\u983c\u3055\u308c\u305f\u9023\u643a\u3092\u69cb\u7bc9\u51fa\u6765\u307e\u3059\u3002",
+ "lt": "Metaduomenys, kuriuos Jums sugeneravo simpleSAMLphp. Norint \u012fsteigti patikim\u0105 federacij\u0105, galite patikimiems partneriams i\u0161si\u0173sti \u0161iuos metaduomenis.",
+ "zh-tw": "\u9019\u662f simpleSAMLphp \u7522\u751f\u7d66\u60a8\u7684\u8a6e\u91cb\u8cc7\u6599\uff0c\u60a8\u53ef\u4ee5\u50b3\u9001\u6b64\u8a6e\u91cb\u8cc7\u6599\u6587\u4ef6\u7d66\u60a8\u4fe1\u4efb\u7684\u5925\u4f34\u4f86\u5efa\u7acb\u53ef\u9760\u7684\u806f\u76df\u3002",
+ "et": "Need on simpleSAMLphp poolt sulle genereeritud metaandmed. V\u00f5id saata need metaandmed usaldatavatele partneritele usaldatava f\u00f6deratsiooni loomiseks.",
+ "he": "\u05d4\u05e0\u05d4 \u05d4\u05de\u05d8\u05d0-\u05de\u05d9\u05d3\u05e2 \u05e9 simpleSAMLphp \u05d9\u05d9\u05e6\u05e8 \u05e2\u05d1\u05d5\u05e8\u05da. \u05d0\u05ea\u05d4 \u05d9\u05db\u05d5\u05dc \u05dc\u05e9\u05dc\u05d5\u05d7 \u05d0\u05ea \u05de\u05e1\u05de\u05da \u05d4\u05de\u05d8\u05d0-\u05de\u05d9\u05d3\u05e2 \u05dc\u05e9\u05d5\u05ea\u05e4\u05d9\u05dd \u05de\u05d4\u05d9\u05de\u05e0\u05d9\u05dd \u05db\u05d3\u05d9 \u05dc\u05d9\u05e6\u05d5\u05e8 \u05d0\u05d9\u05d7\u05d5\u05d3 \u05de\u05d0\u05d5\u05d1\u05d8\u05d7. ",
+ "zh": "\u8fd9\u91cc\u662fsimpleSAMLphp\u4e3a\u4f60\u751f\u6210\u7684\u5143\u4fe1\u606f\uff0c\u4f60\u5e94\u8be5\u53d1\u9001\u8fd9\u4e2a\u5143\u4fe1\u606f\u6587\u6863\u7ed9\u4f60\u7684\u4fe1\u4efb\u7684\u5408\u4f5c\u4f19\u4f34\u4ee5\u5efa\u7acb\u4fe1\u4efb\u7684\u8054\u76df",
+ "ar": "\u0647\u0630\u0647 \u0647\u064a \u0628\u064a\u0627\u0646\u0627\u062a\u0643 \u0627\u0644\u0648\u0635\u0641\u064a\u0629 \u0627\u0644\u0645\u062c\u0647\u0632\u0629 \u0628\u0648\u0627\u0633\u0637\u0629 SAMLphp. \u0644\u0644\u062a\u062c\u0647\u064a\u0632 \u0644\u0641\u062f\u0631\u0627\u0644\u064a\u0629 \u0645\u0648\u062b\u0648\u0642 \u0628\u0647\u0627 \u0642\u0645 \u0628\u0625\u0631\u0633\u0627\u0644 \u0647\u0630\u0647 \u0627\u0644\u0648\u062b\u064a\u0642\u0629 \u0644\u0634\u0631\u0643\u0627\u0621 \u0645\u0648\u062b\u0648\u0642 \u0628\u0647\u0645",
+ "id": "Berikut ini adalah simpleSAMLphp metadata yang telah digenerate untuk Anda. Anda dapat mengirim dokumen metadata ini kepada rekan yang dipercayai untuk mensetup federasi terpercaya.",
+ "sr": "Ovo su metapodaci koje je simpleSAMLphp izgenerisao za vas. Te metapodatke mo\u017eete poslati davaocima servisa ili davaocima identiteta u koje imate poverenja i sa kojima \u017eelite uspostaviti federaciju."
+ },
+ "metadata_xmlurl": {
+ "no": "Du kan n\u00e5 <a href=\"%METAURL%\">metadata i XML-format p\u00e5 en dedikert URL<\/a>:",
+ "nn": "Du kan <a href=\"%METAURL%\">f\u00e5 metadata i XML p\u00e5 ein URL<\/a>:",
+ "sv": "Du kan <a href=\"%METAURL%\">h\u00e4mta metadata i XML-format p\u00e5 dedicerad URL<\/a>:",
+ "es": "Puede <a href=\"%METAURL%\">obtener una URL con los metadatos xml<\/a>:",
+ "nl": "U kunt <a href=\"%METAURL%\">deze directe URL gebruiken<\/a> om de metadata XML op te vragen:",
+ "sl": "XML metapodatki se nahajajo na <a href=\"%METAURL%\">tem naslovu<\/a>:",
+ "da": "Du kan f\u00e5 metadata-xml <a href=\"%METAURL%\">her<\/a>:",
+ "hr": "Metapodaci su dostupni na <a href=\"%METAURL%\">ovoj adresi<\/a>:",
+ "hu": "A k\u00f6vetkez\u0151 c\u00edmr\u0151l <a href=\"%METAURL%\">t\u00f6ltheti le a metaadatokat<\/a>:",
+ "pt-br": "Voc\u00ea pode obter as metadatas xml <a href=\"%METAURL%\"> em uma URL dedicada<\/a>:",
+ "pt": "Pode <a href=\"%METAURL%\">obter os metadados em XML num URL dedicado<\/a>:",
+ "pl": "Mo\u017cesz <a href=\"%METAURL%\">pobra\u0107 metadane w formacie xml<\/a>:",
+ "cs": "<a href=\"%METAURL%\">Z\u00edskejte metadata v XML form\u00e1tu na dedikovan\u00e9 adrese<\/a>",
+ "tr": "<a href=\"%METAURL%\">\u00dcstveri xml'ini bu ba\u011flant\u0131dan alabilirsiniz<\/a>:",
+ "de": "Sie k\u00f6nnen <a href=\"%METAURL%\">das Metadaten-XML auf dieser URL erhalten:<\/a>:",
+ "fr": "Vous pouvez <a href=\"%METAURL%\">obtenir ces m\u00e9tadonn\u00e9es XML depuis une URL d\u00e9di\u00e9e<\/a>:",
+ "it": "Si possono <a href=\"%METAURL%\">ottenere i metadati in XML dall'URL dedicata<\/a>:",
+ "ja": "<a href=\"%METAURL%\">\u3053\u306eURL\u3067\u30e1\u30bf\u30c7\u30fc\u30bf\u306eXML\u3092\u53d6\u5f97\u3067\u304d\u307e\u3059<\/a>:",
+ "lt": "J\u016bs galite <a href=\"%METAURL%\">gauti metaduomenis XML formatu<\/a>:",
+ "zh-tw": "<a href=\"%METAURL%\"> \u76f4\u63a5\u53d6\u5f97\u8a6e\u91cb\u8cc7\u6599 xml \u683c\u5f0f\u6a94 <\/a>",
+ "et": "<a href=\"%METAURL%\">Metaandmete XML-i on v\u00f5imalik saada spetsiaalselt aadressilt<\/a>:",
+ "he": "\u05d0\u05ea\u05d4 \u05d9\u05db\u05d5\u05dc <a href=\"%METAURL%\">\u05dc\u05e7\u05d1\u05dc \u05d0\u05ea \u05d4\u05de\u05d8\u05d0 \u05de\u05d9\u05d3\u05e2 \u05d1\u05db\u05ea\u05d5\u05d1\u05ea \u05e0\u05e4\u05e8\u05d3\u05ea<\/a>:",
+ "zh": "\u4f60\u53ef\u4ee5\u5728 <a href=\"%METAURL%\">\u83b7\u53d6\u5143\u4fe1\u606fXML<\/a>",
+ "ar": "\u064a\u0645\u0643\u0646\u0643 \u0627\u0644\u062d\u0635\u0648\u0644 \u0639\u0644\u064a \u0628\u064a\u0627\u0646\u0627\u062a\u0643 \u0627\u0644\u0648\u0635\u0641\u064a\u0629 \u0628\u0645\u0644\u0641 xml \u0628 URL \u0645\u062a\u062e\u0635\u0635 \u0628\u0625\u062f\u062e\u0627\u0644<a href=\"%METAURL%\">",
+ "id": "Anda dapat <a href=\"%METAURL%\">mendapatkan xml metadata pada URL tersendiri<\/a>:",
+ "sr": "Metapodaci su dostupni na <a href=\"%METAURL%\">ovoj adresi<\/a>:"
+ },
+ "metadata_simplesamlformat": {
+ "no": "I simpleSAMLphp format - bruk denne dersom du benytter simpleSAMLphp i den andre enden:",
+ "nn": "P\u00e5 flat fil for simpleSAMLphp. Bruk denne dersom du bruker simpleSAMLphp p\u00e5 andre sida:",
+ "sv": "I filformatet f\u00f6r simpleSAML, anv\u00e4nd detta detta format om simpleSAMLphp anv\u00e4nds i mottagende sida:",
+ "es": "en un fichero de formato simpleSAMLphp - utilice esta opci\u00f3n si est\u00e1 usando una entidad simpleSAMLphp en el otro extremo:",
+ "nl": "In simpleSAMLphp flat file formaat - gebruik dit wanneer uw federatiepartner ook simpleSAMLphp gebruikt",
+ "sl": "V simpleSAMLphp \"flat file\" formatu - ta format uporabite, \u010de uporabljate simpleSAMLphp entiteto na drugi strani:",
+ "da": "I simpleSAMLphp flat-file format - brug dette hvis du ogs\u00e5 bruger simpleSAMLphp i den anden ende;",
+ "hr": "U simpleSAMLphp formatu - koristite ovu opciju ako se na drugoj strani tako\u0111er nalazi simpleSAMLphp entitet:",
+ "hu": "SimpleSAMLphp f\u00e1jl form\u00e1tumban - akkor haszn\u00e1lhat\u00f3, ha a m\u00e1sik oldalon simpleSAMLphp van:",
+ "pt-br": "Em formato de arquivo plano simpleSAMLphp - use isso se voc\u00ea estiver usando uma entidade simpleSAMLphp do outro lado:",
+ "pt": "Metadados no formato ficheiro de configura\u00e7\u00e3o do simpleSAMLphp. Use esta alternativa se usar uma entidade simpleSAMLphp no outro extremo:",
+ "cs": "Ve simpleSAMLphp souborov\u00e9m form\u00e1tu (flat-file) - pou\u017eijte je, pokud pot\u0159ebujete pou\u017e\u00edvat simpleSAMLphp na druh\u00e9 stran\u011b:",
+ "tr": "E\u011fer di\u011fer tarafta bir simpleSAMLphp eleman\u0131n\u0131 kullan\u0131yorsan\u0131z, d\u00fcz simpleSAMLphp dosya bi\u00e7iminde bunu kullan\u0131n:",
+ "de": "Im simpleSAMLphp flat-file Format - verwenden Sie das, falls auf der Gegenseite eine simpleSAMLphp-Entit\u00e4t zum Einsatz kommt:",
+ "fr": "Au format \u00e0 plat simpleSAMLphp - \u00e0 utiliser si vous avez une installation simpleSAMLphp sur la partie adverse :",
+ "it": "In formato flat per simpleSAMLphp - da utilizzare se dall'altra parte c'\u00e8 un'entit\u00e0 che utilizza simpleSAMLphp",
+ "ja": "simpleSAMLphp \u306e\u30d5\u30a1\u30a4\u30eb\u30d5\u30a9\u30fc\u30de\u30c3\u30c8 - \u7247\u5074\u3067\u3082 simpleSAMLphp\u30a8\u30f3\u30c6\u30a3\u30c6\u30a3\u3092\u4f7f\u7528\u3059\u308b\u5834\u5408\u306b\u3053\u308c\u3092\u4f7f\u7528\u3057\u307e\u3059:",
+ "lt": "simpleSAMLphp paprasto failo formatas - naudokite j\u012f, jei naudojate simpleSAMLphp kitoje esyb\u0117je:",
+ "zh-tw": "\u5982\u679c\u60a8\u9700\u8981\u65bc\u5176\u4ed6\u5730\u65b9\u4f7f\u7528 simpleSAMLphp \u5be6\u9ad4 - \u8acb\u53c3\u95b1 simpleSAMLphp \u5e73\u9762\u6587\u4ef6\u683c\u5f0f\uff1a",
+ "et": "simpleSAMLphp formaadis: kasuta seda siis, kui ka teine pool kasutab simpleSAMLphp-d:",
+ "he": "\u05d1\u05ea\u05d1\u05e0\u05d9\u05ea \u05e7\u05d5\u05d1\u05e5 simpleSAMLphp \u05e9\u05d8\u05d5\u05d7 - \u05dc\u05de\u05e7\u05e8\u05d9\u05dd \u05d1\u05d4\u05dd \u05d0\u05ea\u05d4 \u05de\u05e9\u05ea\u05de\u05e9 \u05d1\u05d9\u05e9\u05d5\u05ea simpleSAMLphp \u05d1\u05e6\u05d3 \u05d4\u05e9\u05e0\u05d9: ",
+ "zh": "\u5982\u679c\u4f60\u60f3\u5728\u5176\u4ed6\u7f51\u7ad9\u4f7f\u7528\u7684simpleSAMLphp\uff0c\u90a3\u4e48\u4f60\u5e94\u8be5\u4f7f\u7528simpleSAMLphp\u6241\u5e73\u7684\u6587\u4ef6\u683c\u5f0f",
+ "ar": "\u0628\u0635\u064a\u063a\u0629 simpleSAMLphp- \u0627\u0633\u062a\u062e\u062f\u0645 \u0647\u0630\u0647 \u0627\u0644\u0635\u064a\u063a\u0629 \u0627\u0646 \u0643\u0646\u062a \u062a\u0633\u062a\u062e\u062f\u0645 \u0648\u062d\u062f\u0629 simpleSAMLphp \u0628\u0627\u0644\u0627\u062a\u062c\u0627\u0647 \u0627\u0644\u0627\u062e\u0631 \u0627\u064a\u0636\u0627\u064b",
+ "id": "Dalam format file biasa simpleSAMLphp - gunakan ini jika Anda menggunakan entiti simpleSAMLphp pada sisi lain:",
+ "sr": "U simpleSAMLphp formatu - koristite ovu opciju ako se na drugoj strani tako\u0111e nalazi simpleSAMLphp entitet:"
+ },
+ "debug_sending_message_title": {
+ "no": "Sender melding",
+ "nn": "Sender melding",
+ "sv": "Skickar meddelande",
+ "es": "Enviando mensaje",
+ "nl": "Bericht",
+ "sl": "Po\u0161iljanje sporo\u010dila",
+ "da": "Sender besked",
+ "hr": "\u0160aljem poruku",
+ "hu": "\u00dczenet k\u00fcld\u00e9se",
+ "pt-br": "Enviando a mensagem",
+ "pt": "A enviar a mensagem",
+ "pl": "Wysy\u0142anie wiadomo\u015bci",
+ "cs": "Pos\u00edl\u00e1m zpr\u00e1vu",
+ "tr": "Mesaj g\u00f6nderiliyor",
+ "de": "Sende Nachricht",
+ "fr": "Envoi du message",
+ "it": "Invio del messaggio",
+ "ja": "\u30e1\u30c3\u30bb\u30fc\u30b8\u3092\u9001\u4fe1\u4e2d",
+ "lt": "Siun\u010diamas prane\u0161imas",
+ "zh-tw": "\u50b3\u9001\u8a0a\u606f",
+ "et": "Teate saatmine",
+ "he": "\u05e9\u05d5\u05dc\u05d7 \u05d4\u05d5\u05d3\u05e2\u05d4",
+ "zh": "\u6b63\u5728\u53d1\u9001\u6d88\u606f",
+ "ar": "\u0627\u0631\u0633\u0644 \u0631\u0633\u0627\u0644\u0629",
+ "id": "Mengirimpan pesan",
+ "sr": "\u0160aljem poruku"
+ },
+ "debug_sending_message_text_button": {
+ "no": "Du er i ferd med \u00e5 sende en melding. Trykk knappen \u00abSend melding\u00bb for \u00e5 fortsette.",
+ "nn": "Du er i ferd med \u00e5 senda ei melding. Trykk p\u00e5 send-knappen for \u00e5 g\u00e5 vidare",
+ "sv": "Du \u00e4r p\u00e5 v\u00e4g att skicka ett meddelande. Klicka p\u00e5 skickaknappen f\u00f6r att forts\u00e4tta.",
+ "es": "Se va a proceder a enviar un mensaje. Pulse el bot\u00f3n \"Enviar mensaje\" para continuar.",
+ "nl": "U gaat een bericht versturen. Klik op de Verstuur bericht knop om door te gaan.",
+ "sl": "Sporo\u010dilo boste poslali s klikom na gumb za po\u0161iljanje.",
+ "da": "Tryk p\u00e5 'send' for at forts\u00e6tte med at sende beskeden",
+ "hr": "Kliknite na gumb \"Po\u0161alji poruku\" da biste poslali poruku.",
+ "hu": "\u00dczenetet k\u00fcldhet. Kattintson az \u00dczenet k\u00fcld\u00e9se gombra a folytat\u00e1shoz.",
+ "pt-br": "Voc\u00ea est\u00e1 prestes a enviar uma mensagem. Aperte o bot\u00e3o enviar mensagem para continuar.",
+ "pt": "Est\u00e1 prestes a enviar uma mensagem. Carregue no bot\u00e3o para continuar.",
+ "cs": "M\u016f\u017eete poslat zpr\u00e1vu. Po\u017eijte tla\u010d\u00edtko k pokra\u010dov\u00e1n\u00ed.",
+ "tr": "Mesaj g\u00f6ndermek \u00fczeresiniz. Devam etmek i\u00e7in mesaj g\u00f6nder butonuna t\u0131klay\u0131n.",
+ "de": "Sie sind dabei eine Nachricht zu senden. Klicken Sie auf den Nachricht senden Knopf um fortzufahren.",
+ "fr": "Vous allez envoyer un message. Cliquez sur le bouton d'envoi pour continuer.",
+ "it": "Si sta per inviare un messaggio. Premere il pulsante di invio per continuare.",
+ "ja": "\u30e1\u30c3\u30bb\u30fc\u30b8\u3092\u9001\u4fe1\u3057\u307e\u3059\u3002\u7d9a\u3051\u308b\u306b\u306f\u30e1\u30c3\u30bb\u30fc\u30b8\u9001\u4fe1\u30dc\u30bf\u30f3\u3092\u62bc\u3057\u3066\u304f\u3060\u3055\u3044\u3002",
+ "lt": "J\u016bs\u0173 prane\u0161imas siun\u010diamas. Nor\u0117dami t\u0119sti, paspauskite prane\u0161imo patvirtinimo mygtuk\u0105.",
+ "zh-tw": "\u60a8\u6b63\u5728\u50b3\u9001\u4e00\u5247\u8a0a\u606f\uff0c\u8acb\u9ede\u9078\u63d0\u4ea4\u8a0a\u606f\u6309\u9215\u4f86\u7e7c\u7e8c\u3002",
+ "et": "Oled teadet saatmas. J\u00e4tkamiseks vajuta teatesaatmisnuppu.",
+ "he": "\u05d0\u05ea\u05d4 \u05e2\u05d5\u05de\u05d3 \u05dc\u05e9\u05dc\u05d5\u05d7 \u05d4\u05d5\u05d3\u05e2\u05d4. \u05dc\u05d7\u05e5 \u05e2\u05dc \u05db\u05e4\u05ea\u05d5\u05e8 \u05d4\u05e9\u05dc\u05d9\u05d7\u05d4 \u05db\u05d3\u05d9 \u05dc\u05d4\u05de\u05e9\u05d9\u05da.",
+ "zh": "\u4f60\u51c6\u5907\u53d1\u9001\u4e00\u4e2a\u6d88\u606f\uff0c\u8bf7\u70b9\u51fb\u63d0\u4ea4\u6309\u94ae\u4ee5\u7ee7\u7eed",
+ "ar": "\u0627\u0646\u062a \u0639\u0644\u064a \u0648\u0634\u0643 \u0625\u0631\u0633\u0627\u0644 \u0631\u0633\u0627\u0644\u0629. \u0627\u0636\u063a\u0637 \u0639\u0644\u064a \u0627\u0644\u0632\u0631 \u0644\u0644\u0645\u0648\u0627\u0635\u0644\u0629",
+ "id": "Anda baru saja akan mengirim sebuah pesan. Tekan tombol submit pesan untuk melanjutkan.",
+ "sr": "Kliknite na dugme \"Po\u0161alji poruku\" da biste poslali poruku."
+ },
+ "debug_disable_debug_mode": {
+ "no": "Do kan skru av debug modus i den globale simpleSAMLphp konfigurasjonsfila <tt>config\/config.php<\/tt>.",
+ "nn": "Du kan skru av feils\u00f8kingsmodus i den globale konfigurasjonsfila for simpleSAMLphp <tt>config\/config.php<\/tt>.",
+ "sv": "Du kan st\u00e4nga av debugl\u00e4get i simpleSAMLphps globala konfigurationsfil <tt>config\/config.php<\/tt>.",
+ "es": "Puede desactivar el modo de depuraci\u00f3n en el fichero de configuraci\u00f3n global de simpleSAMLphp <tt>config\/config.php<\/tt>.",
+ "nl": "U kunt debug mode uitschakelen in de globale simpleSAMLphp configuratie file <tt>config\/config.php<\/tt>.",
+ "sl": "Debug na\u010din lahko izklopite v globalni simpleSAMLphp konfiguracijski datoteki <tt>config\/config.php<\/tt>.",
+ "da": "Du kan sl\u00e5 debug-mode fra i den globale simpleSAMLphp-konfigurationsfil <tt>config\/config.php<\/tt>",
+ "hr": "Mod za otkrivanje gre\u0161aka mo\u017eete isklju\u010diti u glavnoj simpleSAMLphp konfiguracijskoj datoteci <tt>config\/config.php<\/tt>. ",
+ "hu": "A simpleSAMLphp <tt>config\/config.php<\/tt> f\u00e1jlj\u00e1ban kikapcsolhatja a hibakeres\u0151 m\u00f3dot.",
+ "pt-br": "Voc\u00ea pode desligar o modo de debug no arquivo de configura\u00e7\u00e3o global do simpleSAMLphp <tt>config\/config.php<\/tt>.",
+ "pt": "Pode desligar o modo debug no ficheiro global de configura\u00e7\u00e3o <tt>config\/config.php<\/tt> do simpleSAMLphp.",
+ "pl": "Mo\u017cesz wy\u0142aczy\u0107 globalnie tryb debugowania w pliku <tt>config\/config.php<\/tt>.",
+ "cs": "M\u016f\u017eete vypnout debug m\u00f3d v globaln\u00ed konfiguraci simpleSAMLphp <tt>config\/config.php<\/tt>.",
+ "tr": "\"Debug\" modunu global simpleSAMLphp konfig\u00fcrasyon dosyas\u0131nda <tt>config\/config.php<\/tt> kapatabilirsiniz.",
+ "de": "Sie k\u00f6nnen den Debug-Modus in der globalen simpleSAMLphp Konfigurationsdatei <tt>config\/config.php<\/tt> ausschalten.",
+ "fr": "Vous pouvez d\u00e9sactivez le mode d\u00e9bogage dans le fichier de configuration globale de simpleSAMLphp (<tt>config\/config.php<\/tt>).",
+ "it": "E' possibile disabilitare la modalit\u00e0 di debug nel file di configurazione globale di simpleSAMLphp, <tt>config\/config.php<\/tt>.",
+ "ja": "\u3042\u306a\u305f\u306fsimpleSAMLphp\u306e\u30b0\u30ed\u30fc\u30d0\u30eb\u8a2d\u5b9a<tt>config\/config.php<\/tt>\u3067\u30c7\u30d0\u30c3\u30af\u30e2\u30fc\u30c9\u3092\u30aa\u30d5\u306b\u51fa\u6765\u307e\u3059\u3002",
+ "lt": "J\u016bs galite i\u0161jungti detal\u0173j\u012f nar\u0161ym\u0105 globaliame simpleSAMLphp konfig\u016braciniame faile <tt>config\/config.php<\/tt>.",
+ "zh-tw": "\u60a8\u53ef\u4ee5 simpleSAMLphp \u7684\u5168\u57df\u8a2d\u5b9a\u6a94 <tt>config\/config.php<\/tt> \u88e1\u95dc\u9589\u9664\u932f\u6a21\u5f0f\u3002",
+ "et": "Silumisre\u017eiimi on v\u00f5imalik v\u00e4lja l\u00fclitada simpleSAMLphp seadistustefailist <tt>config\/config.php<\/tt>.",
+ "he": "\u05d0\u05ea\u05d4 \u05d9\u05db\u05d5\u05dc \u05dc\u05db\u05d1\u05d5\u05ea \u05d0\u05ea \u05de\u05e6\u05d1 \u05d1\u05d3\u05d9\u05e7\u05ea \u05d4\u05d1\u05d0\u05d2\u05d9\u05dd \u05d1\u05e7\u05d5\u05d1\u05e5 \u05d1\u05d4\u05d4\u05d2\u05d3\u05e8\u05d5\u05ea \u05d4\u05d2\u05dc\u05d5\u05d1\u05dc\u05d9 \u05e9\u05dc simpleSAMLphp <tt>config\/config.php<\/tt>.",
+ "zh": "\u4f60\u53ef\u4ee5\u5173\u95ed\u8c03\u8bd5\u6a21\u5f0f\uff0c\u5728simpleSAMLphp\u5168\u5c40\u914d\u7f6e\u6587\u4ef6<tt>config\/config.php<\/tt>\u4e2d",
+ "ar": "\u064a\u0645\u0643\u0646\u0643 \u0625\u063a\u0644\u0627\u0642 \u062d\u0627\u0644\u0629 \u0627\u0644\u062a\u0635\u062d\u064a\u062d \u0628\u0645\u0644\u0641 \u062a\u0631\u062a\u064a\u0628 simpleSAMLphp<tt>config\/config.php<\/tt>",
+ "id": "Anda dapat menonaktifkan mode debuh pada file konfigurasi global simpleSAMLhphp <tt>config\/config.php<\/tt>.",
+ "sr": "Debug mod mo\u017eete isklju\u010diti u glavnom simpleSAMLphp konfiguracionom fajlu <tt>config\/config.php<\/tt>. "
+ },
+ "metaover_group_metadata.saml20-sp-hosted": {
+ "no": "SAML 2.0 tjenesteleverand\u00f8r (intern)",
+ "nn": "SAML 2.0 Service Provider (Hosted)",
+ "sv": "SAML 2.0 Service Provider (V\u00e4rd)",
+ "es": "Proveedor de Servicio SAML 2.0 (Anfitri\u00f3n)",
+ "nl": "SAML 2.0 Service Provider (Hosted)",
+ "sl": "SAML 2.0 SP (Lokalni)",
+ "da": "SAML 2.0 tjenesteudbyder (hosted)",
+ "hr": "SAML 2.0 davatelj usluge (lokalni)",
+ "hu": "SAML 2.0 alkalmaz\u00e1sszolg\u00e1ltat\u00f3 (helyi)",
+ "pt-br": "SAML 2.0 Service Provider (Local)",
+ "pt": "Fornecedor de servi\u00e7o (SP) SAML 2.0 (Local)",
+ "pl": "SAML 2.0 Dostawca Serwisu (Lokalny)",
+ "cs": "SAML 2.0 Service Provider (Hosted - lok\u00e1ln\u00ed)",
+ "tr": "SAML 2.0 Servis Sa\u011flay\u0131c\u0131 (Bu sistemde sunulan)",
+ "de": "SAML 2.0 Service Provider (gehosted)",
+ "fr": "Fournisseur de service SAML 2.0 local",
+ "it": "SAML 2.0 Service Provider (Hosted)",
+ "ja": "SAML 2.0\u30b5\u30fc\u30d3\u30b9\u30d7\u30ed\u30d0\u30a4\u30c0(\u30db\u30b9\u30c8)",
+ "lt": "SAML 2.0 Paslaugos teik\u0117jas (vietinis)",
+ "zh-tw": "SAML 2.0 \u670d\u52d9\u63d0\u4f9b\u8005(\u4e3b\u6a5f)",
+ "et": "SAML 2.0 teenusepakkuja (hostitud)",
+ "he": "\u05e1\u05e4\u05e7 \u05e9\u05d9\u05e8\u05d5\u05ea \u05de\u05e7\u05d5\u05de\u05d9 \u05de\u05e1\u05d5\u05d2 SAML 2.0",
+ "zh": "SAML 2.0 \u670d\u52a1\u63d0\u4f9b\u8005\uff08\u672c\u5730\uff09",
+ "ar": "\u0645\u0642\u062f\u0645 \u062e\u062f\u0645\u0629 SAML 2.0 (\u0627\u0644\u0645\u0633\u062a\u0636\u0627\u0641)",
+ "id": "Service Provider SAML 2.0 (Hosted)",
+ "sr": "SAML 2.0 Davalac Servisa (lokalni)"
+ },
+ "cfg_check_notices": {
+ "no": "Notiser",
+ "nn": "Legg merke til",
+ "sv": "Meddelanden",
+ "es": "Avisos",
+ "nl": "Opmerkingen",
+ "sl": "Obvestila",
+ "da": "Beskeder",
+ "hr": "Napomene",
+ "hu": "Megjegyz\u00e9sek",
+ "pt-br": "Avisos",
+ "pt": "Observa\u00e7\u00f5es",
+ "pl": "Uwagi",
+ "cs": "Poznamky",
+ "tr": "Notlar",
+ "de": "Anmerkungen",
+ "fr": "A noter",
+ "it": "Notifiche",
+ "ja": "\u304a\u77e5\u3089\u305b",
+ "lt": "Prane\u0161imai",
+ "zh-tw": "\u5099\u8a3b",
+ "et": "M\u00e4rkused",
+ "he": "\u05d4\u05d5\u05d3\u05e2\u05d5\u05ea",
+ "ru": "\u0423\u0432\u0435\u0434\u043e\u043c\u043b\u0435\u043d\u0438\u044f",
+ "zh": "\u901a\u544a",
+ "ar": "\u0645\u0644\u062d\u0648\u0638\u0627\u062a",
+ "id": "Pemberitahuan",
+ "sr": "Napomene"
+ },
+ "metadata_cert": {
+ "nl": "Certificaten",
+ "sl": "Digitalna potrdila",
+ "sv": "Certifikat",
+ "he": "\u05ea\u05e2\u05d5\u05d3\u05d5\u05ea",
+ "et": "Sertifikaadid",
+ "de": "Zertifikate",
+ "zh": "\u8bc1\u4e66",
+ "da": "Certifikater",
+ "lt": "Sertifikatai",
+ "hu": "Tan\u00fas\u00edtv\u00e1nyok.",
+ "ar": "\u0627\u0644\u0634\u0647\u0627\u062f\u0627\u062a",
+ "hr": "Certifikati",
+ "id": "Sertifikat",
+ "sr": "Sertifikati",
+ "nn": "Sertifikat",
+ "fr": "Certificats"
+ },
+ "metadata_cert_intro": {
+ "nl": "Download de X509-certificaten in PEM-formaat.",
+ "sl": "Prenesi X509 digitalno potrdilo v PEM datoteki.",
+ "sv": "H\u00e4mta X509-certifikaten som PEM-kodade filer.",
+ "he": "\u05d4\u05d5\u05e8\u05d3 \u05d0\u05ea \u05ea\u05e2\u05d5\u05d3\u05d5\u05ea X509 \u05db\u05e7\u05d1\u05e6\u05d9 PEM-\u05de\u05e7\u05d5\u05d3\u05d3.",
+ "et": "Lae alla X509 sertifikaadid PEM kodeeringus failidena.",
+ "de": "Die X509-Zertifikate als PEM-kodierte Dateien herunterladen.",
+ "zh": "\u4e0b\u8f7dX509\u8bc1\u4e66\u4f5c\u4e3aPEM\u7f16\u7801\u7684\u6587\u4ef6",
+ "da": "Download X509 certifikaterne som PEM-indkodet filer.",
+ "lt": "Parsisi\u0173sti X509 sertifikatus kaip PEM koduot\u0117s failus.",
+ "hu": "PEM form\u00e1tum\u00fa X509 tan\u00fas\u00edtv\u00e1ny let\u00f6lt\u00e9se.",
+ "ar": "\u062d\u0645\u0644 \u0634\u0647\u0627\u062f\u0627\u062a X509 \u0643\u0645\u0644\u0641\u0627\u062a \u0628\u062a\u0631\u0645\u064a\u0632 PEM",
+ "hr": "Preuzmite X509 certifikate u PEM formatu.",
+ "id": "Download sertifikat X509 sebagai file dikodekan-PEM.",
+ "sr": "Preuzmite X509 sertifikate u PEM formatu.",
+ "nn": "Last ned X509-sertifikat som PEM-koda filer",
+ "fr": "T\u00e9l\u00e9charger les certificats X509 en tant que fichiers encod\u00e9s PEM."
+ }
+}
diff --git a/inc/simplesamlphp/dictionaries/attributes.definition.json b/inc/simplesamlphp/dictionaries/attributes.definition.json
new file mode 100644
index 0000000..7728eaf
--- /dev/null
+++ b/inc/simplesamlphp/dictionaries/attributes.definition.json
@@ -0,0 +1,140 @@
+{
+ "attribute_edupersonaffiliation": {
+ "en": "Affiliation"
+ },
+ "attribute_title": {
+ "en": "Title"
+ },
+ "attribute_uid": {
+ "en": "User ID"
+ },
+ "attribute_sn": {
+ "en": "Surname"
+ },
+ "attribute_givenname": {
+ "en": "Given name"
+ },
+ "attribute_cn": {
+ "en": "Common name"
+ },
+ "attribute_mail": {
+ "en": "Mail"
+ },
+ "attribute_mobile": {
+ "en": "Mobile"
+ },
+ "attribute_preferredlanguage": {
+ "en": "Preferred language"
+ },
+ "attribute_noredupersonnin": {
+ "en": "Identity number assigned by public authorities"
+ },
+ "attribute_schachomeorganization": {
+ "en": "Home organization domain name"
+ },
+ "attribute_organisationname": {
+ "en": "Organization name"
+ },
+ "attribute_edupersonentitlement": {
+ "en": "Entitlement regarding the service"
+ },
+ "attribute_edupersonscopedaffiliation": {
+ "en": "Affiliation at home organization"
+ },
+ "attribute_edupersontargetedid": {
+ "en": "Persistent pseudonymous ID"
+ },
+ "attribute_edupersonprincipalname": {
+ "en": "Person's principal name at home organization"
+ },
+ "attribute_o": {
+ "en": "Organization name"
+ },
+ "attribute_dc": {
+ "en": "Domain component (DC)"
+ },
+ "attribute_displayname": {
+ "en": "Display name"
+ },
+ "attribute_facsimiletelephonenumber": {
+ "en": "Fax number"
+ },
+ "attribute_homephone": {
+ "en": "Home telephone"
+ },
+ "attribute_homepostaladdress": {
+ "en": "Home postal address"
+ },
+ "attribute_jpegphoto": {
+ "en": "JPEG Photo"
+ },
+ "attribute_l": {
+ "en": "Locality"
+ },
+ "attribute_labeleduri": {
+ "en": "Labeled URI"
+ },
+ "attribute_manager": {
+ "en": "Manager"
+ },
+ "attribute_ou": {
+ "en": "Organizational unit"
+ },
+ "attribute_postaladdress": {
+ "en": "Postal address"
+ },
+ "attribute_postalcode": {
+ "en": "Postal code"
+ },
+ "attribute_postofficebox": {
+ "en": "Post office box"
+ },
+ "attribute_street": {
+ "en": "Street"
+ },
+ "attribute_telephonenumber": {
+ "en": "Telephone number"
+ },
+ "attribute_eduorghomepageuri": {
+ "en": "Organizational homepage"
+ },
+ "attribute_eduorglegalname": {
+ "en": "Organization's legal name"
+ },
+ "attribute_edupersonassurance": {
+ "en": "Identity assurance profile"
+ },
+ "attribute_edupersonnickname": {
+ "en": "Nickname"
+ },
+ "attribute_edupersonorgdn": {
+ "en": "Distinguished name (DN) of person's home organization"
+ },
+ "attribute_edupersonorgunitdn": {
+ "en": "Distinguished name (DN) of the person's home organizational unit"
+ },
+ "attribute_edupersonprimaryaffiliation": {
+ "en": "Primary affiliation"
+ },
+ "attribute_noreduorgnin": {
+ "en": "Organizational number"
+ },
+ "attribute_noredupersonbirthdate": {
+ "en": "Date of birth"
+ },
+ "attribute_noredupersonlegalname": {
+ "en": "Legal name"
+ },
+ "attribute_noredupersonlin": {
+ "en": "Local identity number"
+ },
+ "attribute_edupersonprimaryorgunitdn": {
+ "en": "Distinguished name (DN) of person's primary Organizational Unit"
+ },
+ "attribute_userpassword": {
+ "en": "User's password hash"
+ },
+ "attribute_schacuserprivateattribute": {
+ "en": "Private information elements"
+ }
+}
diff --git a/inc/simplesamlphp/dictionaries/attributes.translation.json b/inc/simplesamlphp/dictionaries/attributes.translation.json
new file mode 100644
index 0000000..a4226c0
--- /dev/null
+++ b/inc/simplesamlphp/dictionaries/attributes.translation.json
@@ -0,0 +1,1420 @@
+{
+ "attribute_edupersonaffiliation": {
+ "no": "Tilh\u00f8righet",
+ "nn": "Rolle ved organisasjonen",
+ "sv": "Anknytning",
+ "es": "Afiliaci\u00f3n",
+ "fr": "Affiliation",
+ "de": "Organisationszugeh\u00f6rigkeit",
+ "nl": "Affiliatie",
+ "lb": "Zesummenschloss",
+ "sl": "Vloga uporabnika",
+ "da": "Brugerens tilknytning til hjemmeorganisationen",
+ "se": "Du doaibma organisa&#353;uvnnas",
+ "hr": "Povezanost s ustanovom",
+ "hu": "Viszony",
+ "fi": "Suhde organisaatioon",
+ "pt-br": "Filia\u00e7\u00e3o",
+ "pt": "Afilia\u00e7\u00e3o com a organiza\u00e7\u00e3o de origem",
+ "pl": "Przynale\u017cno\u015b\u0107 (Affiliation)",
+ "cs": "Vztah k organizaci",
+ "tr": "Ba\u011flant\u0131",
+ "it": "Affiliazione",
+ "lt": "Pareigos",
+ "ja": "\u6240\u5c5e",
+ "zh-tw": "\u9023\u7d61\u65b9\u5f0f",
+ "he": "\u05d4\u05e9\u05ea\u05d9\u05d9\u05db\u05d5\u05ea",
+ "ru": "\u0427\u043b\u0435\u043d\u0441\u0442\u0432\u043e",
+ "et": "Rollid",
+ "zh": "\u8054\u7edc\u65b9\u5f0f",
+ "sr": "Povezanost sa institucijom",
+ "ar": "\u062c\u0647\u0629 \u0627\u0644\u0639\u0645\u0644",
+ "id": "Afiliasi"
+ },
+ "attribute_title": {
+ "no": "Tittel",
+ "nn": "Tittel",
+ "sv": "Titel",
+ "es": "Tratamiento",
+ "fr": "Titre",
+ "de": "Titel",
+ "nl": "Titel",
+ "lb": "Zougeh\u00e9iregkeet",
+ "sl": "Naziv",
+ "da": "Titel",
+ "hr": "Naziv",
+ "hu": "C\u00edm",
+ "fi": "Titteli",
+ "pt-br": "T\u00edtulo",
+ "pt": "T\u00edtulo",
+ "pl": "Tytu\u0142 (Title)",
+ "cs": "Nadpis",
+ "tr": "Ba\u015fl\u0131k",
+ "it": "Titolo",
+ "lt": "Pavadinimas",
+ "ja": "\u30bf\u30a4\u30c8\u30eb",
+ "zh-tw": "\u6a19\u984c",
+ "he": "\u05ea\u05d5\u05d0\u05e8",
+ "ru": "\u0417\u0430\u0433\u043b\u0430\u0432\u0438\u0435",
+ "et": "Tiitel",
+ "zh": "\u6807\u9898",
+ "sr": "Zvanje",
+ "ar": "\u0627\u0644\u0644\u0642\u0628",
+ "id": "Gelar"
+ },
+ "attribute_uid": {
+ "no": "Bruker-ID",
+ "nn": "Lokalt brukarnamn",
+ "sv": "Anv\u00e4ndaridentitet",
+ "es": "Identificador de usuario",
+ "fr": "ID Utilisateur",
+ "de": "Nutzer ID",
+ "nl": "Gebruikers ID",
+ "lb": "Benotzer ID",
+ "sl": "Uporabni\u0161ko ime",
+ "da": "Brugernavn",
+ "se": "Namahus",
+ "hr": "Identifikator korisnika u ustanovi",
+ "hu": "Felhaszn\u00e1l\u00f3i azonos\u00edt\u00f3",
+ "fi": "uid",
+ "pt-br": "Identifica\u00e7\u00e3o (UID)",
+ "pt": "Identifica\u00e7\u00e3o de utilizador",
+ "pl": "ID u\u017cytkownika (User ID)",
+ "cs": "Identifik\u00e1tor (UID)",
+ "tr": "Kullan\u0131c\u0131 ID",
+ "it": "Identificativo utente",
+ "lt": "Naudotojo ID",
+ "ja": "\u30e6\u30fc\u30b6\u30fcID",
+ "zh-tw": "\u4f7f\u7528\u8005 ID",
+ "et": "Kasutaja ID",
+ "he": "\u05de\u05d6\u05d4\u05d4 \u05de\u05e9\u05ea\u05de\u05e9",
+ "ru": "ID \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f",
+ "zh": "\u7528\u6237ID",
+ "sr": "Korisni\u010dko ime",
+ "ar": "\u0627\u0644\u0627\u0633\u0645 \u0627\u0644\u062a\u0639\u0631\u064a\u0641\u064a \u0644\u0644\u0645\u0633\u062a\u062e\u062f\u0645",
+ "id": "User ID"
+ },
+ "attribute_sn": {
+ "no": "Etternavn",
+ "nn": "Etternamn",
+ "sv": "Efternamn",
+ "es": "Apellidos",
+ "fr": "Nom",
+ "de": "Nachname",
+ "nl": "Achternaam",
+ "lb": "Virnumm",
+ "sl": "Priimek",
+ "da": "Efternavn",
+ "se": "Goargu",
+ "hr": "Prezime",
+ "hu": "Vezet\u00e9kn\u00e9v",
+ "fi": "Sukunimi",
+ "pt-br": "Sobrenome",
+ "pt": "Nome de fam\u00edlia",
+ "pl": "Nazwisko (Surname)",
+ "cs": "P\u0159\u00edjmen\u00ed",
+ "tr": "Soyad\u0131",
+ "it": "Cognome",
+ "lt": "Pavard\u0117",
+ "ja": "\u59d3",
+ "zh-tw": "\u59d3",
+ "et": "Perekonnanimi",
+ "he": "\u05e9\u05dd \u05de\u05e9\u05e4\u05d7\u05d4",
+ "ru": "\u0424\u0430\u043c\u0438\u043b\u0438\u044f",
+ "zh": "\u59d3",
+ "sr": "Prezime",
+ "ar": "\u0627\u0633\u0645 \u0627\u0644\u0639\u0627\u0626\u0644\u0647",
+ "id": "Nama Keluaga"
+ },
+ "attribute_givenname": {
+ "no": "Fornavn",
+ "nn": "Fornamn",
+ "sv": "F\u00f6rnamn",
+ "es": "Nombre",
+ "fr": "Pr\u00e9nom",
+ "de": "Vorname",
+ "nl": "Voornaam",
+ "lb": "Familliennumm",
+ "sl": "Ime",
+ "da": "Fornavn(e)",
+ "se": "Ovdanamma",
+ "hr": "Ime",
+ "hu": "Keresztn\u00e9v",
+ "fi": "Etunimet",
+ "pt-br": "Nome",
+ "pt": "Nome Pr\u00f3prio",
+ "pl": "Imi\u0119 (Given name)",
+ "cs": "K\u0159estn\u00ed jm\u00e9no",
+ "tr": "Verilen isim",
+ "it": "Nome ",
+ "lt": "Vardas",
+ "ja": "\u540d",
+ "zh-tw": "\u540d",
+ "et": "Eesnimi",
+ "he": "\u05e9\u05dd \u05e4\u05e8\u05d8\u05d9",
+ "ru": "\u0418\u043c\u044f",
+ "zh": "\u540d",
+ "sr": "Ime",
+ "ar": "\u0627\u0644\u0627\u0633\u0645",
+ "id": "Nama"
+ },
+ "attribute_cn": {
+ "no": "Fullt navn",
+ "nn": "Fullt namn",
+ "sv": "Fullst\u00e4ndigt namn",
+ "es": "Nombre com\u00fan (CN)",
+ "fr": "Nom usuel",
+ "de": "Voller Name",
+ "nl": "Algemene naam",
+ "lb": "Allgem\u00e9ngen Numm",
+ "sl": "Ime in priimek",
+ "da": "Kaldenavn",
+ "se": "Olles namma",
+ "hr": "Ime i prezime",
+ "hu": "Teljes n\u00e9v",
+ "fi": "K\u00e4ytt\u00f6nimi",
+ "pt-br": "Nome Comum (CN)",
+ "pt": "Nome completo",
+ "pl": "Nazwa (Common name)",
+ "cs": "Cel\u00e9 jm\u00e9no (CN)",
+ "tr": "Ortak ad",
+ "it": "Nome completo",
+ "lt": "Pilnas vardas",
+ "ja": "\u4e00\u822c\u540d",
+ "zh-tw": "\u5e38\u7528\u540d\u5b57",
+ "he": "\u05e9\u05dd \u05e8\u05d5\u05d5\u05d7 ",
+ "ru": "\u041f\u043e\u043b\u043d\u043e\u0435 \u0438\u043c\u044f",
+ "et": "\u00dcldnimi",
+ "zh": "\u5e38\u7528\u540d\u5b57",
+ "sr": "Ime i Prezime",
+ "ar": "\u0623\u0633\u0645\u0627\u0621 \u0627\u062e\u0631\u064a",
+ "id": "Common Name"
+ },
+ "attribute_mail": {
+ "no": "E-post",
+ "nn": "Epostadresse",
+ "sv": "E-postadress",
+ "es": "Correo electr\u00f3nico",
+ "fr": "Courriel",
+ "de": "Emailadresse",
+ "nl": "E-mail",
+ "lb": "E-mail",
+ "sl": "Elektronski naslov",
+ "da": "Emailadresse",
+ "se": "Elektrovnnala&#353; poasta&#269;ijuhus",
+ "hr": "Elektroni\u010dka adresa",
+ "hu": "E-mail",
+ "fi": "S\u00e4hk\u00f6posti",
+ "pt-br": "E-mail",
+ "pt": "E-mail",
+ "pl": "E-mail",
+ "cs": "Email",
+ "tr": "Posta",
+ "it": "Mail",
+ "lt": "El.pa\u0161tas",
+ "ja": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
+ "zh-tw": "\u90f5\u4ef6",
+ "et": "E-post",
+ "he": "\u05d3\u05d5\u05d0\u05e8",
+ "ru": "\u041f\u043e\u0447\u0442\u0430",
+ "zh": "\u90ae\u7bb1",
+ "sr": "Elektronska adresa",
+ "ar": "\u0627\u0644\u0639\u0646\u0648\u0627\u0646 \u0627\u0644\u0628\u0631\u064a\u062f\u064a",
+ "id": "Mail"
+ },
+ "attribute_mobile": {
+ "no": "Mobiltelefon",
+ "nn": "Mobiltelefon",
+ "sv": "Mobiltelefon",
+ "es": "Tel\u00e9fono m\u00f3vil",
+ "fr": "Mobile",
+ "de": "Mobiltelefon",
+ "nl": "Mobiel",
+ "lb": "GSM Nummer",
+ "sl": "Mobilni telefon",
+ "da": "Telefonnummer (mobil)",
+ "se": "M&aacute;tketelefovdna",
+ "hr": "Broj mobilnog telefona",
+ "hu": "Mobil",
+ "fi": "K\u00e4nnykk\u00e4",
+ "pt-br": "Celular",
+ "pt": "Telem\u00f3vel",
+ "pl": "Telefon kom\u00f3rkowy (Mobile)",
+ "cs": "Mobil",
+ "tr": "Cep telefonu numaras\u0131",
+ "it": "Cellulare",
+ "lt": "Mobiliojo numeris",
+ "ja": "\u643a\u5e2f\u96fb\u8a71",
+ "zh-tw": "\u624b\u6a5f",
+ "et": "Mobiil",
+ "he": "\u05e0\u05d9\u05d9\u05d3",
+ "ru": "\u041c\u043e\u0431\u0438\u043b\u044c\u043d\u044b\u0439",
+ "zh": "\u624b\u673a",
+ "sr": "Broj mobilnog telefona",
+ "ar": "\u0631\u0642\u0645 \u0627\u0644\u0647\u0627\u062a\u0641 \u0627\u0644\u0633\u064a\u0627\u0631",
+ "id": "Handphone"
+ },
+ "attribute_preferredlanguage": {
+ "no": "Foretrukket spr\u00e5k",
+ "nn": "F\u00f8rsteval for spr\u00e5k eller m\u00e5lform",
+ "sv": "\u00d6nskv\u00e4rt spr\u00e5k",
+ "es": "Idioma preferido",
+ "fr": "Langue pr\u00e9f\u00e9r\u00e9e",
+ "de": "Bevorzugte Sprache",
+ "nl": "Voorkeurstaal",
+ "lb": "Lieblingssprooch",
+ "sl": "\u017delen jezik",
+ "da": "Foretrukket sprog (evt. flere)",
+ "se": "Vuostta&#353;v&aacute;lljejuvvon giella dehe giellah&aacute;pmi",
+ "hr": "Primarni jezik",
+ "hu": "Els\u0151dleges nyelv",
+ "fi": "Ensisijainen kieli",
+ "pt-br": "Linguagem preferida",
+ "pt": "Idioma",
+ "pl": "Preferowany j\u0119zyk (Preferred language)",
+ "cs": "Preferovan\u00fd jazyk",
+ "tr": "Tercih edilen dil",
+ "it": "Lingua preferita",
+ "lt": "Kalba",
+ "ja": "\u8a00\u8a9e",
+ "zh-tw": "\u559c\u597d\u8a9e\u8a00",
+ "et": "Eelistatud keel",
+ "he": "\u05e9\u05e4\u05d4 \u05de\u05d5\u05e2\u05d3\u05e4\u05ea",
+ "ru": "\u041f\u0440\u0435\u0434\u043f\u043e\u0447\u0438\u0442\u0430\u0435\u043c\u044b\u0439 \u044f\u0437\u044b\u043a",
+ "zh": "\u9996\u9009\u8bed\u8a00",
+ "sr": "Preferirani jezik",
+ "ar": "\u0627\u0644\u0644\u063a\u0629 \u0627\u0644\u0645\u0641\u0636\u0644\u0629",
+ "id": "Pilihan Bahasa"
+ },
+ "attribute_noredupersonnin": {
+ "no": "F\u00f8dselsnummer",
+ "nn": "F\u00f8dselsnummer",
+ "sv": "Officiellt personnummer eller intermimspersonnummer",
+ "es": "N\u00famero de la Seguridad Social",
+ "fr": "Num\u00e9ro de s\u00e9curit\u00e9 sociale",
+ "de": "Norwegische Personenkennziffer",
+ "nl": "Burgerservicenummer",
+ "lb": "Sozialvers\u00ebcherungsnummer",
+ "sl": "Mati\u010dna \u0161tevilka",
+ "da": "CPR-nummer",
+ "se": "Riegadannummir",
+ "hr": "Broj\u010dani identifikator osobe",
+ "hu": "T\u00e1rsadalombiztos\u00edt\u00e1si azonos\u00edt\u00f3 sz\u00e1m",
+ "fi": "Henkil\u00f6tunnus",
+ "pt-br": "N\u00famero de identifica\u00e7\u00e3o atribu\u00eddo pelas autoridades p\u00fablicas",
+ "pt": "N\u00famero de Identifica\u00e7\u00e3o atribu\u00eddo por autoridades p\u00fablicas",
+ "pl": "Numer to\u017csamo\u015bci wydany przez administracj\u0119 publiczn\u0105",
+ "cs": "Identifika\u010dn\u00ed k\u00f3d p\u0159id\u011blen\u00fd ve\u0159ejnou autoritou",
+ "tr": "Kamu yetkilileri taraf\u0131ndan belirlenmi\u015f kimlik numaras\u0131",
+ "it": "Numero di identit\u00e0 assegnato dall'autorit\u00e0 pubblica",
+ "lt": "Valstyb\u0117s institucij\u0173 priskirtas tapatyb\u0117s numeris",
+ "ja": "\u516c\u958b\u8a8d\u8a3c\u5c40\u306b\u3088\u3063\u3066\u5272\u308a\u5f53\u3066\u3089\u308c\u305f\u8b58\u5225\u756a\u53f7",
+ "zh-tw": "\u8eab\u5206\u8b49\u5b57\u865f",
+ "he": "\u05de\u05e1\u05e4\u05e8 \u05de\u05d6\u05d4\u05d4 \u05e9\u05e0\u05d9\u05ea\u05df \u05e2\u05dc \u05d9\u05d3\u05d9 \u05d4\u05e8\u05e9\u05d5\u05d9\u05d5\u05ea \u05d4\u05e6\u05d9\u05d1\u05d5\u05e8\u05d9\u05d5\u05ea",
+ "ru": "\u0418\u0434\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u043e\u043d\u043d\u044b\u0439 \u043d\u043e\u043c\u0435\u0440, \u043f\u0440\u0438\u0441\u0432\u0430\u0438\u0432\u0430\u0435\u043c\u044b\u0439 \u043e\u0440\u0433\u0430\u043d\u0430\u043c\u0438 \u0433\u043e\u0441\u0443\u0434\u0430\u0440\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0439 \u0432\u043b\u0430\u0441\u0442\u0438",
+ "et": "Isikukood",
+ "zh": "\u8eab\u4efd\u8bc1\u53f7\u7801",
+ "sr": "Jedinstveni brojni identifikator osobe",
+ "ar": "\u0627\u0644\u0631\u0642\u0645 \u0627\u0644\u062a\u0639\u0631\u064a\u0641\u064a \u0627\u0644\u0645\u0639\u064a\u0646 \u0645\u0646 \u0642\u0628\u0644 \u0627\u0644\u0633\u0644\u0637\u0627\u062a \u0627\u0644\u0639\u0627\u0645\u0629 ",
+ "id": "Identity number assigned by public authorities"
+ },
+ "attribute_schachomeorganization": {
+ "no": "Unik ID for organisasjon",
+ "nn": "Unik ID for organisasjon",
+ "sv": "Dom\u00e4nnamn f\u00f6r organisationen",
+ "es": "Identificador \u00fanico de la organizaci\u00f3n de origen",
+ "fr": "Identifiant unique de l'organisation de rattachement",
+ "de": "Domain-Name der Heimorganisation",
+ "nl": "Unieke Organisatie ID",
+ "lb": "Eendeiteg Heemorganisatiouns ID",
+ "sl": "ID doma\u010de organizacije",
+ "da": "Hjemmeorganisationens entydige ID (dom\u00e6nenavn)",
+ "hr": "Oznaka mati\u010dne ustanove",
+ "hu": "Saj\u00e1t int\u00e9zm\u00e9ny domain neve",
+ "fi": "Organisaation domain-nimi",
+ "pt-br": "Nome de dom\u00ednio da organiza\u00e7\u00e3o principal",
+ "pt": "Nome de dom\u00ednio da Organiza\u00e7\u00e3o de origem",
+ "pl": "Nazwa organizacji macierzystej",
+ "cs": "Jm\u00e9no organizace",
+ "tr": "Ana kurulu\u015f alan ad\u0131",
+ "it": "Nome del dominio della propria organizzazione",
+ "lt": "Organizacijos domenas",
+ "ja": "\u7d44\u7e54\u5185\u30c9\u30e1\u30a4\u30f3",
+ "zh-tw": "\u9810\u8a2d\u7d44\u7e54 domain name",
+ "et": "Koduorganisatsiooni domeen",
+ "he": "\u05e9\u05dd \u05d4\u05de\u05ea\u05d7\u05dd \u05e9\u05dc \u05d0\u05d9\u05e8\u05d2\u05d5\u05df \u05d4\u05d1\u05d9\u05ea",
+ "ru": "\u0414\u043e\u043c\u0435\u043d\u043d\u043e\u0435 \u0438\u043c\u044f \u0434\u043e\u043c\u0430\u0448\u043d\u0435\u0439 \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u0430\u0446\u0438\u0438",
+ "zh": "\u9996\u9875\u7ec4\u7ec7\u7684\u57df\u540d",
+ "ar": "\u0627\u0633\u0645 \u0627\u0644\u0646\u0637\u0627\u0642 \u0627\u0644\u0645\u062e\u0635\u0635 \u0644\u0644\u0645\u0646\u0638\u0645\u0629\u0627\u0644\u0627\u0645\\\u0627\u0644\u0645\u0648\u0642\u0639 \u0627\u0644\u0627\u0645 ",
+ "id": "Home organization domain name",
+ "sr": "Domen mati\u010dne institucije"
+ },
+ "attribute_organisationname": {
+ "no": "Navn p\u00e5 organisasjon",
+ "nn": "Namn p\u00e5 organisasjon",
+ "sv": "Namn p\u00e5 organisationen",
+ "es": "Nombre de la organizaci\u00f3n",
+ "fr": "R\u00f4les pour ce service",
+ "de": "Name der Organisation",
+ "nl": "Organisatienaam",
+ "lb": "Organisatiounsnumm",
+ "sl": "Ime organizacije",
+ "da": "Hjemmeorganisationens kaldenavn",
+ "se": "Organisa&#353;uvdna",
+ "hr": "Naziv ustanove",
+ "hu": "Szervezet neve",
+ "fi": "Organisaation nimi",
+ "pt-br": "Nome da Organiza\u00e7\u00e3o",
+ "pt": "Nome da Organiza\u00e7\u00e3o",
+ "pl": "Nazwa organizacji (Organization name)",
+ "cs": "Jm\u00e9no organizace",
+ "tr": "Kurulu\u015f ad\u0131",
+ "it": "Nome dell'organizzazione",
+ "lt": "Organizacijos pavadinimas",
+ "ja": "\u7d44\u7e54\u540d",
+ "zh-tw": "\u7d44\u7e54\u540d\u7a31",
+ "et": "Organisatsiooni nimi",
+ "he": "\u05e9\u05dd \u05d0\u05d9\u05e8\u05d2\u05d5\u05df",
+ "ru": "\u041d\u0430\u0437\u0432\u0430\u043d\u0438\u0435 \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u0430\u0446\u0438\u0438",
+ "zh": "\u7ec4\u7ec7\u540d\u79f0",
+ "sr": "Naziv mati\u010dne institucije",
+ "ar": "\u0627\u0633\u0645 \u0627\u0644\u0645\u0646\u0638\u0645\u0629\u0627\u0644\u0627\u0645\\\u0627\u0644\u0645\u0648\u0642\u0639 \u0627\u0644\u0627\u0645",
+ "id": "Organization name"
+ },
+ "attribute_edupersonentitlement": {
+ "no": "Rettighet",
+ "nn": "URI som viser til eit sett av rettar til spesifikke ressursar",
+ "sv": "Roll(er) i aktuell tj\u00e4nst",
+ "es": "Derecho relativo al servicio",
+ "fr": "Appartenance \u00e0 un groupe",
+ "de": "Berechtigung",
+ "nl": "Recht",
+ "lb": "Berechtegung",
+ "sl": "Upravi\u010denost do storitve",
+ "da": "Specifik rolle i forhold til tjenesten",
+ "se": "URI mii &#269;ilge dihto vuoigatvuo&#273;a dihto ressurssaide",
+ "hr": "Pripadnost grupi",
+ "hu": "Ezekre a szolg\u00e1ltat\u00e1sokra jogosult",
+ "fi": "Organisaationoikeudet",
+ "pt-br": "Titularidade sobre o servi\u00e7o",
+ "pt": "Direitos oferecidos pela organiza\u00e7\u00e3o de origem",
+ "pl": "Uprawnienie dotycz\u0105ce serwisu",
+ "cs": "Pr\u00e1vo ke slu\u017eb\u011b",
+ "tr": "Servise g\u00f6re yetki",
+ "it": "Qualifica rispetto al servizio",
+ "lt": "Teis\u0117s susij\u0119 su paslauga",
+ "ja": "\u30b5\u30fc\u30d3\u30b9\u306b\u95a2\u3059\u308b\u8cc7\u683c",
+ "zh-tw": "\u95dc\u65bc\u670d\u52d9\u7684\u6b0a\u5229",
+ "he": "\u05d0\u05d9\u05e9\u05d5\u05e8 \u05d4\u05e7\u05e9\u05d5\u05e8 \u05dc\u05e9\u05d9\u05e8\u05d5\u05ea",
+ "ru": "\u041f\u0440\u0430\u0432\u043e \u043d\u0430 \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0443\u0441\u043b\u0443\u0433",
+ "et": "Volitused selle teenuse suhtes",
+ "zh": "\u5173\u4e8e\u670d\u52a1\u7684\u6743\u5229",
+ "sr": "Prava i privilegije korisnika na sistemu",
+ "ar": "\u0627\u0633\u062a\u062d\u0642\u0627\u0642\u0627\u062a \u0627\u0644\u062e\u062f\u0645\u0629",
+ "id": "Hak mengenai layanan ini"
+ },
+ "attribute_edupersonscopedaffiliation": {
+ "no": "Gruppetilh\u00f8righet",
+ "nn": "Rolle hos organisasjonen ",
+ "sv": "Grupptillh\u00f6righet",
+ "es": "Grupo",
+ "fr": "R\u00f4les pour ce service",
+ "de": "Organisationszugeh\u00f6rigkeit bei der Heimorganisation",
+ "nl": "Groep",
+ "lb": "Gruppen Zougeh\u00e9iregket",
+ "sl": "Vloga v organizaciji",
+ "da": "Gruppemedlemskab",
+ "se": "Rolla diehto organisa&#353;uvnnas, dehe dihto domenas.",
+ "hr": "Povezanost s mati\u010dnom ustanovom",
+ "hu": "Saj\u00e1t int\u00e9zm\u00e9nyhez val\u00f3 viszony",
+ "fi": "Henkil\u00f6n rooli kotiorganisaatiossa",
+ "pt-br": "Filia\u00e7\u00e3o na organiza\u00e7\u00e3o principal",
+ "pt": "Afilia\u00e7\u00e3o com a organiza\u00e7\u00e3o de origem (com contexto)",
+ "pl": "Przynale\u017cno\u015b\u0107 w macierzystej organizacji",
+ "cs": "Vztah k domovks\u00e9 organizaci",
+ "tr": "Ba\u011fl\u0131 olunan kurulu\u015fla ba\u011flant\u0131",
+ "it": "Affiliazione nella propria organizzazione",
+ "lt": "S\u0105saja su organizacija",
+ "ja": "\u7d44\u7e54\u5185\u8077\u7a2e",
+ "zh-tw": "\u5bb6\u5ead\u9023\u7d61\u5730\u5740",
+ "he": "\u05e9\u05d9\u05d9\u05db\u05d5\u05ea \u05d1\u05d0\u05d9\u05e8\u05d2\u05d5\u05df \u05d4\u05d1\u05d9\u05ea",
+ "ru": "\u0427\u043b\u0435\u043d\u0441\u0442\u0432\u043e \u0432 \u0434\u043e\u043c\u0430\u0448\u043d\u0435\u0439 \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u0430\u0446\u0438\u0438",
+ "et": "Rollid koduorganisatsioonis",
+ "zh": "\u5bb6\u5ead\u8054\u7edc\u5730\u5740",
+ "sr": "Povezanost sa institucijom sa domenom",
+ "ar": "\u0627\u0644\u0648\u0636\u0639 \u0623\u0648 \u0627\u0644\u0648\u0638\u064a\u0641\u0629 \u0628\u0627\u0644\u0645\u0646\u0638\u0645\u0629\u0627\u0644\u0627\u0645\\\u0627\u0644\u0645\u0648\u0642\u0639 \u0627\u0644\u0627\u0645",
+ "id": "Afiliasi di organisasi asal"
+ },
+ "attribute_edupersontargetedid": {
+ "no": "Persistent anonym ID",
+ "nn": "Persistent anonym ID",
+ "sv": "Varaktig anonym identitet i aktuell tj\u00e4nst",
+ "es": "ID an\u00f3nimo persistente",
+ "fr": "Identifiant persistant anonyme",
+ "de": "Persistente pseudonyme ID",
+ "nl": "Persistente anonieme ID",
+ "lb": "Persistent anonym ID",
+ "sl": "Trajni anonimni ID",
+ "da": "Pseudonymt bruger-ID",
+ "hr": "Trajni anonimni identifikator",
+ "hu": "\u00c1lland\u00f3 anonim azonos\u00edt\u00f3",
+ "fi": "Pseudonyymi-identiteetti",
+ "pt-br": "Apelido persistente ID",
+ "pt": "Identifica\u00e7\u00e3o persistente tipo pseud\u00f3nimo",
+ "cs": "Perzistent\u00ed pseudoanonymn\u00ed ID",
+ "tr": "Kal\u0131c\u0131 takma ad\u0131 ID",
+ "it": "Pseudonimo identificativo persistente",
+ "lt": "Nuolatinio pseudonimo ID",
+ "ja": "\u6c38\u7d9a\u7684\u533f\u540dID",
+ "zh-tw": "\u6301\u7e8c\u7684\u533f\u540d ID",
+ "he": "\u05de\u05d6\u05d4\u05d4 \u05de\u05e9\u05ea\u05de\u05e9 \u05d2\u05dc\u05d5\u05d1\u05dc\u05d9",
+ "ru": "ID \u043f\u043e\u0441\u0442\u043e\u044f\u043d\u043d\u043e\u0433\u043e \u043f\u0441\u0435\u0432\u0434\u043e\u043d\u0438\u043c\u0430",
+ "et": "P\u00fcsiv pseudon\u00fc\u00fcmne ID",
+ "zh": "\u6301\u7eed\u7684\u533f\u540dID",
+ "sr": "Trajni anonimni identifikator",
+ "ar": "\u0627\u0644\u0627\u0633\u0645 \u0627\u0644\u0645\u0633\u062a\u0639\u0627\u0631 ",
+ "pl": "Trwa\u0142y anonimowy identyfikator",
+ "id": "Persistent pseudonymous ID"
+ },
+ "attribute_edupersonprincipalname": {
+ "no": "Personlig ID hos organisasjonen",
+ "nn": "Brukarnamn hos din organisasjon",
+ "sv": "Anv\u00e4ndaridentitet vid din organisationen",
+ "es": "Identificador \u00fanico de la persona en su organizaci\u00f3n de origen",
+ "fr": "Nom de l'utilisateur dans l'organisation de rattachement",
+ "de": "Pers\u00f6nliche ID bei der Heimorganisation",
+ "nl": "Persoons ID bij organisatie",
+ "lb": "Haaptnumm bei der Heemorganisatioun",
+ "sl": "ID uporabnika na doma\u010di organizaciji",
+ "da": "Bruger-ID hos hjemmeorganisationen",
+ "se": "Feide-namma",
+ "hr": "Korisni\u010dka oznaka",
+ "hu": "\u00c1lland\u00f3 azonos\u00edt\u00f3 a saj\u00e1t int\u00e9zm\u00e9nyben",
+ "fi": "Henkil\u00f6n universaali nimi",
+ "pt-br": "Diretor da organiza\u00e7\u00e3o principal",
+ "pt": "Nome de utilizador na organiza\u00e7\u00e3o de origem",
+ "cs": "Jm\u00e9no nad\u0159\u00edzen\u00e9ho",
+ "tr": "Ki\u015finin ba\u011fl\u0131 oldu\u011fu kurulu\u015ftaki as\u0131l ad\u0131",
+ "it": "Nome identificativo (principal name) nella propria organizzazione",
+ "lt": "Asmens pagrindinis vardas organizacijoje",
+ "ja": "\u6c38\u7d9a\u7684\u5229\u7528\u8005\u540d",
+ "zh-tw": "\u5bb6\u5ead\u7684\u500b\u4eba\u4e3b\u8981\u540d\u5b57",
+ "he": "\u05d4\u05e9\u05dd \u05d4\u05e2\u05d9\u05e7\u05e8\u05d9 \u05d1\u05d0\u05d9\u05e8\u05d2\u05d5\u05df \u05d4\u05d1\u05d9\u05ea",
+ "ru": "\u0418\u043c\u044f \u0440\u0443\u043a\u043e\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044f \u0432 \u0434\u043e\u043c\u0430\u0448\u043d\u0435\u0439 \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u0430\u0446\u0438\u0438",
+ "et": "Isiku p\u00f5hinimi koduasutuses",
+ "zh": "\u4eba\u7684\u4e3b\u8981\u5728\u5bb6\u4e2d\u7ec4\u7ec7\u7684\u540d\u79f0",
+ "sr": "Jedinstveni identifikator osobe",
+ "ar": "\u0623\u0644\u0627\u0633\u0645 \u0628\u0627\u0644\u0645\u0646\u0638\u0645\u0629 \u0627\u0644\u0627\u0645\\\u0627\u0644\u0645\u0648\u0642\u0639 \u0627\u0644\u0627\u0645 ",
+ "pl": "G\u0142\u00f3wna nazwa u\u017cytkownika w instytucji macierzystej",
+ "id": "Nama kepala pada organisasi asal"
+ },
+ "attribute_o": {
+ "no": "Navn p\u00e5 organisasjon",
+ "nn": "Namn p\u00e5 organisasjon",
+ "sv": "Namn p\u00e5 organisationen",
+ "es": "Nombre de la organizaci\u00f3n",
+ "fr": "R\u00f4les pour ce service",
+ "de": "Name der Organisation",
+ "nl": "Organisatie naam",
+ "lb": "Organisatiounsnumm",
+ "sl": "Ime organizacije",
+ "da": "Hjemmeorganisationens kaldenavn",
+ "hr": "Naziv mati\u010dne ustanove",
+ "hu": "Szervezet neve",
+ "fi": "Organisaation nimi",
+ "pt-br": "Nome da Organiza\u00e7\u00e3o (O)",
+ "pt": "Nome da organiza\u00e7\u00e3o",
+ "pl": "Nazwa organizacji (Organization name)",
+ "cs": "Jm\u00e9no organizace",
+ "tr": "Organizasyon ad\u0131",
+ "it": "Nome dell'organizzazione",
+ "lt": "Organizacijos pavadinimas",
+ "ja": "\u6240\u5c5e\u7d44\u7e54",
+ "zh-tw": "\u7d44\u7e54\u540d\u7a31",
+ "et": "Organisatsiooni nimi",
+ "he": "\u05e9\u05dd \u05d0\u05d9\u05e8\u05d2\u05d5\u05df",
+ "ru": "\u041d\u0430\u0437\u0432\u0430\u043d\u0438\u0435 \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u0430\u0446\u0438\u0438",
+ "zh": "\u7ec4\u7ec7\u540d\u79f0",
+ "sr": "Naziv mati\u010dne institucije",
+ "ar": "\u0627\u0633\u0645 \u0627\u0644\u0645\u0646\u0638\u0645\u0629",
+ "id": "Nama organisasi"
+ },
+ "attribute_dc": {
+ "no": "Navneledd (DC)",
+ "nn": "Namneledd (DC)",
+ "sv": "Dom\u00e4nnamnskomponent",
+ "es": "Componente de dominio (DC)",
+ "de": "Domain-Komponente",
+ "nl": "Domeincomponent",
+ "lb": "Domain Komponent",
+ "sl": "Domenska komponenta (DC)",
+ "da": "Dom\u00e6nekomponent",
+ "hr": "Domenska komponenta (DC)",
+ "hu": "Domain \u00f6sszetev\u0151 (DC)",
+ "fi": "Domain-osio",
+ "pt-br": "Componente do Dom\u00ednio (DC)",
+ "pt": "Componente de dom\u00ednio",
+ "pl": "Sk\u0142adnik nazwy domenowej (DC)",
+ "cs": "Dom\u00e9na (DC)",
+ "tr": "Alan bile\u015feni",
+ "fr": "Fragment de domaine (DC)",
+ "it": "Componente di dominio (DC)",
+ "lt": "Domeno komponentas",
+ "ja": "\u30c9\u30e1\u30a4\u30f3\u540d",
+ "zh-tw": "Domain component (DC)",
+ "et": "Domeeni komponent (DC)",
+ "he": "\u05de\u05e8\u05db\u05d9\u05d1 \u05de\u05ea\u05d7\u05dd (DC)",
+ "ru": "\u041a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442 \u0434\u043e\u043c\u0435\u043d\u0430",
+ "zh": "Opened the web browser with tabs saved from the previous session.\u57df\u7ec4\u4ef6\uff08DC\uff09",
+ "sr": "Domenska komponenta (DC)",
+ "ar": "\u0645\u0643\u0648\u0646\u0627\u062a \u0627\u0644\u0646\u0637\u0627\u0642",
+ "id": "Domain component(DC)"
+ },
+ "attribute_displayname": {
+ "no": "Navn som normalt vises",
+ "nn": "Namn slik det normalt blir vist fram",
+ "sv": "Visningsnamn",
+ "es": "Nombre para mostrar",
+ "de": "Anzeigename",
+ "nl": "Weergavenaam",
+ "lb": "Ugewisenen Numm",
+ "sl": "Prikazno ime",
+ "da": "Visningsnavn",
+ "hr": "Mre\u017eno ime",
+ "hu": "Megjelen\u00edthet\u0151 n\u00e9v",
+ "fi": "N\u00e4ytt\u00f6nimi",
+ "pt-br": "Nome a ser mostrado",
+ "pt": "Nome de apresenta\u00e7\u00e3o",
+ "pl": "Nazwa wy\u015bwietlana (Display name)",
+ "cs": "Jm\u00e9no k zobrazen\u00ed",
+ "tr": "G\u00f6r\u00fcnt\u00fclenen isim",
+ "fr": "Nom pour affichage",
+ "it": "Nome da visualizzare",
+ "lt": "Rodomas vardas",
+ "ja": "\u8868\u793a\u540d",
+ "zh-tw": "\u986f\u793a\u540d\u7a31",
+ "et": "Kuvatav nimi",
+ "he": "\u05d4\u05e8\u05d0\u05d4 \u05e9\u05dd",
+ "ru": "\u041e\u0442\u043e\u0431\u0440\u0430\u0436\u0430\u0435\u043c\u043e\u0435 \u0438\u043c\u044f",
+ "zh": "\u663e\u793a\u540d\u79f0",
+ "ar": "\u0627\u0644\u0627\u0633\u0645 \u0627\u0644\u0645\u0633\u062a\u062e\u062f\u0645 ",
+ "id": "Nama yang ditampilkan",
+ "sr": "Ime za prikaz"
+ },
+ "attribute_facsimiletelephonenumber": {
+ "no": "Faksnummer",
+ "nn": "Faksnummer",
+ "sv": "Faxnummer",
+ "es": "N\u00famero de fax",
+ "de": "Faxnummer",
+ "nl": "Faxnummer",
+ "lb": "Fax Nummer",
+ "sl": "Fax",
+ "da": "Faxnummer",
+ "hr": "Broj telefaksa",
+ "hu": "Fax",
+ "fi": "Faksinumero",
+ "pt-br": "N\u00famero do Fax",
+ "pt": "N\u00famero de Fax",
+ "pl": "Numer Faksu (Fax number)",
+ "cs": "Fax",
+ "tr": "Faks numaras\u0131",
+ "fr": "Num\u00e9ro de fax",
+ "it": "Numero di fax",
+ "lt": "Fakso numeris",
+ "ja": "Fax\u756a\u53f7",
+ "zh-tw": "\u50b3\u771f",
+ "et": "Faksinumber",
+ "he": "\u05de\u05e1' \u05e4\u05e7\u05e1",
+ "ru": "\u041d\u043e\u043c\u0435\u0440 \u0444\u0430\u043a\u0441\u0430",
+ "zh": "\u4f20\u771f\u53f7\u7801",
+ "sr": "Fax broj",
+ "ar": "\u0631\u0642\u0645 \u0627\u0644\u0641\u0627\u0643\u0633",
+ "id": "No Fax"
+ },
+ "attribute_homephone": {
+ "no": "Hjemmetelefon",
+ "nn": "Heimetelefon",
+ "sv": "Hemtelefon",
+ "es": "Tel\u00e9fono de su domicilio",
+ "de": "Private Telefonnummer",
+ "nl": "Thuistelefoon",
+ "lb": "Haustelefon",
+ "sl": "Doma\u010da telefonska \u0161tevilka",
+ "da": "Telefonnummer (privat)",
+ "hr": "Ku\u0107ni telefonski broj",
+ "hu": "Otthoni telefon",
+ "fi": "Kotipuhelin",
+ "pt-br": "Telefone fixo",
+ "pt": "Telefone de resid\u00eancia",
+ "pl": "Telefon domowy (Home telephone)",
+ "cs": "Telefon dom\u016f",
+ "tr": "Ev telefonu",
+ "fr": "T\u00e9l\u00e9phone personnel",
+ "it": "Telefono",
+ "lt": "Nam\u0173 telefo nr.",
+ "ja": "\u96fb\u8a71\u756a\u53f7",
+ "zh-tw": "\u4f4f\u5bb6\u96fb\u8a71",
+ "et": "Kodune telefon",
+ "he": "\u05d8\u05dc\u05e4\u05d5\u05df \u05d1\u05d1\u05d9\u05ea",
+ "ru": "\u0414\u043e\u043c\u0430\u0448\u043d\u0438\u0439 \u0442\u0435\u043b\u0435\u0444\u043e\u043d",
+ "zh": "\u5bb6\u5ead\u7535\u8bdd",
+ "sr": "Ku\u0107ni telefonski broj",
+ "ar": "\u0631\u0642\u0645 \u0627\u0644\u0647\u0627\u062a\u0641 \u0627\u0644\u0645\u0646\u0632\u0644\u064a",
+ "id": "Telepon rumah"
+ },
+ "attribute_homepostaladdress": {
+ "no": "Postadresse hjemme",
+ "nn": "Postadresse heime",
+ "sv": "Hemadress",
+ "es": "Direcci\u00f3n de su domicilio",
+ "de": "Privatanschrift",
+ "nl": "Werkadres",
+ "lb": "Adress",
+ "sl": "Doma\u010di naslov",
+ "da": "Privatadresse",
+ "hr": "Ku\u0107na po\u0161tanska adresa",
+ "hu": "Otthoni levelez\u00e9si c\u00edm",
+ "fi": "Kodin postiosoite",
+ "pt-br": "Endere\u00e7o residencial",
+ "pt": "Morada de redid\u00eancia",
+ "pl": "Domowy address pocztowy",
+ "cs": "Adresa dom\u016f",
+ "tr": "Ev posta adresi",
+ "fr": "Adresse postale personnelle",
+ "it": "Indirizzo postale",
+ "lt": "Nam\u0173 adresas",
+ "ja": "\u4f4f\u6240",
+ "zh-tw": "\u4f4f\u5bb6\u5730\u5740",
+ "et": "Kodune postiaadress",
+ "he": "\u05db\u05ea\u05d5\u05d1\u05ea \u05d3\u05d5\u05d0\u05e8 \u05d1\u05d1\u05d9\u05ea",
+ "ru": "\u0414\u043e\u043c\u0430\u0448\u043d\u0438\u0439 \u043f\u043e\u0447\u0442\u043e\u0432\u044b\u0439 \u0430\u0434\u0440\u0435\u0441",
+ "zh": "\u5bb6\u5ead\u90ae\u653f\u5730\u5740",
+ "sr": "Ku\u0107na po\u0161tanska adresa",
+ "ar": "\u0627\u0644\u0639\u0646\u0648\u0627\u0646 \u0627\u0644\u0628\u0631\u064a\u062f\u064a",
+ "id": "Alamat pos rumah"
+ },
+ "attribute_jpegphoto": {
+ "no": "JPEG-foto",
+ "nn": "Foto p\u00e5 JPEG-format",
+ "sv": "JPEG-bild",
+ "es": "Fotograf\u00eda en JPEG",
+ "de": "JPEG Foto",
+ "nl": "JPEG-foto",
+ "lb": "Photo am JPEG Format",
+ "sl": "JPEG Slika",
+ "da": "JPEG-foto",
+ "hr": "Slika u JPEG formatu",
+ "hu": "Fot\u00f3 JPEG form\u00e1tumban",
+ "fi": "JPEG kuva",
+ "pt-br": "Foto JPEG",
+ "pt": "Foto JPEG",
+ "pl": "Fotografia JPEG",
+ "cs": "Foto JPEG",
+ "tr": "JPEG foto\u011fraf",
+ "fr": "Photo JPEG",
+ "it": "Foto JPEG",
+ "lt": "JPEG nuotrauka",
+ "ja": "JPEG\u5199\u771f",
+ "zh-tw": "JPEG \u5716\u7247",
+ "et": "JPEG-foto",
+ "he": "\u05ea\u05de\u05d5\u05e0\u05d4",
+ "ru": "\u0424\u043e\u0442\u043e\u0433\u0440\u0430\u0444\u0438\u044f \u0432 \u0444\u043e\u0440\u043c\u0430\u0442\u0435 JPEG",
+ "zh": "JPEG\u56fe\u7247",
+ "sr": "Slika osobe",
+ "ar": "\u0635\u0648\u0631\u0629 (JPEG)",
+ "id": "Foto JPEG"
+ },
+ "attribute_l": {
+ "no": "Sted",
+ "nn": "Stad",
+ "sv": "Plats",
+ "es": "Localidad",
+ "de": "Ort",
+ "nl": "Plaats",
+ "lb": "Uertschaft",
+ "sl": "Kraj",
+ "da": "Sted",
+ "hr": "Mjesto (lokalitet)",
+ "hu": "Telep\u00fcl\u00e9s",
+ "fi": "Paikkakunta",
+ "pt-br": "Localidade",
+ "pt": "Localidade",
+ "pl": "Locality",
+ "cs": "Lokalita",
+ "tr": "B\u00f6lge",
+ "fr": "Lieu",
+ "it": "Localit\u00e0",
+ "lt": "Vietov\u0117",
+ "ja": "\u5730\u57df",
+ "zh-tw": "\u4f4d\u7f6e",
+ "he": "\u05d0\u05d9\u05d6\u05d5\u05e8",
+ "ru": "\u0420\u0430\u0439\u043e\u043d",
+ "et": "Asukoht",
+ "zh": "\u4f4d\u7f6e",
+ "sr": "Lokacija(Mesto)",
+ "ar": "\u0627\u0644\u0645\u062d\u0644\u064a\u0629",
+ "id": "Lokalitas"
+ },
+ "attribute_labeleduri": {
+ "no": "URI med valgfri tilleggskommentar",
+ "nn": "URI med valfri tilleggskommentar",
+ "sv": "Hemsida",
+ "es": "URI etiquetado",
+ "de": "URI mit zus\u00e4tzlicher Kennzeichnung",
+ "nl": "URI",
+ "lb": "Beschr\u00ebfteten URI",
+ "sl": "Ozna\u010den URI",
+ "da": "Labeled URI",
+ "hr": "URI adresa",
+ "hu": "Honlap c\u00edm",
+ "fi": "Kotisivu",
+ "pt-br": "URI rotulado",
+ "pt": "P\u00e1gina web",
+ "pl": "Labeled URI",
+ "cs": "URI",
+ "tr": "Etiketlenen URI",
+ "fr": "URI",
+ "it": "Etichetta URI",
+ "lt": "\u017dym\u0117tasis URI",
+ "ja": "URI",
+ "zh-tw": "\u6a19\u7c64\u7db2\u5740",
+ "he": "\u05e1\u05d9\u05d5\u05d5\u05d2 URI",
+ "ru": "\u041c\u0430\u0440\u043a\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0439 URI (LabeledURI)",
+ "et": "Sildistatud URI",
+ "zh": "\u6807\u7b7eURI",
+ "sr": "URI adresa",
+ "ar": "URI \u0623\u0633\u0645 ",
+ "id": "Berlabel URL"
+ },
+ "attribute_ou": {
+ "no": "Organisasjonsenhet",
+ "nn": "Organisasjonseining",
+ "sv": "Organisationsenhet",
+ "es": "Unidad organizativa",
+ "de": "Organisationseinheit",
+ "nl": "Afdeling",
+ "lb": "Organisatiounseenheet",
+ "sl": "Oddelek",
+ "da": "Organisatorisk enhed",
+ "hr": "Organizacijska jedinica",
+ "hu": "Szervezeti egys\u00e9g",
+ "fi": "Organisaation yksikk\u00f6",
+ "pt-br": "Unidade Organizacional (OU)",
+ "pt": "Unidade organizacional",
+ "pl": "Jednostka organizacyjna (Organizational unit)",
+ "cs": "Organiza\u010dn\u00ed jednotka",
+ "tr": "Organizasyonel birim",
+ "fr": "Section",
+ "it": "Unit\u00e0 organizzativa",
+ "lt": "Organizacijos skyrius",
+ "ja": "\u7d44\u7e54\u5358\u4f4d",
+ "zh-tw": "\u7d44\u7e54\u55ae\u4f4d",
+ "et": "All\u00fcksus",
+ "he": "\u05d9\u05d7\u05d9\u05d3\u05d4 \u05d1\u05d0\u05e8\u05d2\u05d5\u05df",
+ "ru": "\u041f\u043e\u0434\u0440\u0430\u0437\u0434\u0435\u043b\u0435\u043d\u0438\u0435 \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u0430\u0446\u0438\u0438",
+ "zh": "\u7ec4\u7ec7\u5355\u4f4d",
+ "sr": "Organizaciona jedinica",
+ "ar": "\u0627\u0644\u0648\u062d\u062f\u0629",
+ "id": "Organizational unit"
+ },
+ "attribute_postaladdress": {
+ "no": "Postadresse",
+ "nn": "Postadresse",
+ "sv": "Postadress",
+ "es": "Direcci\u00f3n postal",
+ "de": "Anschrift",
+ "nl": "Adres",
+ "lb": "Adress",
+ "sl": "Po\u0161tni naslov",
+ "da": "Adresse",
+ "hr": "Po\u0161tanska adresa",
+ "hu": "Levelez\u00e9si c\u00edm",
+ "fi": "Postiosoite",
+ "pt-br": "Endere\u00e7o",
+ "pt": "Morada",
+ "pl": "Adres pocztowy (Postal address)",
+ "cs": "Po\u0161tovn\u00ed adresa",
+ "tr": "Posta adresi",
+ "fr": "Adresse postale",
+ "it": "Indirizzo postale",
+ "lt": "Adresas",
+ "ja": "\u4f4f\u6240",
+ "zh-tw": "\u90f5\u5bc4\u5730\u5740",
+ "et": "Postiaadress",
+ "he": "\u05db\u05ea\u05d5\u05d1\u05ea \u05d3\u05d5\u05d0\u05e8",
+ "ru": "\u041f\u043e\u0447\u0442\u043e\u0432\u044b\u0439 \u0430\u0434\u0440\u0435\u0441",
+ "zh": "\u90ae\u653f\u5730\u5740",
+ "sr": "Po\u0161tanska adresa",
+ "ar": "\u0627\u0644\u0639\u0646\u0648\u0627\u0646 \u0627\u0644\u0628\u0631\u064a\u062f\u064a \u0644\u0644\u0645\u0646\u0638\u0645\u0629",
+ "id": "Alamat pos"
+ },
+ "attribute_postalcode": {
+ "no": "Postnummer",
+ "nn": "Postnummer",
+ "sv": "Postkod",
+ "es": "C\u00f3digo postal",
+ "de": "Postleitzahl",
+ "nl": "Postcode",
+ "lb": "Postleitzuel",
+ "sl": "Po\u0161tna \u0161tevilka",
+ "da": "Postnummer",
+ "hr": "Broj po\u0161te",
+ "hu": "Ir\u00e1ny\u00edt\u00f3sz\u00e1m",
+ "fi": "Postinumero",
+ "pt-br": "CEP",
+ "pt": "C\u00f3digo Postal",
+ "pl": "Kod pocztowy",
+ "cs": "Po\u0161tovn\u00ed k\u00f3d PSC",
+ "tr": "Posta kodu",
+ "fr": "Code postal",
+ "it": "CAP",
+ "lt": "Pa\u0161to kodas",
+ "ja": "\u90f5\u4fbf\u756a\u53f7",
+ "zh-tw": "\u90f5\u905e\u5340\u865f",
+ "et": "Postiindeks",
+ "he": "\u05de\u05d9\u05e7\u05d5\u05d3",
+ "ru": "\u041f\u043e\u0447\u0442\u043e\u0432\u044b\u0439 \u0438\u043d\u0434\u0435\u043a\u0441",
+ "zh": "\u90ae\u653f\u7f16\u7801",
+ "sr": "Po\u0161tanski broj",
+ "ar": "\u0627\u0644\u0631\u0645\u0632 \u0627\u0644\u0628\u0631\u064a\u062f\u064a",
+ "id": "Kode pos"
+ },
+ "attribute_postofficebox": {
+ "no": "Postboks",
+ "nn": "Postboks",
+ "sv": "Box",
+ "es": "C\u00f3digo postal",
+ "de": "Postfach",
+ "nl": "Postbus",
+ "lb": "Postschl\u00e9issfach",
+ "sl": "Po\u0161tni predal",
+ "da": "Postbox",
+ "hr": "Broj po\u0161tanskog pretinca",
+ "hu": "Postafi\u00f3k",
+ "fi": "Postilokero",
+ "pt-br": "Caixa Postal",
+ "pt": "Apartado",
+ "pl": "Skrzynka pocztowa (Post office box)",
+ "cs": "Postbox",
+ "tr": "Posta kutusu",
+ "fr": "Boite postale",
+ "it": "Casella postale",
+ "lt": "Pa\u0161to d\u0117\u017eut\u0117s nr.",
+ "ja": "\u30aa\u30d5\u30a3\u30b9\u30dc\u30c3\u30af\u30b9\u30dd\u30b9\u30c8",
+ "zh-tw": "\u90f5\u653f\u4fe1\u7bb1",
+ "et": "Postkast",
+ "he": "\u05ea\u05d0 \u05d3\u05d5\u05d0\u05e8",
+ "ru": "\u0410\u0431\u043e\u043d\u0435\u043c\u0435\u043d\u0442\u043d\u044b\u0439 \u043f\u043e\u0447\u0442\u043e\u0432\u044b\u0439 \u044f\u0449\u0438\u043a",
+ "zh": "\u90ae\u653f\u4fe1\u7bb1",
+ "sr": "Broj po\u0161tanskog sandu\u010deta",
+ "ar": "\u0627\u0644\u0635\u0646\u062f\u0648\u0642 \u0627\u0644\u0628\u0631\u064a\u062f\u064a",
+ "id": "PO Box"
+ },
+ "attribute_street": {
+ "no": "Gate",
+ "nn": "Gateadresse",
+ "sv": "Gata",
+ "es": "Calle",
+ "de": "Stra\u00dfe",
+ "nl": "Straat",
+ "lb": "Strooss",
+ "sl": "Ulica",
+ "da": "Gade",
+ "hr": "Ulica",
+ "hu": "Utca",
+ "fi": "Katu",
+ "pt-br": "Rua",
+ "pt": "Rua",
+ "pl": "Ulica (Street)",
+ "cs": "Ulice",
+ "tr": "Sokak",
+ "fr": "Rue",
+ "it": "Via",
+ "lt": "Gatv\u0117",
+ "ja": "\u756a\u5730",
+ "zh-tw": "\u8857",
+ "et": "T\u00e4nav",
+ "he": "\u05e8\u05d7\u05d5\u05d1",
+ "ru": "\u0423\u043b\u0438\u0446\u0430",
+ "zh": "\u8857\u9053",
+ "sr": "Ulica i broj",
+ "ar": "\u0627\u0644\u0634\u0627\u0631\u0639",
+ "id": "Jalan"
+ },
+ "attribute_telephonenumber": {
+ "no": "Telefon",
+ "nn": "Telefon",
+ "sv": "Telefonnummer",
+ "es": "N\u00famero de tel\u00e9fono",
+ "de": "Telefonnummer",
+ "nl": "Telefoonnummer",
+ "lb": "Telefonsnummer",
+ "sl": "Telefonska \u0161tevilka",
+ "da": "Telefonnummer",
+ "hr": "Broj telefona",
+ "hu": "Telefonsz\u00e1m",
+ "fi": "Puhelinnumero",
+ "pt-br": "N\u00famero de Telefone",
+ "pt": "Telefone",
+ "pl": "Numer telefonu (Telephone number)",
+ "cs": "Telefon",
+ "tr": "Telefon numaras\u0131",
+ "fr": "Num\u00e9ro de t\u00e9l\u00e9phone",
+ "it": "Numero di telefono",
+ "lt": "Telefono nr.",
+ "ja": "\u96fb\u8a71\u756a\u53f7",
+ "zh-tw": "\u96fb\u8a71\u865f\u78bc",
+ "et": "Telefoninumber",
+ "he": "\u05de\u05e1\u05e4\u05e8 \u05d8\u05dc\u05e4\u05d5\u05df",
+ "ru": "\u041d\u043e\u043c\u0435\u0440 \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u0430",
+ "zh": "\u7535\u8bdd\u53f7\u7801",
+ "sr": "Telefonski broj",
+ "ar": "\u0631\u0642\u0645 \u0627\u0644\u0647\u0627\u062a\u0641",
+ "id": "No Telepon"
+ },
+ "attribute_eduorghomepageuri": {
+ "no": "Organisasjonens hjemmeside",
+ "nn": "Organisasjonen si heimeside (URL)",
+ "sv": "Organisationens hemsida",
+ "es": "P\u00e1gina de su organizaci\u00f3n",
+ "de": "Homepage der Organisation",
+ "nl": "Organisatie homepage",
+ "lb": "Organisatiouns Websait",
+ "sl": "Spletna stran organizacije",
+ "da": "Hjemmeside",
+ "hr": "Web stranice ustanove",
+ "hu": "Szervezet weboldala",
+ "fi": "Organisaation kotisivu",
+ "pt-br": "Site da organiza\u00e7\u00e3o",
+ "pt": "P\u00e1gina web da organiza\u00e7\u00e3o de origem",
+ "pl": "Strona domowa organizacji",
+ "cs": "URL organizace",
+ "tr": "Kurumsal websayfas\u0131",
+ "fr": "Site web institutionnel",
+ "it": "Homepage della propria organizzazione",
+ "lt": "Organizacijos svetain\u0117",
+ "ja": "\u7d44\u7e54\u306e\u30db\u30fc\u30e0\u30da\u30fc\u30b8",
+ "zh-tw": "\u7d44\u7e54\u9996\u9801",
+ "et": "Organisatsiooni koduleht",
+ "he": "\u05d3\u05e3-\u05d1\u05d9\u05ea \u05e9\u05dc \u05d4\u05d0\u05d9\u05e8\u05d2\u05d5\u05df",
+ "ru": "\u0414\u043e\u043c\u0430\u0448\u043d\u044f\u044f \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430 \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u0430\u0446\u0438\u0438",
+ "zh": "\u7ec4\u7ec7\u7684\u9996\u9875",
+ "sr": "URL adresa institucije",
+ "ar": " \u0639\u0646\u0648\u0627\u0646 \u0627\u0644\u0635\u0641\u062d\u0629 \u0627\u0644\u0627\u0644\u0643\u062a\u0631\u0648\u0646\u064a\u0629 \u0644\u0644\u0645\u0646\u0638\u0645\u0629",
+ "id": "Homepage organisasi"
+ },
+ "attribute_eduorglegalname": {
+ "no": "Foretaksnavn",
+ "nn": "Formelt namn p\u00e5 organisasjonen",
+ "sv": "Organisationens legala namn",
+ "es": "Nombre legal de su organizaci\u00f3n",
+ "de": "Name der K\u00f6rperschaft",
+ "nl": "Organisatie naam",
+ "lb": "Numm vun der Organisatioun",
+ "sl": "Naziv organizacije",
+ "da": "Organisationens officielle navn",
+ "hr": "Slu\u017ebeni naziv ustanove",
+ "hu": "Szervezet hivatalos neve",
+ "fi": "Organisaation virallinen nimi",
+ "pt-br": "Nome legal da Organiza\u00e7\u00e3o",
+ "pt": "Nome legal da organiza\u00e7\u00e3o de origem",
+ "pl": "Zarejestrowana nazwa organizacji",
+ "cs": "Pln\u00e9 jm\u00e9no organizace",
+ "tr": "Organizasyonu'un resmi ad\u0131",
+ "fr": "Nom l\u00e9gal de l'institution",
+ "it": "Nome legale della propria organizzazione",
+ "lt": "Organizacijos juridinis pavadinimas",
+ "ja": "\u7d44\u7e54\u306e\u6b63\u5f0f\u540d\u79f0",
+ "zh-tw": "\u7d44\u7e54\u6b63\u5f0f\u540d\u7a31",
+ "et": "Organisatsiooni ametlik nimetus",
+ "he": "\u05d4\u05e9\u05dd \u05d4\u05e8\u05e9\u05de\u05d9 \u05e9\u05dc \u05d4\u05d0\u05d9\u05e8\u05d2\u05d5\u05df",
+ "ru": "\u042e\u0440\u0438\u0434\u0438\u0447\u0435\u0441\u043a\u043e\u0435 \u043d\u0430\u0437\u0432\u0430\u043d\u0438\u0435 \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u0430\u0446\u0438\u0438",
+ "zh": "\u7ec4\u7ec7\u7684\u6cd5\u5b9a\u540d\u79f0",
+ "sr": "Zvani\u010dni naziv institucije",
+ "ar": "\u0627\u0644\u0627\u0633\u0645 \u0627\u0644\u0642\u0627\u0646\u0648\u0646\u064a \u0644\u0644\u0645\u0646\u0638\u0645\u0629",
+ "id": "Nama legal Organisasi"
+ },
+ "attribute_edupersonnickname": {
+ "no": "Kallenavn",
+ "nn": "Kallenamn",
+ "sv": "Smeknamn",
+ "es": "Alias",
+ "de": "Spitzname",
+ "nl": "Bijnaam",
+ "lb": "Sp\u00ebtznumm",
+ "sl": "Vzdevek",
+ "da": "Kaldenavn",
+ "hr": "Nadimak",
+ "hu": "Becen\u00e9v",
+ "fi": "Kutsumanimi",
+ "pt-br": "Apelido",
+ "pt": "Alcunha",
+ "pl": "Ksywka (Nickname)",
+ "cs": "Alias",
+ "tr": "Takma ad",
+ "fr": "Pseudonyme",
+ "it": "Soprannome (nick)",
+ "lt": "Slapyvardis",
+ "ja": "\u30cb\u30c3\u30af\u30cd\u30fc\u30e0",
+ "zh-tw": "\u66b1\u7a31",
+ "et": "H\u00fc\u00fcdnimi",
+ "he": "\u05db\u05d9\u05e0\u05d5\u05d9",
+ "ru": "\u041f\u0441\u0435\u0432\u0434\u043e\u043d\u0438\u043c",
+ "zh": "\u6635\u79f0",
+ "sr": "Nadimak",
+ "ar": "\u0627\u0644\u0643\u0646\u064a\u0629",
+ "id": "Nama panggilan"
+ },
+ "attribute_edupersonorgdn": {
+ "no": "Entydig navn (DN) for brukerens vertsorganisasjon",
+ "nn": "Eintydig namn (DN) til heimeorganisasjon for brukaren",
+ "sv": "LDAP-pekare (DN) till personens organisation",
+ "es": "DN de su organizaci\u00f3n origen",
+ "de": "Distinguished name (DN) der Organisation",
+ "nl": "Distinguished name (DN) van de organisatie van de persoon",
+ "lb": "Distinguished name (DN) of person's home organization",
+ "sl": "Ime doma\u010de organizacije (DN)",
+ "da": "Din hjemmeorganisations 'distinguished name' (DN)",
+ "hr": "Jedinstveni naziv (DN) korisnikove mati\u010dne ustanove",
+ "hu": "A felhaszn\u00e1l\u00f3 munkahely\u00e9nek azonos\u00edt\u00f3 neve (DN-je)",
+ "fi": "DN-osio organisaation nimest\u00e4",
+ "pt-br": "Nome distinto (DN) da sua organiza\u00e7\u00e3o principal",
+ "pt": "DN da organiza\u00e7\u00e3o de origem",
+ "pl": "Distinguished name (DN) macierzystej organizacji osoby",
+ "cs": "Jm\u00e9no (DN) organizace",
+ "tr": "Ki\u015finin ba\u011fl\u0131 oldu\u011fu kurulu\u015fun belirgin ad\u0131",
+ "fr": "Nom unique (DN) de l'institution d'origine",
+ "it": "Distinguished name (DN) dell'organizzazione ",
+ "lt": "Asmens organizacijos atpa\u017einimo vardas",
+ "ja": "\u7d44\u7e54\u8b58\u5225\u540d",
+ "zh-tw": "Distinguished name (DN) \u500b\u4eba\u9810\u8a2d\u7d44\u7e54",
+ "he": "\u05e9\u05dd \u05de\u05d6\u05d4\u05d4 (DN) \u05e9\u05dc \u05d0\u05d9\u05e8\u05d2\u05d5\u05df \u05d4\u05d1\u05d9\u05ea",
+ "ru": "\u041e\u0442\u043b\u0438\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0435 \u0438\u043c\u044f (DN) \u0447\u0435\u043b\u043e\u0432\u0435\u043a\u0430 \u0434\u043e\u043c\u0430\u0448\u043d\u0435\u0439 \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u0430\u0446\u0438\u0438",
+ "zh": "\u4eba\u7684\u5bb6\u5ead\u7ec4\u7ec7\u7684\u5206\u8fa8\u540d\u79f0\uff08DN\uff09",
+ "sr": "Jedinstveni naziv (DN) korisnikove mati\u010dne institucije",
+ "ar": "\u0627\u0644\u0627\u0633\u0645 \u0627\u0644\u0645\u0645\u064a\u0632 \u0644\u0644\u0645\u0646\u0638\u0645\u0629 \u0631\u0628 \u0627\u0644\u0639\u0645\u0644",
+ "et": "Koduorganisatsiooni unikaalne nimi (DN)",
+ "id": "Distinguished name (DN) of person's home organization"
+ },
+ "attribute_edupersonorgunitdn": {
+ "no": "Entydig navn (DN) for brukerens organisasjonsenhet",
+ "nn": "Eintydig namn (DN) til organisasjonseining for brukaren",
+ "sv": "LDAP-pekare (DN) till personens organisationsenhet",
+ "es": "DN de la Unidad Organizativa (OU) de su organizaci\u00f3n origen",
+ "de": "Distinguished name (DN) der Organisationseinheit",
+ "nl": "Distinguished name (DN) van de afdeling van de persoon",
+ "lb": "Distinguished name (DN) of the person's home organizational unit",
+ "sl": "Ime oddelka doma\u010de organizacije (DN)",
+ "da": "Din organisatoriske enheds 'distinguished name' (DN)",
+ "hr": "Jedinstveni naziv (DN) korisnikove organizacijske jedinice",
+ "hu": "A felhaszn\u00e1l\u00f3 szervezeti egys\u00e9g azonos\u00edt\u00f3 neve (DN-je)",
+ "fi": "DN-osio organisaatioyksik\u00f6n nimest\u00e4",
+ "pt-br": "Nome distinto (DN) da sua unidade organizacional principal",
+ "pt": "DN da unidade org\u00e2nica na organiza\u00e7\u00e3o de origem",
+ "pl": "Distinguished name (DN) macierzystej jednostki organizacyjnej osoby",
+ "cs": "Jm\u00e9no (DN) organiza\u010dn\u00ed jednotky",
+ "tr": "Ki\u015finin ba\u011fl\u0131 oldu\u011fu birimin belirgin ad\u0131",
+ "fr": "Nom unique (DN) de la section d'origine",
+ "it": "Distinguished name (DN) dell'unit\u00e0 organizzativa della persona",
+ "lt": "Asmens organizacijos skyriaus atpa\u017einomo vardas",
+ "ja": "\u7d44\u7e54\u5358\u4f4d\u8b58\u5225\u540d",
+ "zh-tw": "Distinguished name (DN) \u500b\u4eba\u9810\u8a2d\u7d44\u7e54\u55ae\u4f4d",
+ "he": "\u05e9\u05dd \u05de\u05d6\u05d4\u05d4 (DN) \u05e9\u05dc \u05d4\u05d9\u05d7\u05d9\u05d3\u05d4 \u05d1\u05d0\u05d9\u05e8\u05d2\u05d5\u05df \u05d4\u05d1\u05d9\u05ea",
+ "ru": "\u041e\u0442\u043b\u0438\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0435 \u0438\u043c\u044f (DN) \u0447\u0435\u043b\u043e\u0432\u0435\u043a\u0430 \u043f\u043e\u0434\u0440\u0430\u0437\u0434\u0435\u043b\u0435\u043d\u0438\u044f \u0434\u043e\u043c\u0430\u0448\u043d\u0435\u0439 \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u0430\u0446\u0438\u0438",
+ "zh": "\u4eba\u7684\u5bb6\u7ec4\u7ec7\u5355\u4f4d\u7684\u8fa8\u522b\u540d\u79f0\uff08DN\uff09",
+ "sr": "Jedinstveni naziv (DN) korisnikove organizacione jedinice",
+ "ar": "\u0627\u0644\u0627\u0633\u0645 \u0627\u0644\u0645\u0645\u064a\u0632 \u0644\u0644\u0648\u062d\u062f\u0629 \u0628\u0627\u0644\u0645\u0646\u0638\u0645\u0629 \u0631\u0628 \u0627\u0644\u0639\u0645\u0644",
+ "et": "Koduorganisatsiooni all\u00fcksuse unikaalne nimi (DN)",
+ "id": "Distinguished name (DN) of the person's home organizational unit"
+ },
+ "attribute_edupersonprimaryaffiliation": {
+ "no": "Prim\u00e6r tilknytning til organisasjon",
+ "nn": "Prim\u00e6rtilknyting til organisasjonen",
+ "sv": "Prim\u00e4r anknytning",
+ "es": "Afiliaci\u00f3n primaria",
+ "de": "Prim\u00e4re Organisationszugeh\u00f6rigkeit",
+ "nl": "Primaire relatie",
+ "lb": "Haapt Zougeh\u00e9iregkeet",
+ "sl": "Primarna vloga",
+ "da": "Prim\u00e6r tilknytning",
+ "hr": "Temeljna povezanost s ustanovom",
+ "hu": "Els\u0151dleges viszony",
+ "fi": "Ensisijainen suhde organisaatioon",
+ "pt-br": "Filia\u00e7\u00e3o Prim\u00e1ria",
+ "pt": "Afilia\u00e7\u00e3o principal com a organiza\u00e7\u00e3o de origem",
+ "pl": "G\u0142\u00f3wna przynale\u017cno\u015b\u0107 (Primary affiliation)",
+ "cs": "Hlavn\u00ed vztah",
+ "tr": "\u00d6ncelikli ba\u011flant\u0131",
+ "fr": "Affiliation primaire",
+ "it": "Affiliazione primaria",
+ "lt": "Pirmin\u0117 s\u0105saja",
+ "ja": "\u4e3b\u6240\u5c5e",
+ "zh-tw": "\u4e3b\u8981\u9023\u7d61\u65b9\u5f0f",
+ "he": "\u05d4\u05e9\u05ea\u05d9\u05d9\u05db\u05d5\u05ea \u05e2\u05d9\u05e7\u05e8\u05d9\u05ea",
+ "ru": "\u0413\u043b\u0430\u0432\u043d\u043e\u0435 \u0447\u043b\u0435\u043d\u0441\u0442\u0432\u043e",
+ "et": "Peamine kuuluvus",
+ "zh": "\u4e3b\u8981\u7684\u8054\u7cfb\u65b9\u5f0f",
+ "sr": "Primarna povezanost sa institucijom",
+ "ar": "\u0627\u0644\u0648\u0638\u064a\u0641\u0629 \u0627\u0644\u0627\u0633\u0627\u0633\u064a\u0629",
+ "id": "Afiliasi utama"
+ },
+ "attribute_noreduorgnin": {
+ "no": "Organisasjonsnummer",
+ "nn": "Organisasjonsnummer",
+ "sv": "Organisationsnummer",
+ "es": "N\u00famero de la organizaci\u00f3n",
+ "de": "Firmennummer nach dem Norwegischen Firmenregister",
+ "nl": "Organisatie nummer",
+ "lb": "Organisatiounsnummer",
+ "sl": "Organizacijska \u0161tevilka",
+ "da": "CVR-nummer",
+ "hr": "Broj\u010dani identifikator ustanove",
+ "hu": "Szervezeti sz\u00e1m",
+ "fi": "Organisaation numero",
+ "pt-br": "N\u00famero Organizacional",
+ "pt": "N\u00famero de Organiza\u00e7\u00e3o",
+ "pl": "Numer organizacji",
+ "cs": "\u010cislo organizace",
+ "tr": "Kurumsal numara",
+ "fr": "Immatriculation de l'institution",
+ "it": "Numero organizzativo",
+ "lt": "Organizacijos numeris",
+ "ja": "\u7d44\u7e54\u756a\u53f7",
+ "zh-tw": "\u7d44\u7e54\u865f\u78bc",
+ "he": "\u05de\u05e1\u05e4\u05e8 \u05d0\u05d9\u05e8\u05d2\u05d5\u05e0\u05d9",
+ "ru": "\u041d\u043e\u043c\u0435\u0440 \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u0430\u0446\u0438\u0438",
+ "zh": "\u7ec4\u7ec7\u53f7\u7801",
+ "sr": "Jedinstveni brojni identifikator institucije",
+ "ar": "\u0627\u0644\u0631\u0642\u0645 \u0628\u0627\u0644\u0645\u0646\u0638\u0645\u0629",
+ "id": "Nomor Organisasi",
+ "et": "Registrikood"
+ },
+ "attribute_noredupersonbirthdate": {
+ "no": "F\u00f8dselsdato",
+ "nn": "F\u00f8dselsdato",
+ "sv": "F\u00f6delsedata",
+ "es": "Fecha de nacimiento",
+ "de": "Geburtsdatum",
+ "nl": "Geboortedatum",
+ "lb": "Gebuertsdaag",
+ "sl": "Datum rojstva",
+ "da": "F\u00f8dselsdato",
+ "hr": "Datum ro\u0111enja",
+ "hu": "Sz\u00fclet\u00e9si d\u00e1tum",
+ "fi": "Syntym\u00e4aika",
+ "pt-br": "Data de Nascimento",
+ "pt": "Data de nascimento",
+ "pl": "Data urodzenia (Date of birth)",
+ "cs": "Datum narozeni",
+ "tr": "Do\u011fum tarihi",
+ "fr": "Date de naissance",
+ "it": "Data di nascita",
+ "lt": "Gimimo data",
+ "ja": "\u751f\u5e74\u6708\u65e5",
+ "zh-tw": "\u751f\u65e5",
+ "et": "S\u00fcnniaeg",
+ "he": "\u05ea\u05d0\u05e8\u05d9\u05da \u05dc\u05d9\u05d3\u05d4",
+ "ru": "\u0414\u0430\u0442\u0430 \u0440\u043e\u0436\u0434\u0435\u043d\u0438\u044f",
+ "zh": "\u751f\u65e5",
+ "sr": "Datum ro\u0111enja",
+ "ar": "\u062a\u0627\u0631\u064a\u062e \u0627\u0644\u0645\u064a\u0644\u0627\u062f",
+ "id": "Tanggal lahir"
+ },
+ "attribute_noredupersonlin": {
+ "no": "Lokalt ID-nummer",
+ "nn": "Lokalt brukarnummer (ansattnummer, studentnummer, elevnummer osb)",
+ "sv": "Lokal identifierare",
+ "es": "N\u00famero de identificaci\u00f3n local",
+ "de": "Lokale Kennummer",
+ "nl": "Identiteitsnummer",
+ "lb": "Identit\u00e9itsnummer",
+ "sl": "Vpisna \u0161tevilka",
+ "da": "Lokalt identifikationsnummer",
+ "hr": "Lokalni broj\u010dani identifikator osobe u ustanovi (LOCAL_NO)",
+ "hu": "Helyi azonos\u00edt\u00f3 sz\u00e1m",
+ "fi": "Henkil\u00f6numero",
+ "pt-br": "N\u00famero de Identifica\u00e7\u00e3o Local",
+ "pt": "N\u00famero de Identifica\u00e7\u00e3o local",
+ "pl": "Local identity number",
+ "cs": "Lok\u00e1ln\u00ed identifika\u010dn\u00ed k\u00f3d",
+ "tr": "Yerel kimlik numaras\u0131",
+ "fr": "Immatriculation territoriale",
+ "it": "Numero identificativo locale",
+ "lt": "Vietinis tapatyb\u0117s numeris",
+ "ja": "\u652f\u90e8ID",
+ "zh-tw": "\u672c\u5730\u9a57\u8b49\u78bc",
+ "he": "\u05de\u05e1\u05e4\u05e8 \u05d6\u05d4\u05d5\u05ea \u05de\u05e7\u05d5\u05de\u05d9",
+ "ru": "\u041c\u0435\u0441\u0442\u043d\u044b\u0439 \u0438\u0434\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u043e\u043d\u043d\u044b\u0439 \u043d\u043e\u043c\u0435\u0440",
+ "et": "Kohalik isikukood",
+ "zh": "\u672c\u5730\u8eab\u4efd\u53f7\u7801",
+ "sr": "Lokalni brojni identifikator osobe",
+ "ar": "\u0631\u0642\u0645 \u0627\u0644\u0647\u0648\u064a\u0629 \u0627\u0644\u0645\u062d\u0644\u064a",
+ "id": "Nomor identitas lokal"
+ },
+ "attribute_manager": {
+ "no": "Overordnet",
+ "nn": "Overordna",
+ "sv": "Chef",
+ "es": "Gestor",
+ "de": "Manager\/in",
+ "nl": "Manager",
+ "lb": "Manager",
+ "sl": "Mened\u017eer",
+ "da": "Manager",
+ "hr": "Voditelj",
+ "hu": "Manager",
+ "fi": "Manager",
+ "pt-br": "Administrador",
+ "pt": "Respons\u00e1vel hier\u00e1rquico",
+ "pl": "Menad\u017cer (Manager)",
+ "cs": "Manager",
+ "tr": "Y\u00f6netici",
+ "fr": "Gestionnaire",
+ "it": "Manager",
+ "lt": "Vadovas",
+ "ja": "\u7ba1\u7406\u8005",
+ "zh-tw": "\u7ba1\u7406\u54e1",
+ "he": "\u05de\u05e0\u05d4\u05dc",
+ "ru": "\u0423\u043f\u0440\u0430\u0432\u043b\u044f\u044e\u0449\u0438\u0439",
+ "et": "Juhataja",
+ "zh": "\u7ba1\u7406\u5458",
+ "sr": "Rukovodilac",
+ "ar": "\u0627\u0644\u0645\u062f\u064a\u0631",
+ "id": "Manager"
+ },
+ "attribute_userpassword": {
+ "no": "Hash av brukerens passord",
+ "nn": "Passord for brukaren (lagra som hash-verdi)",
+ "sv": "Anv\u00e4ndarens l\u00f6senordshash",
+ "es": "Clave o contrase\u00f1a y m\u00e9todo de encriptaci\u00f3n utilizado",
+ "de": "Passwort Hash des Benutzers",
+ "nl": "Password hash",
+ "sl": "Uporabnikovo zgo\u0161\u010deno geslo",
+ "da": "Hash-v\u00e6rdi af brugerens kodeord",
+ "hr": "Kriptirana zaporka",
+ "hu": "A felhaszn\u00e1l\u00f3 jelszava (k\u00f3dolva)",
+ "fi": "K\u00e4ytt\u00e4j\u00e4n salasanatiiviste",
+ "pt": "Senha do utilizador",
+ "pl": "Zakodowane has\u0142o u\u017cytkownika",
+ "cs": "U\u017eivatelsk\u00e9 heslo (hash)",
+ "tr": "Kullan\u0131c\u0131n\u0131n \u015fifre karmas\u0131",
+ "fr": "Mot de passe chiffr\u00e9",
+ "it": "Hash della password utente",
+ "lt": "Naudotojo slapta\u017eod\u017eio mai\u0161a",
+ "ja": "\u30d1\u30b9\u30ef\u30fc\u30c9\u30cf\u30c3\u30b7\u30e5",
+ "zh-tw": "\u4f7f\u7528\u8005\u5bc6\u78bc\u7de8\u78bc",
+ "et": "Kasutaja paroolir\u00e4si",
+ "he": "\u05d4\u05d2\u05d9\u05d1\u05d5\u05d1 \u05e9\u05dc \u05e1\u05d9\u05e1\u05de\u05ea \u05d4\u05de\u05e9\u05ea\u05de\u05e9",
+ "ru": "\u0425\u044d\u0448 \u043f\u0430\u0440\u043e\u043b\u044f \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f",
+ "pt-br": "Hash da Senha do Usu\u00e1rio",
+ "zh": "\u7528\u6237\u5bc6\u7801\u7684HASH\u503c",
+ "sr": "He\u0161 vrednost korisnikove lozinke",
+ "ar": "\u0643\u0644\u0645\u0629 \u0627\u0644\u0633\u0631",
+ "id": "Hash password user"
+ },
+ "attribute_edupersonprimaryorgunitdn": {
+ "no": "Entydig navn for organisasjonsenheten som brukeren prim\u00e6rt er tilknyttet",
+ "nn": "Eintydig namn (DN) til prim\u00e6r organisasjonseining for personen",
+ "sv": "LDAP-pekare (DN) till personens pim\u00e4ra organisationsenhet",
+ "es": "Distinguished name (DN) de la entrada del directorio que representa el identificador primario de la Unidad Organizativa.",
+ "de": "Distinguished name (DN) der prim\u00e4ren Organisationseinheit",
+ "nl": "Distinguished name (DN) van de organisatie hoofdafdeling waartoe de persoon behoort",
+ "sl": "Ime (DN) oddelka v doma\u010di organizaciji",
+ "da": "Prim\u00e6r enhed\/institution",
+ "hr": "Jedinstveni naziv (DN) korisnikove primarne organizacijske jedinice",
+ "hu": "A szem\u00e9ly els\u0151dleges szervezeti egys\u00e9g\u00e9nek azonos\u00edt\u00f3 neve (DN-je)",
+ "pt": "DN da unidade org\u00e2nica",
+ "cs": "Jm\u00e9no (DN) hlavn\u00ed organiza\u010dn\u00e1 jednotky",
+ "tr": "Ki\u015finin \u00f6ncelikli Kurumsal Birimi'nin belirgin ad\u0131",
+ "fr": "Nom unique (DN) de la section d'origine",
+ "it": "Distinguished name (DN) dell'unit\u00e0 organizzativa della persona",
+ "lt": "Asmens pirminio organizacijos skyriaus atpa\u017einimo vardas",
+ "ja": "\u4e3b\u8981\u7d44\u7e54\u5358\u4f4d\u8b58\u5225\u540d",
+ "zh-tw": "Distinguished name (DN) of \u500b\u4eba\u4e3b\u8981\u7d44\u7e54\u55ae\u4f4d",
+ "he": "\u05e9\u05dd \u05de\u05d6\u05d4\u05d4 (DN) \u05e9\u05dc \u05d4\u05d9\u05d7\u05d9\u05d3\u05d4 \u05d4\u05e2\u05d9\u05e7\u05e8\u05d9\u05ea \u05d1\u05d0\u05d9\u05e8\u05d2\u05d5\u05df \u05d4\u05d1\u05d9\u05ea",
+ "ru": "\u041e\u0442\u043b\u0438\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0435 \u0438\u043c\u044f (DN) \u0447\u0435\u043b\u043e\u0432\u0435\u043a\u0430 \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0433\u043e \u043f\u043e\u0434\u0440\u0430\u0437\u0434\u0435\u043b\u0435\u043d\u0438\u044f \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u0430\u0446\u0438\u0438",
+ "zh": "\u4eba\u7684\u4e3b\u8981\u7ec4\u7ec7\u5355\u4f4d\u7684\u8fa8\u522b\u540d\u79f0\uff08DN\uff09",
+ "sr": "Jedinstveni naziv (DN) korisnikove primarne organizacione jedinice",
+ "ar": "\u0627\u0644\u0627\u0633\u0645 \u0627\u0644\u0645\u0645\u064a\u0632 \u0644\u0644\u0648\u062d\u062f\u0629 \u0627\u0644\u0623\u0633\u0627\u0633\u064a\u0629 \u0628\u0627\u0644\u0645\u0646\u0638\u0645\u0629 \u0631\u0628 \u0627\u0644\u0639\u0645\u0644",
+ "pl": "Nazwa osoby w jednostce organizacyjnej",
+ "et": "Peamise all\u00fcksuse unikaalne nimi (DN)",
+ "id": "Distinguished name (DN) of person's primary Organizational Unit"
+ },
+ "attribute_schacuserprivateattribute": {
+ "no": "Private informasjonselement",
+ "nn": "Private informasjonselement",
+ "sv": "Information om vilka attribut som har skyddsbehov",
+ "es": "Elementos de informaci\u00f3n privada",
+ "de": "Private Informationselemente",
+ "nl": "Priv\u00e9 informatie-elementen",
+ "sl": "Zasebni informacijski elementi",
+ "da": "Private informationselementer",
+ "hu": "V\u00e9dett adatokat tartalmaz\u00f3 attrib\u00fatumok",
+ "pt": "Elementos privados de informa\u00e7\u00e3o",
+ "pl": "Poufne atrybuty",
+ "cs": "Priv\u00e1tn\u00ed informa\u010dn\u00ed element",
+ "tr": "\u00d6zel bilgi elemanlar\u0131",
+ "fr": "\u00c9l\u00e9ments d'informations priv\u00e9es",
+ "hr": "Postavke privatnosti",
+ "it": "Elementi informativi privati",
+ "lt": "Priva\u010dios informacijos elementai",
+ "ja": "\u500b\u4eba\u60c5\u5831\u8981\u7d20",
+ "zh-tw": "\u500b\u4eba\u8cc7\u6599",
+ "et": "Privaatandmete elemendid",
+ "he": "\u05e8\u05db\u05d9\u05d1\u05d9 \u05d4\u05de\u05d9\u05d3\u05e2 \u05d4\u05d0\u05d9\u05e9\u05d9",
+ "ru": "\u042d\u043b\u0435\u043c\u0435\u043d\u0442\u044b \u043b\u0438\u0447\u043d\u043e\u0439 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438",
+ "zh": "\u4e2a\u4eba\u8d44\u6599",
+ "sr": "Privatni atribut",
+ "ar": "\u0648\u062d\u062f\u0627\u062a \u0627\u0644\u062a\u0639\u0631\u064a\u0641 \u0627\u0644\u062e\u0627\u0635\u0629",
+ "id": "Elemen-elemen informasi personal"
+ },
+ "attribute_noredupersonlegalname": {
+ "no": "Folkeregistrert navn",
+ "nn": "Namn registrert i Folkeregisteret",
+ "sl": "Uradno ime",
+ "sv": "Officiellt (legalt) namn",
+ "fr": "\u00c9tat civil",
+ "hr": "Slu\u017ebeni naziv",
+ "da": "Officielt navn",
+ "it": "Nome legale",
+ "es": "Nombre legal",
+ "lt": "Juridinis vardas",
+ "ja": "\u6b63\u5f0f\u540d\u79f0",
+ "nl": "Offici\u00eble naam",
+ "de": "Offizeller Name",
+ "zh-tw": "\u6b63\u5f0f\u540d\u5b57",
+ "he": "\u05e9\u05dd \u05e8\u05e9\u05de\u05d9",
+ "ru": "\u041e\u0444\u0438\u0446\u0438\u0430\u043b\u044c\u043d\u043e\u0435 \u043d\u0430\u0437\u0432\u0430\u043d\u0438\u0435",
+ "zh": "\u6b63\u5f0f\u540d\u79f0",
+ "ar": "\u0627\u0644\u0627\u0633\u0645 \u0627\u0644\u0634\u0631\u0639\u064a",
+ "pl": "Formalna nazwa u\u017cytkownika",
+ "et": "Ametlik nimi",
+ "hu": "Hivatalos n\u00e9v (noreduperson)",
+ "id": "Nama legal",
+ "sr": "Pravno ime"
+ },
+ "attribute_edupersonassurance": {
+ "no": "Tillitsniv\u00e5 for autentisering",
+ "nn": "Tillitsniv\u00e5 for autentisering",
+ "sv": "Identitetens tillf\u00f6rlitlighetsprofil",
+ "sl": "Stopnja zanesljivosti",
+ "fr": "Profil d'assertion d'identit\u00e9",
+ "hr": "Uskla\u0111enost sa standardima za\u0161tite korisni\u010dkih podataka",
+ "da": "Tillidsniveau for autentifisering",
+ "it": "Profilo di garanzia sull'identit\u00e0",
+ "lt": "Tapatyb\u0117s tikrumo profilis",
+ "es": "Identificador del perfil de garant\u00eda",
+ "nl": "Identiteitsverzekeringsprofiel",
+ "ja": "\u8b58\u5225\u5b50\u4fdd\u8a3c\u30d7\u30ed\u30d5\u30a1\u30a4\u30eb",
+ "de": "Identity Assurance Profil",
+ "zh-tw": "\u53ef\u9760\u9a57\u8b49\u8a2d\u5b9a\u6a94",
+ "he": "\u05e4\u05e8\u05d5\u05e4\u05d9\u05dc \u05d4\u05d1\u05d8\u05d7\u05ea \u05d6\u05d4\u05d5\u05ea",
+ "ru": "\u0418\u0434\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0440 \u0433\u0430\u0440\u0430\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0433\u043e \u043f\u0440\u043e\u0444\u0430\u0439\u043b\u0430",
+ "et": "Identiteedi tagamise profiil",
+ "zh": "\u53ef\u9760\u9a8c\u8bc1\u914d\u7f6e\u6587\u4ef6",
+ "sr": "Visina pouzdanosti davaoca digitalnih identiteta",
+ "ar": "\u0647\u0648\u064a\u0629 \u0627\u0644\u0636\u0645\u0627\u0646",
+ "id": "Profil penjamin identitas"
+ }
+}
diff --git a/inc/simplesamlphp/dictionaries/disco.definition.json b/inc/simplesamlphp/dictionaries/disco.definition.json
new file mode 100644
index 0000000..ea20385
--- /dev/null
+++ b/inc/simplesamlphp/dictionaries/disco.definition.json
@@ -0,0 +1,23 @@
+{
+ "selectidp": {
+ "en": "Select your identity provider"
+ },
+ "selectidp_full": {
+ "en": "Please select the identity provider where you want to authenticate:"
+ },
+ "select": {
+ "en": "Select"
+ },
+ "remember": {
+ "en": "Remember my choice"
+ },
+ "icon_prefered_idp": {
+ "en": "[Preferred choice]"
+ },
+ "previous_auth": {
+ "en": "You have previously chosen to authenticate at"
+ },
+ "login_at": {
+ "en": "Login at"
+ }
+}
diff --git a/inc/simplesamlphp/dictionaries/disco.translation.json b/inc/simplesamlphp/dictionaries/disco.translation.json
new file mode 100644
index 0000000..63b0515
--- /dev/null
+++ b/inc/simplesamlphp/dictionaries/disco.translation.json
@@ -0,0 +1,207 @@
+{
+ "selectidp": {
+ "no": "Velg din identitetsleverand\u00f8r",
+ "nn": "Vel innloggingsteneste",
+ "sv": "V\u00e4lj din identitetsleverant\u00f6r",
+ "es": "Seleccione su proveedor de identidad",
+ "fr": "S\u00e9lectionnez votre fournisseur d'identit\u00e9",
+ "de": "W\u00e4hlen Sie Ihren Identity Provider",
+ "nl": "Kies je Identity Provider",
+ "sl": "Izberite IdP doma\u010de organizacije",
+ "da": "V\u00e6lg institution (identitetsudbyder)",
+ "hr": "Odaberite autentifikacijski servis",
+ "hu": "V\u00e1lasszon szem\u00e9lyazonoss\u00e1g-szolg\u00e1ltat\u00f3t (IdP)",
+ "fi": "Valitse identiteettill\u00e4hteeis",
+ "pt-br": "Selecione seu provedor de identidade",
+ "pt": "Escolha o seu fornecedor de identidade (IdP)",
+ "pl": "wybierz swojego Dostawc\u0119 To\u017csamo\u015bci.",
+ "cs": "Zvol sv\u00e9ho poskytovatele identity (IdP)",
+ "tr": "Kimlik sa\u011flay\u0131c\u0131n\u0131z\u0131 se\u00e7iniz.",
+ "lt": "Pasirinkite savo tapatybi\u0173 tiek\u0117j\u0105",
+ "it": "Selezionare il proprio identity provider",
+ "ja": "\u30a2\u30a4\u30c7\u30f3\u30c6\u30a3\u30c6\u30a3\u30d7\u30ed\u30d0\u30a4\u30c0\u3092\u9078\u629e\u3057\u3066\u304f\u3060\u3055\u3044",
+ "zh-tw": "\u9078\u64c7\u4f60\u7684\u8b58\u5225\u63d0\u4f9b\u8005(idp)",
+ "ru": "\u0412\u044b\u0431\u0438\u0