IdPv4ã¢ããããŒãã«é¢ããæ å ±
Shibboleth IdPããŒãžã§ã³5ããã§ã«ãªãªãŒã¹ãããŠãããŸããV5ãžã®ã¢ããããŒãã«é¢ããŠã¯ãã¡ããã芧ãã ãããâIdPv5ã¢ããããŒãã«é¢ããæ å ±
Shibboleth SPã®ã¢ããããŒãã«é¢ããŠã¯ãã¡ããã芧ãã ãããâSPv3ã¢ããããŒãã«é¢ããæ å ±
- 1 ããŒãžã§ã³å ±é
- 2 IdP 4.2.x ãã IdP 4.2.x ãžã¢ããããŒãããå Žåã®æ³šæç¹
- 3 IdP 4.1.x ãã IdP 4.2.x ãžã¢ããããŒãããå Žåã®æ³šæç¹
- 4 IdP 4.1.x ãã IdP 4.1.x ãžã¢ããããŒãããå Žåã®æ³šæç¹
- 5 IdP 4.0.x ãã IdP 4.1.x ãžã¢ããããŒãããå Žåã®æ³šæç¹
- 6 IdP 3.x.x ãã IdP 4.x.x ãžã¢ããã°ã¬ãŒãããå Žåã®æ³šæç¹
â» 4.0.xãã4.2.xã«ã¢ããããŒããããããªå Žåãéäžã®ããŒãžã§ã³ã®æ³šæç¹ã«ãæå¹ãªãã®ããããŸãã®ã§ç¢ºèªããããã«ããŠãã ãã
ããŒãžã§ã³å ±é
ã¢ããããŒãã®æé
ã¢ããããŒãæã«ã¯èšå®ãã¡ã€ã«ã®å€æŽç¹ãæåã§åæ ãããªããã°ãªããªãå ŽåããããŸãã以äžã®æ³šæäºé ãã確èªãã ããã
/opt/shibboleth-idp/以äžã«ååšããªããã¡ã€ã«/ãã£ã¬ã¯ããªã¯ã¢ããããŒãæã«èªåçã«äœæãããŸãããã€ã³ã¹ããŒã«åŸä¿®æ£ãããã¡ã€ã«ã®ã»ããä¿®æ£ããŠããªããã¡ã€ã«ãäžåäžæžãã¯ãããŸããã®ã§ãæ°ããŒãžã§ã³ã®å
容ãé©å®åæ ããŠãã ãããåèªã§ä¿®æ£ããŠããªããã¡ã€ã«ã¯dist/以äžã®ãã¡ã€ã«ã§äžæžããããåèªã§ä¿®æ£ãããã¡ã€ã«ã¯æ°ããŒãžã§ã³ã§ã®å€æŽç¹ãããŒãžãã圢ã«ãªããŸãã
åæ ããªãå Žåãæ§æ¥ã®æ©èœã¯å€ãããåäœããããšãä¿èšŒãããŸãããæ°ããŒãžã§ã³ä»¥éã®æ°æ©èœãïŒåºç€ãšãªãæ©èœãããã©ã«ãã§æå¹ãªå Žåã§ããæåã§æå¹åããå Žåã§ãããããïŒæ£ããåäœããããšãä¿èšŒãããŸããããã®ãããå°æ¥çãªæ°æ©èœå©çšãèŠæ®ããŠãã¢ããããŒãåŸã§ãããŸããŸããã®ã§ãªãã¹ãæ©ãåæ ããããã«ããŠãã ããã
edit-webapp/ ã«ã€ããŠã¯æ±ããç¹æ®ã§ããã®é äžã®ãã¡ã€ã«ã«ã€ããŠã¯ dist/webapp/ é äžã®å€æŽç¹ã«åŸã£ãп޿°ããŠãã ããããŸãã*.jarãªã© edit-webapp/ ã«å ã ååšããªããã¡ã€ã«ã¯åæ ããå¿ èŠããããŸãããåºæ¬çã«å·®åã®ãããã®ã®ã¿ edit-webapp/ ã«é 眮ãããŸããéã«ãdist/webapp/ é äžã®ãã¡ã€ã«ãšåäžå 容㮠edit-webapp/ ã®ãã¡ã€ã«ã«ã€ããŠã¯ãå°æ¥çãªæŽæ°ã«åããŠé 眮ããããã®ãšãªããŸããedit-webapp/ äžã®ãã¡ã€ã«ãåé€ããŠãåé¡ãªãåäœããŸãããå°æ¥ã®ã¢ããããŒãæã«åäœããªããªãåå ãšãªããŸãã®ã§ãåé€ããªããããæ³šæãã ãããdist/webapp/ äžã§åé€ããããã¡ã€ã«ã«ã€ããŠã¯ãä»ã®ãã¡ã€ã«ãæŽæ°ããåæã§å®å šã«åé€ã§ããŸãã
ç¹ã«ãedit-webapp/WEB-INF/web.xmlã¯é »ç¹ã«æŽæ°ãããŠããŸãã®ã§ãåœè©²ãã¡ã€ã«ãååšããå Žåã¯web.xmlã®å€é·ãåç
§ã®äžå¿
èŠãªå€æŽãåæ ããŠãã ãããïŒdist/ã®ã»ãã¯Â dist/webapp/WEB-INF/web.xml ã«ããã倿ŽäžèŠã®å Žåã¯edit-webapp/以äžã«ã¯ååšããŸãããååšããŠããªãå Žåã¯å¯Ÿå¿äžèŠã§ãããã ãJettyã䜿ã£ãŠããå Žåã¯æè¡ã¬ã€ãã§å€æŽããããæ¡å
ããŠãããååšããŸããããªãã¡ã€ã³ã¹ããŒã«åŸããã®å€æŽãé©å®åæ ããå¿
èŠããããŸããïŒ
uApproveJPãã€ã³ã¹ããŒã«ããŠããå Žåã¯system/以äžã®ä¿®æ£ãå
ã«æ»ã£ãŠããŸãã®ã§ãã¢ããããŒãåã«å±éãããã£ã¬ã¯ããªã®åœè©²ãã¡ã€ã«ãä¿®æ£ããäžã§ã¢ããããŒããè¡ãã®ããå§ãã§ããsystem/以äžã®ä¿®æ£ç®æãããã圢åŒã«ãããã®ã眮ããŠãããŸãã®ã§ãå±éãããã£ã¬ã¯ããªã«ãŠé©çšããŠãã ããã
$ patch -p0 < .../uapprovejp3-system.patchãã ãã4.1.0以éã§ã¯ãã¡ã€ã«ãã©ã€ãã©ãªã®äžã«å ¥ã£ãŠãããŸããäžèšã®æé ã§å±éãããã£ã¬ã¯ããªã® webapp/WEB-INF/lib/idp-conf-impl-4.1.x.jarã®äžã«ããåœè©²èšå®ãã¡ã€ã«ãæŽæ°ããŠJARãã¡ã€ã«ãäžæžãããŠãã ããã
ãŸãããã©ã°ã€ã³ã䜿çšããŠããå Žåã«ã¯ãã¡ãã®ææ°çã確èªããããã°ãã¡ããå ã«ã¢ããããŒãããŠãã ããã
shibboleth-identity-provider-4.x.x.tar.gzããã±ãŒãžãå±éããŠãã®ãã£ã¬ã¯ããªã«ç§»åããŸãã
# tar zxvf shibboleth-identity-provider-4.?.?.tar.gz# cd shibboleth-identity-provider-4.?.?
é åžç©ã®èšå®ãã¡ã€ã«ã«ã€ããŠæ§ããŒãžã§ã³ããã®å€æŽç¹ã確èªãã/opt/shibboleth-idp/ ã«æ¢ã«ååšãããã¡ã€ã«ã«ã€ããŠé©å®å€æŽç¹ãåæ ããŠãã ããããããã¯ãåºåãä»»æã®ãã¡ã€ã«ã«ä¿åããŠãããåŸæ¥å€æŽç¹ãåæ ããŠãã ããã
#
diff -rb -x LICENSE.txt -x bin -x credentials -x doc -x idp_ant\\.log
-x logs -x metadata -x system /opt/shibboleth-idp/dist/ .
4.1以éã¢ãžã¥ãŒã«åãããäžéšã®èšå®ãã¡ã€ã«ã¯ãã®ã³ãã³ãã§ã¯å€æŽç¹ãåºåãããŸãããåŸè¿°ã®ããã«ã¢ããããŒãåŸã*.idpnewãããã¯*.idpsaveãšãããã¡ã€ã«åã®ãã¡ã€ã«ããå·®åã確èªããŠãã ããã
Jettyã忢åŸãã€ã³ã¹ããŒã«ã¹ã¯ãªãããå®è¡ããããšã§ã¢ããããŒããè¡ããŸãã
# systemctl stop jetty# bin/install.sh -Didp.conf.credentials.filemode=640 -Didp.conf.credentials.group=jetty
Buildfile: /root/shibboleth-identity-provider-4.1.2/bin/build.xmlinstall:Source (Distribution) Directory (press <enter> to accept default): [/root/shibboleth-identity-provider-4.1.2] ?[Enter]ãâå
¥åãªãInstallation Directory: [/opt/shibboleth-idp] ?[Enter]ãâå
¥åãªãINFO [net.shibboleth.idp.installer.V4Install:162] - Update from version 4.0.1 to version 4.1.2INFO [net.shibboleth.idp.installer.BuildWar:103] - Rebuilding /opt/shibboleth-idp/war/idp.war, Version 4.1.2INFO [net.shibboleth.idp.installer.BuildWar:113] - Initial populate from /opt/shibboleth-idp/dist/webapp to /opt/shibboleth-idp/webpapp.tmpINFO [net.shibboleth.idp.installer.BuildWar:92] - Overlay from /opt/shibboleth-idp/edit-webapp to /opt/shibboleth-idp/webpapp.tmpINFO [net.shibboleth.idp.installer.BuildWar:125] - Creating war file /opt/shibboleth-idp/war/idp.warBUILD SUCCESSFULTotal time: 8 seconds#Â
ã€ã³ã¹ããŒã«ã¹ã¯ãªãããæ£åžžã«çµäºãããJettyãèµ·åããŸãã
# systemctl start jetty
ã¢ããããŒãåŸã以äžã®ã³ãã³ãã§ããŒãžã§ã³ãæŽæ°ãããŠããããšã確èªããŠãã ããã
$ /opt/shibboleth-idp/bin/status.sh | grep idp_version idp_version: 4.1.2
ã¢ããããŒããå®äºããŸããããåŸæ¥ã§ãããŸããŸããã®ã§åçš®èšå®ãã¡ã€ã«ãææ°çã®æžåŒã«æŽæ°ããããšããæ€èšãã ããã
ã¢ãžã¥ãŒã«åãããŠããªãèšå®ãã¡ã€ã«ã«ã€ããŠã¯ãäžèšdiffã³ãã³ãã®åºåãå ã«å·®åãåæ ããŠããªãå Žåã¯ãåæ ããŠãã ããã
ã¢ãžã¥ãŒã«åãããèšå®ãã¡ã€ã«ã«ã€ããŠã¯ãæ«å°Ÿã« .idpnew ãä»ããã¡ã€ã«ãæ¢ããå ã®ãã¡ã€ã«ã®ã«ã¹ã¿ãã€ãºéšåã確èªããäžã§ *.idpnew ã®ãã¡ã€ã«ã§çœ®ãæããé©åã«ã«ã¹ã¿ãã€ãºéšåãåæ ãããŠãã ããã
æ«å°Ÿã« .idpsave ãä»ããã¡ã€ã«ã«ã€ããŠã¯ããã¡ã€ã«åãã .idpsave ãé€ãããã¡ã€ã«ïŒå ãã¡ã€ã«ïŒãååšããªãå Žåã¯åé€ã§ããŸãããã ãã«ã¹ã¿ãã€ãºã倱ãããŠããå¯èœæ§ããããŸãã®ã§åé€åã«ããå 容ãã確èªãã ãããå ãã¡ã€ã«ãååšããå Žåãåæ§ã§ãã
â» *.idpnewã¯ã¢ãžã¥ãŒã«åãããèšå®ãã¡ã€ã«ã«é¢ãããã®ããçæãããŸããã®ã§ãéã¢ãžã¥ãŒã«ã®èšå®ãã¡ã€ã«ã®å·®åã¯äžè¿°ã®åŸæ¥éãã®æ¹æ³ã§ dist/ é äžã®ãã®ãšã®å·®åãã確èªãã ããã
Â
IdP 4.2.x ãã IdP 4.2.x ãžã¢ããããŒãããå Žåã®æ³šæç¹
ãã®ããŒãžã§ã³ã«éã£ãããšã§ã¯ãããŸããããJettyèµ·åæã®ã¿ã€ã ã¢ãŠãã60ç§ã«èšå®ãããŠããããã§ãã®ã§ãç°å¢ã«ããèµ·åã«æéããããããã§ããã°èšå®å€æŽããæ€èšãã ãããäžèšã®äŸã¯èµ·åã¹ã¯ãªããã®ã¿ã€ã ã¢ãŠãã120ç§ãsystemdã®ã¿ã€ã ã¢ãŠãã150ç§ã«ããäŸã§ãã
/etc/sysconfig/jetty ã«ä»¥äžã®è¡ãæ¿å ¥ããŸãã
ïŒçç¥ïŒJETTY_RUN=/opt/jetty-base/tmpJETTY_STATE=/opt/jetty-base/tmp/jetty.stateJETTY_START_TIMEOUT=120
/etc/systemd/system/jetty.service ã«ä»¥äžã®è¡ãæ¿å ¥ããŸãã
ïŒçç¥ïŒUser=jettyGroup=jettyTimeoutStartSec=150[Install]
ïŒçç¥ïŒ
ãã¡ãããã®ããŒãžã§ã³ã«éã£ãããšã§ã¯ãããŸãããã2022幎6æ10æ¥ä»¥åã®åŠèªã®æè¡ã¬ã€ããåç
§ããŠæ§ç¯ããå ŽåããœãŒã¹IPã¢ãã¬ã¹ã®è©ç§°ã«ããæ
å ±æŒæŽ©ã®åé¡ãçºçããå ŽåããããŸãã該åœããå Žåã¯ä»¥äžã®ã¢ããŠã³ã¹ãåç
§ããŠèšå®ãä¿®æ£ããŠãã ããã
Back-Channelã®èšå®ãè¡ã£ãŠããå Žåã¯ãã¡ããåç
§ããŠèšå®ãä¿®æ£ããŠãã ãã:
https://www.gakunin.jp/ml-archives/upki-fed/msg01494.html
2021幎9æä»¥åã«æ§ç¯ãããã®ã®å ŽåïŒãã®å ŽåBack-Channelèšå®ã®æç¡ã«ãããŸããïŒã¯ãã¡ãããåç
§ãã ãã:
https://www.gakunin.jp/ml-archives/upki-fed/msg01425.html
å€ãJetty 10ã«ã¯é«è² è·æã®ã¡ã¢ãªãªãŒã¯ã®åé¡ãããããã§ãã®ã§ã該åœããå Žåã«ã¯10.0.11以éã䜿çšããããšããå§ãããŸããhttps://shibboleth.atlassian.net/browse/IDP-1969
logbackããã³SLF4Jã©ã€ãã©ãªã®åé¡ã§ãããJettyãããŒãžã§ã³ã¢ãããããš
java.security.PrivilegedActionException: java.lang.ClassNotFoundException: ch.qos.logback.access.jetty.RequestLogImplã®ãšã©ãŒã§èµ·åããªããªãå ŽåããããŸããJettyãèŠæ±ããããŒãžã§ã³ã®logback/slf4jåã©ã€ãã©ãªãé
眮ãããŠããªãããšã«ããåé¡ã§ãããShibbolethéçºå
ã§ã¯åã©ã€ãã©ãªã®ããŒãžã§ã³æå®ãäžæžããããšãã察åŠããšã£ãŠããããã§ããããŸãã®ã§ããã§ããã¡ãã®æ¹æ³ã§æ¡å
ããŸãã
ãŸãåæãšããŠãJettyã¯å梱ããŠããªãã©ã€ãã©ãªã«å¯ŸããŠãããŒãžã§ã³æå®ãããŠãããã®ãããããã¡ãã§ã©ã€ãã©ãªãçšæããŠããŠãæå®ãããããŒãžã§ã³ã®ãã®ã§ãªããã°äœ¿çšãããŸããã
/opt/jetty-base/ã§æäŸããŠããããŒãžã§ã³ã®ã©ã€ãã©ãªã®äœ¿çšã匷å¶ããããã«ã/opt/jetty-base/start.d/idp-logging.ini ã®æ«å°Ÿã«ä»¥äžã®ãããªèšè¿°ã远å ããŸãã以äžã¯jetty-baseã®9.4.1-20211028çã®äŸã§ããã/opt/jetty-base/lib/{logback,slf4j}/ 以äžã«é
眮ãããŠããå®éã®ã©ã€ãã©ãªã®ããŒãžã§ã³ãèšè¿°ããŠãã ããã
@@ -6,3 +6,8 @@
# This seems to be needed in some cases to get early logging output.
-Dlogback.configurationFile=resources/logback.xml
+
+# Override logback version pinned in jetty-home/modules/logback-impl.mod
+logback.version=1.2.6
+# Override SLF4J version pinned in jetty-home/modules/slf4j-api.mod
+slf4j.version=1.7.32ã©ã®ããŒãžã§ã³ããæäŸãããæ©èœãäžæã§ãããã¢ã«ãŠã³ãããã¯ã¢ãŠãæ©èœãæäŸããAPIã«ã¢ã¯ã»ã¹ã§ããããã«ããã«ã¯beanã®ç§»åãå¿
èŠã§ããïŒã¢ã«ãŠã³ãããã¯ã¢ãŠããæå¹åããã ãã§APIã¯äžèŠã®å Žåã¯ç§»åã¯äžèŠãšæãããŸãïŒ
ç§»åãå¿
èŠãªå Žåã¯ãconf/authn/password-authn-config.xml ã«å®çŸ©ãããŠãã id="shibboleth.authn.Password.AccountLockoutManager" ã®beanã conf/global.xml ã«ç§»åãããŠãã ããã
詳现: https://shibboleth.atlassian.net/wiki/spaces/IDP4/pages/1294074654/AccountLockoutManagement
ãã®ããŒãžã§ã³ã«éã£ãããšã§ã¯ãããŸãããã以åã®3.xããéçšããŠããŠ4.xã«ããŒãžã§ã³ã¢ããããå Žåãsecrets.propertiesãã¡ã€ã«ãååšããªãç¶æ
ãšãªããŸããèµ·åããšã«warningãåºãŸããåäœã«æ¯éã¯ãããŸãããããV4ã®æ°æžåŒãžç§»è¡ãsecrets.propertiesãã¡ã€ã«ã®å©çšãåžæããå Žåã¯ä»¥äžã®ããŒãžããåç
§ãã ããã
âcredentials/secrets.propertiesã®çæ
IdP 4.1.x ãã IdP 4.2.x ãžã¢ããããŒãããå Žåã®æ³šæç¹
4.1.xããã³ãã以åã®Attribute-Based Subject C14Næ©èœã«ãããŠãå®è£ ãã¹ã«ããePPNçã®ã¹ã³ãŒããåãé€ãããŠããããšã®æ³šæåèµ·ãè¡ãããŠãããŸããå€ãã®éçšã«ã¯åœ±é¿ãäžããªããšæãããŸãããåœè©²æ©èœãå©çšããŠããå Žåãã€ãã®å®è£ ãã¹ã«äŸåããŠããå Žåã¯4.2以éãžã®ã¢ããããŒãã«ãã£ãŠæãã¬æå倿Žã«ééããå¯èœæ§ããããŸãã®ã§ãäžèšå¯ŸåŠãè¡ã£ãŠãã ããã以äžãªãªãŒã¹ããŒãããïŒ
For example, an eduPersonPrincipalName of âfoo@example.orgâ would be returned as âfooâ. This was easily fixed, but MAY impact existing behavior if the âbrokenâ behavior were relied on. This can be remedied by adjusting the configuration to transform the scoped value back into an unscoped one but is something that could alter behavior following an upgrade until itâs addressed.
4.1ãŸã§ã«ä»¥äžã®IdPãã©ã°ã€ã³ããå©çšã®å Žåã¯ã4.2以éã§ã¯å€ãããŒãžã§ã³ã®ãã©ã°ã€ã³ã¯åäœããŸããã®ã§ãç¶ç¶ããŠãå©çšã®å Žåã¯èšèŒã®ããŒãžã§ã³ãžã®ã¢ããããŒããå¿ èŠã§ãã
OIDC OP: 3.1.1
DuoOIDC: 1.2.0
OIDC Commons: 2.0.0
TOTP: 1.0.1
4.1ã®ããããã£èªã¿èŸŒã¿åŠçïŒä»¥åãç¥ãããããšãã4.1ããããããã£ãè€æ°ã®ãã¡ã€ã«ã«åå²èšè¿°ãããconf/以äžã®ãã¹ãŠã®ãã¡ã€ã«ãèªã¿èŸŒã¿å¯Ÿè±¡ãšãªãããšãæåŸ ãããŸãïŒã¯ãidp.properties ãšååã®ãã¡ã€ã«ãã¹ããããããšãããã°ããããŸããã4.2以éã¯ãã®ãããªããšã¯ãªããã¹ãŠã®ãã¡ã€ã«ãèªã¿èŸŒãŸããŸãã®ã§ãããã¯ã¢ãããã¡ã€ã«ãååã§conf/å ã«ä¿åããŠãããããªå Žåã«åœ±é¿ãåãããšæãããŸããããã¯ã¢ãããã¡ã€ã«ãªã©èªã¿èŸŒãŸããã¹ãã§ãªããã¡ã€ã«ã¯conf/å€ã«éé¿ããããæ¡åŒµåã倿ŽããŠãã ããã
äžèšã«é¢é£ããŠã4.2以éã§ã¯åãããŒã®ããããã£ãè€æ°å®£èšãããŠããå Žåã«èŠåããã°ã«åºåããããã«ãªããŸããããããæŽ»çšããŠ4.1ä»¥éæšæºãšãªã£ãããããã£ã«ããåçš®èšå®ã«åé¡ããªãããšãã確èªãã ããã
4.2ã§ã®ãã®ä»ã®ç¹çãã¹ã倿Žç¹ãªãã³ã«æ°æ©èœã¯ä»¥äžã®ãšããã§ãïŒ
inbound SAML profile interceptor flowsé¢é£ã®äºææ§ã«åœ±é¿ããä¿®æ£
ãã°ã¢ãŠãã®æå倿Žãªãã·ã§ã³
ãã°ã€ã³ç»é¢ã®å€æŽïŒæ°èŠã€ã³ã¹ããŒã«æã®ã¿ïŒ
詳现ã¯ãªãªãŒã¹ããŒãåæããã³éçºè ããã®æäŸãç¥ããããåç §ãã ããã
é ããŠã®æ å ±æäŸã§ãããã¢ãµãŒã·ã§ã³å ã®å±æ§ã®æ ŒçŽæ¹æ³ãæ£èŠåãããŸããããããŸã§åäžå±æ§ã®è€æ°å±æ§å€ã«ã€ããŠã°ãã°ãã«æ ŒçŽãããå ŽåããããŸãããã4.2.0以éåäžXMLèŠçŽ å ã«èšèŒãããŸããããã«ãã圱é¿ã¯ãªãã¯ãã§ãããå®è£ ã«åé¡ã®ããSPã«ãã£ãŠã¯æåã«éããçºçããããšãèããããŸãã
IdP 4.1.x ãã IdP 4.1.x ãžã¢ããããŒãããå Žåã®æ³šæç¹
ãã®ããŒãžã§ã³ã«éã£ãããšã§ã¯ãããŸããããWindows MSI installerã䜿ã£ãŠããå Žåã¢ããããŒãæã«æå€§ã¡ã¢ãªèšå®ã倿Žããããšããæ
å ±ããããŸããWindowsãã䜿ãã®å Žåã¯ã¢ããããŒãåŸã«ãã§ãã¯ããããã«ããŠãã ããã
詳现: (Shibboleth Wiki) WindowsInstallation ã®"Always Check"
ãã¡ãããã®ããŒãžã§ã³ã«éã£ãããšã§ã¯ãããŸããããæè¡ã¬ã€ãã§ãæ¡å ããŠããããã«systemdã§Jettyã®èµ·åã忢ãè¡ã£ãŠããå Žåãããªãäœã確çã§èµ·åæã«ä»¥äžã®ãšã©ãŒãåºãŠèµ·åã§ããªãå Žåããããšããå ±åããããŸããïŒããã¯Jetty 9.4ã®åé¡ã§Jetty 10ã«ã¯ãã®åé¡ã¯ãããŸããïŒ
Job for jetty.service failed because the control process exited with error code. See "systemctl status jetty.service" and "journalctl -xe" for details.ãã°ã«ã¯ç¹ã«ãšã©ãŒçåºãèµ·åäžã«çªç¶åæ¢ããç¶æ
ã«ãªããŸãã
ãã®ããã«ãªããŸãããã/opt/java-base/tmp/jetty.state ãååšãããã©ãã確èªããååšããå Žåã¯äžæŠåé€ããŠããJettyã®èµ·åãã詊ããã ããã
é·æé皌åããŠãããšãããªã確çãå¢ããããã§ããããã«éããŸããã
æ¬åé¡ã¯Jetty忢æã«äžèšjetty.stateãåé€ãããªãããšãåå ã§ãäœæ
åé€ãããªããã¯äžæãªããã/etc/init.d/jettyã«ä»¥äžã®è¡ãå ããŠåé€ã®ã®ã¡ã«èµ·åããããã«ããã°æ¬åé¡ã¯åé¿ã§ããŸãã
@@ -447,6 +447,7 @@
##################################################
case "$ACTION" in
start)
+ rm -f $JETTY_STATE
echo -n "Starting Jetty: "
if (( NO_START )); thenIdP 4.0.x ãã IdP 4.1.x ãžã¢ããããŒãããå Žåã®æ³šæç¹
/opt/shibboleth-idp/system/ãã£ã¬ã¯ããªããå€ãã®ãã¡ã€ã«ãåé€ãããŸããã
3.1ããã³ãã以åã®é
åžç©ã®web.xmlã edit-webapp/WEB-INF/ ã«é
眮ããŠããããã®åŸã®å¿
èŠãªæŽæ°ãè¡ã£ãŠããªãå Žåã«ã¯system/以äžãžã®åç
§ãå«ãŸããŠãããããšã©ãŒã«ãªããšããæ
å ±ããããŸããå
±éæé ã«ãå«ããŠãããŸããweb.xmlã®å€é·ãåç
§ãå¿
èŠãªå€æŽãåã蟌ãã§ãã ãããç¹ã« DeferPlaceholderFileSystemXmlWebApplicationContext ãšããæååãå«ãŸããå Žåã¯ãšã©ãŒã«ãªãå¯èœæ§ããããŸãã
ãŸããuApproveJPã®ã€ã³ã¹ããŒã«ã»ã¢ããããŒãæ¹æ³ã«å€æŽãçããŠãããŸãã詳ããã¯äžèšå ±éæé ã®æ³šææžãããåç §ãã ããã
4.1ããã¢ãžã¥ãŒã«ããã³ãã©ã°ã€ã³ã®æ©èœãå°å ¥ãããŠãããŸãã以åã®ããŒãžã§ã³ããã¢ããããŒãããå Žåã¯èªåçã«æå¹åçãããããåé¡ãããŸãããã4.1.xããã³ãã以éãæ°èŠã€ã³ã¹ããŒã«ããå Žåãã¢ãžã¥ãŒã«ãæå¹åããªããšäœ¿ããªãæ©èœãããããŸãã®ã§ã泚æãã ãããçŸåšæå¹åãããŠããã¢ãžã¥ãŒã«ã¯ä»¥äžã®ã³ãã³ãã§ç¢ºèªã§ããŸãïŒ
# /opt/shibboleth-idp/bin/module.sh -lã¢ãžã¥ãŒã«ã®äŸ: 屿§éä¿¡åæç»é¢ã®èšå®(IdPv4)
4.1ããã¯idp.propertiesã®èšè¿°ãå¥ã®è€æ°ã®ãã¡ã€ã«ã«åå²èšè¿°ãããããã«ãªããŸããïŒäŸ: authn/authn.propertiesïŒããã ã4.0.x以åããã®ã¢ããããŒãã®å Žåã¯ãããã®èšè¿°ã¯é©åã«ç¡èŠãããŸãã4.1æµã«ããããã£ã忣èšè¿°ããå Žåã¯ãidp.propertiesã«ããéè€ãæé€ããäžã§idp.searchForPropertiesãtrueã«èšå®ããŠãã ããã詳ãã㯠dist/conf/idp.properties ã®åé ã®ã³ã¡ã³ããåç
§ããŠãã ããã
4.1ã®æžåŒã«æžãæããäŸ: https://shibboleth.atlassian.net/wiki/spaces/KB/pages/1469908146/Example+4.1+Upgrade
4.1ããæ°ãã«ããããã£ã§æå®ã§ããããã«ãªã£ãèšå®ã倿°ãããŸãããå€ãèšå®ãã¡ã€ã«ãéªéãããŠããããã£ã§æå®ããŠãé©åã«åæ ãããªãå ŽåããããŸããé©åã«ããããã£ã®å€ãåæ ããããå Žåã¯ãã¢ããããŒãæé ã«ããããã«èšå®ãã¡ã€ã«ã®æŽæ°ãé©åã«åæ ãããŠãã ããã
4.0.1ãŸã§ã«ã¯å±æ§å€ããã·ã¥èšç®ã®åé¡ã§å±æ§å€ãè€æ°ããå Žå倿ŽãããŠããªãã®ã«ååæãæ±ããåé¡ïŒidp.consent.compareValues=trueã®å Žåã®åé¡ïŒãããããã§ããæ¬éçšç°å¢ãç§»è¡ããå Žåã«ã¯ã泚æãã ããã4.1.0ã§ä¿®æ£ãããŸããã
https://issues.shibboleth.net/jira/browse/IDP-1660
LDAPã䜿ã£ã屿§ååŸã®äŸã conf/examples/ ã®äžã«ç§»åããŸãããïŒconf/examples/attribute-resolver-ldap.xmlïŒ
4.1以éã§ã¯ conf/session-manager.xml ãã¡ã€ã«ã¯äžèŠã«ãªããŸãããããåœè©²ãã¡ã€ã«ã® shibboleth.ClientStorageServices beanãã«ã¹ã¿ãã€ãºããŠäœ¿ã£ãŠããå Žåã¯ãåœè©²beanã conf/global.xml ã«ç§»ããã®ã¡ãconf/session-manager.xml ãåé€ããŠãã ããã
IdP 3.x.x ãã IdP 4.x.x ãžã¢ããã°ã¬ãŒãããå Žåã®æ³šæç¹
äžèšããŒãžã®éãããŒãžã§ã³4.0.0ã2020-03-11ã«ãªãªãŒã¹ãããŸãããäžèšã®æ³šæäºé
ããã³æé ãã確èªã®äžãããŒãžã§ã³ã¢ãããè¡ã£ãŠãã ããã
https://wiki.shibboleth.net/confluence/display/NEWS/2020/03/11/Shibboleth+Identity+Provider+V4.0.0+Released
ãªããããŒãžã§ã³3ã®EoLã¯2020幎æ«ã§ããæªã ããŒãžã§ã³3ãéçšããŠããæ©é¢æ§ã«ããããŸããŠã¯è³æ¥V4ãžã®ããŒãžã§ã³ã¢ããã®ã¹ã±ãžã¥ãŒãªã³ã°ããé¡ãããŸãã
http://shibboleth.net/pipermail/announce/2020-March/000213.html
åŠèªãæäŸããŠããæè¡ã¬ã€ããé æ¬¡æŽæ°ããŠãããŸããuApproveJPã¯ããŒãžã§ã³4察å¿çãå ¬éäžã§ããTiqrShibçã®NIIãæäŸããŠããIdPãã©ã°ã€ã³ã¯çŸåšããŒãžã§ã³4察å¿çã®å ¬éæºåäžã§ãã
ãŸããã¢ããããŒãæã®ããŠããŠãªã©æ å ±ããæã¡ã®æ¹ãããã£ããããŸããããæ å ±äº€æMLçã§å ±æããã ããŸããã幞ãã§ãã
Javaã®ããŒãžã§ã³
Java 11以äžãå¿ é ã§ãã
å ¬åŒãµããŒãã¯Javaã®LTSã®ã¿ãªã®ã§ã2020幎9æçŸåšã§ã¯ Java 11 ã®ã¿ãšãªããŸãã
Javaã³ã³ãã
èšå®ãã¡ã€ã«ã®ç§»è¡ã«ã€ããŠ
åå空éã®ãã©ããåã匷å¶ããããã¬ãã£ãã¯ã¹ããã®ïŒv2ç±æ¥ã®åå空éã䜿çšããïŒèšå®ãã¡ã€ã«ã䜿çšã§ããªããªããŸã
IdP v3.4ã§ã¯ãã©ããåããŠããªãå ŽåãDEPRECATEDã®warningãšããŠãã°ã«åºåãããŸã
3.4.0以éã现ããæ¹åãç¶ããããŠããŸãã®ã§ãv3.4ç³»ã®ææ°çã§ç¢ºèªããŠãã ãã
éçã«è§£æããŠãããã®ãšåçã«è§£æããŠãããã®ãããã3.4ç³»ã®ææ°çã§ãã°ããåãããŠäžéãèªèšŒãããŒã®åäœç¢ºèªãè¡ã£ãŠã¿ãããšãå¿ èŠã§ã
ãã©ããåã®å¯Ÿå¿æé ã¯ãã¡ã
âhttps://meatwiki.nii.ac.jp/confluence/x/F4Z7AQ
ãã®ä»ã«ããDEPRECATEDã®warningãšãªã察象ãè€æ°ãããŸã
圱é¿ã®å€§ãããã®ãšããŠã<Dependency>èŠçŽ ã¯DEPRECATEDã§ã
å 容ã«ãã£ãŠ<InputAttributeDefinition>ãããã¯<InputDataConnector>ã§çœ®ãæããŠãã ãããäŸãã°
<resolver:Dependency ref="myLDAP" />ã¯ïŒmyLDAPãDataConnectorãšããŠå®çŸ©ãããŠãããšä»®å®ããŠïŒä»¥äžã§çœ®ãæããŸããattributeNamesã«ã¯äœ¿çšãã屿§åãïŒè€æ°ããå Žåã¯ã¹ããŒã¹åºåãã§ïŒåæããŠãã ãã:
<InputDataConnector ref="myLDAP" attributeNames="..." />ãŸãã
<resolver:Dependency ref="eduPersonAffiliation" />ã¯ïŒeduPersonAffiliationãAttributeDefinitionã§å®çŸ©ãããŠãããšä»®å®ããŠïŒä»¥äžã§çœ®ãæããŸã:
<InputAttributeDefinition ref="eduPersonAffiliation" />
LegacyPrincipalConnector以äžã®warningãåºãå Žåã¯WARN [DEPRECATED:118] - Spring bean 'c14n/LegacyPrincipalConnector', (c14n/subject-c14n.xml): This will be removed in the next major version of this software; replacement is <remove>conf/c14n/subject-c14n.xml ã®ä»¥äžã®éšåãåé€ããŠãã ããã
<!-- This is installed to support the old mechanism of using PrincipalConnectors in the attribute resolver to map SAML Subjects back into principals. If you don't use those (or this is a new install) you can remove this. --> <ref bean="c14n/LegacyPrincipalConnector" />ãã©ããåãžã®å¯Ÿå¿ã«ãã<PrincipalConnector>ã¯åé€ãããŠããã¯ãã§ãã®ã§ãåœè©²éšåãåé€ããŠãåé¡ãããŸããã
詳现ã¯Shibbolethã®æ¬å®¶ã®æ å ±ãåç §ããŠãã ããã
倿Žã®ããèŠçŽ ãžã®çœ®ãæãæ¹æ³ãžã®ãªã³ã¯ãå«ããŠèšèŒãããŠããŸã
Shibboleth IdP V4ãžã®æºåãšããŠãV3.4ç³»ææ°çïŒ3.4.8ïŒã«ãŠwarningãåºãªããªããŸã§èšå®ãã¡ã€ã«ãä¿®æ£ããããšãæšå¥šããŸã
ãã§ã«ãã©ããåãšDEPRECATEDå¯Ÿå¿æžã¿ã®åŠèªãã³ãã¬ãŒããé åžäžã§ãã®ã§ãã¡ããåèã«ããŠããã ããŸãããã ãææ°çattribute-resolver.xmlãã³ãã¬ãŒãã«ã¯V4åãã®Attribute Registry察å¿ãå ¥ã£ãŠãããŸãã®ã§ãæ¬ããŒãžïŒV3ããã®ã¢ããã°ã¬ãŒãïŒã®æèã§ã¯åèã«ããªãã§ãã ãããå ·äœçã«èšããšã
<AttributeEncoder>ã®è¡ã¯æ¶ããªãã§ãã ããããããŸã§ãã©ããåãšDEPRECATEDãªèŠçŽ ã»å±æ§ã®çœ®ãæãã®åèãšããŠåç §ããŠãã ãããLDAPåšãã§ã䜿çšããã©ã€ãã©ãªãJNDIããUnboundIDã«å€æŽã«ãªãããšã«ãã以äžã®éãèšå®ã«ãã£ãŠã¯V4ãžã®ç§»è¡åŸã«ãšã©ãŒã«ãªãå¯èœæ§ãè¥å¹²ããããŸãã
LDAPã®URLïŒldap.propertiesã®
idp.authn.LDAP.ldapURLïŒãã¹ã©ãã·ã¥(/)ã§çµããå Žåã¯ããŸãåäœããŸããã®ã§ã¹ã©ãã·ã¥ãé€å»ããŠãã ãããæ€çŽ¢ãã£ã«ã¿ïŒldap.propertiesã®
idp.attribute.resolver.LDAP.searchFilterïŒã«ç©ºçœãå«ãŸãããšActive Directoryçãšã®é£æºã«åé¡ãçºçããå ŽåãããããŸãã®ã§ã空çœãé€å»ããŠãã ãããLDAPConnectorãããã¯JAASAuthnConfigurationã«ãŠJNDIç¹æã®ããããã£ã䜿ã£ãŠããå Žååé¡ãçºçããŸããããããã£åã«"jndi"ãå«ããã®ãããã¯äžèš"binary"ã«ã泚æãã ããã代æ¿ã®ãã®ã«çœ®ãæããŠãã ããã
ç¹ã«ãã€ããªå±æ§ïŒobjectGUIDçïŒã«ã€ããŠã¯3.4.5ããLDAPConnectorã«ãŠ
<BinaryAttributes>èŠçŽ ããµããŒããããŠãããŸãã®ã§ããã§ä»£æ¿ããŠãã ãããããããã£åã¯"java.naming.ldap.attributes.binary"ãšãªã£ãŠãããŸããJNDIç¹æã®ããããã£ãšã¯ãäŸãã°ãattribute-resolver.xmlã®<DataConnector>ã«ä»¥äžã®ãããªæå®ãããå Žå該åœããŸãã
<LDAPProperty name="com.sun.jndi.ldap.connect.timeout" value="500"/>ãã®ä»ãIdPã®ãã£ã¬ã¯ããªã®äžãJavaã®ãã£ã¬ã¯ããªã®äžã«
jndi.propertiesãšãããã¡ã€ã«ãååšããã®äžã§æå®ããŠãããšããå Žåãããããã§ãã®ã§ã泚æãã ããã
äžèšåé¡ã®å¯Ÿè±¡ã®å Žåã¯ãV3.4ç³»ææ°çã§ä»¥äžã«èšèŒãããŠããæé ã§UnboundIDã䜿ãããã«ããŠåäœç¢ºèªããããšãæšå¥šããŸã
V3.4.4以éã§ä»¥äžã®è¡ãldap.propertiesã«è¿œå ããã°JNDIã§ãªãUnboundIDã䜿ãããã«ãªããŸãã
idp.ldaptive.provider=org.ldaptive.provider.unboundid.UnboundIDProviderV3ç³»ã§UnboundIDã䜿ãããŠããããšã®ç¢ºèªã¯ãidp.propertiesã«
idp.loglevel.ldap=INFOã远å ããŠãã°ã¬ãã«ã倿Žã®äžåèµ·åããäžèšã®ããã«"Setting ldap provider to"ã UnboundIDProvider ã«ãªã£ãŠããããšã確èªããŠãã ããã
2020-03-02 09:46:50,446 - - INFO [org.ldaptive.DefaultConnectionFactory:192] - Setting ldap provider to org.ldaptive.provider.unboundid.UnboundIDProvider 2020-03-02 09:46:50,453 - - INFO [org.ldaptive.DefaultConnectionFactory:192] - Setting ldap provider to org.ldaptive.provider.unboundid.UnboundIDProvider 2020-03-02 09:46:50,453 - - INFO [org.ldaptive.DefaultConnectionFactory:192] - Setting ldap provider to org.ldaptive.provider.unboundid.UnboundIDProvider確èªåŸãidp.propertiesã«è¿œå ããè¡ãåé€ããŠãã°ã¬ãã«ãå ã«æ»ããŠãã ããã
詳现ã¯ãã¡ã: LDAPonJava (v4) ããã³ LDAPonJava>8 (v3)
Â