XUSAML ;ISD/HGW - Kernel SAML Token Implementation ; Apr 18, 2022@15:39
Source file <XUSAML.m>
action | A | extended action | Ea | event driver | Ed | subscriber | Su | protocol | O | limited protocol | LP | run routine | RR | broker | B | edit | E | server | Se | P | screenman | SM | inquire | I |
Name | Comments | DBIA/ICR reference |
---|---|---|
EN(DOC) | ;Function. Main entry point
|
|
ND(HDL,ND,FS,XUPN,XASSRT) | ;SR. Traverse tree
|
|
SH(HDL,ND,XUPN,XASSRT) | ;SR. Process node elements
|
|
CH(HDL,ND,XUPN) | ;SR. Process text node
|
|
EL(HDL,ND,NM,XUPN) | ;SR. Process element
|
|
FINDUSER(XUERR) | ;Function. Identify user
|
|
VALASSRT(XASSRT,DOC,XUERR) | ;Intrinsic Subroutine. Validate SAML assertion
|
|
IDPASS(XUA) | ;Intrinsic Function. Extract Application ID
|
|
CONVTIME(TIME) | ;Intrinsic Function. Convert XML time to FileMan format
|
|
WARNINGS(XUERR) | ;
|
|
TOKVALID(DUZ,XUERR) | ;
|
|
LOGFAIL(IEN,DUZ) | ; Record failed access
|
|
MPISSN(XATR) | ; Return SSN found in MPI
|
Name | Field # of Occurrence |
---|---|
^%DT | CONVTIME+9 |
$$ATTRIB^MXMLDOM | SH+35, EL+2 |
$$CHILD^MXMLDOM | ND+4, SH+31 |
$$EN^MXMLDOM | EN+14 |
$$NAME^MXMLDOM | SH+3 |
$$SIBLING^MXMLDOM | ND+8 |
$$TEXT^MXMLDOM | SH+32 |
$$VALUE^MXMLDOM | SH+37, EL+3 |
DELETE^MXMLDOM | EN+21 |
TEXT^MXMLDOM | CH+4 |
$$DT^XLFDT | IDPASS+3 |
$$FMADD^XLFDT | IDPASS+4, CONVTIME+11 |
$$NOW^XLFDT | VALASSRT+16 |
$$TZ^XLFDT | CONVTIME+11 |
$$LOW^XLFSTR | FINDUSER+9, FINDUSER+28, FINDUSER+29, FINDUSER+33, VALASSRT+5 |
$$TITLE^XLFSTR | FINDUSER+8 |
$$TRIM^XLFSTR | FINDUSER+33, FINDUSER+34, FINDUSER+35, FINDUSER+36, FINDUSER+37 |
VALIDATE^XUCERT | VALASSRT+31 |
$$ADDUSER^XUESSO2 | FINDUSER+51, FINDUSER+65, FINDUSER+83 |
$$AUTH^XUESSO2 | FINDUSER+3 |
$$FINDUSER^XUESSO2 | FINDUSER+44, FINDUSER+46, FINDUSER+60, FINDUSER+62, FINDUSER+75, FINDUSER+78, FINDUSER+80 |
$$GETCNTXT^XUESSO2 | FINDUSER+15 |
USER^XUIAMXML | MPISSN+8 |
FILE^XUSTZ | LOGFAIL+12 |
Name | Line Occurrences (* Changed, ! Killed) |
---|---|
^TMP("XUSAML" | EN+9!, EN+27!, SH+11, SH+12, SH+17, SH+18, SH+23, SH+27, SH+38*, CH+7* , CH+9*, EL+5*, EL+7*, FINDUSER+8, FINDUSER+9, FINDUSER+10, FINDUSER+11, FINDUSER+21, FINDUSER+22, FINDUSER+23 , FINDUSER+25, FINDUSER+26, FINDUSER+28, FINDUSER+29, FINDUSER+30, FINDUSER+31, VALASSRT+3, VALASSRT+4, VALASSRT+5, VALASSRT+9 |
^VA(200 - [#200] | FINDUSER+43, FINDUSER+47, FINDUSER+52, FINDUSER+59, FINDUSER+66, FINDUSER+74, FINDUSER+84, LOGFAIL+8 |
^XTMP("XUSAMLAPPID" | IDPASS+6*, IDPASS+7* |
^XTV(8989.3 - [#8989.3] | FINDUSER+39, FINDUSER+54, FINDUSER+68, VALASSRT+33 |
^XWB(8994.5 - [#8994.5] | FINDUSER+17, FINDUSER+18 |
Name | Line Occurrences |
---|---|
$$CONVTIME | VALASSRT+17, VALASSRT+19, VALASSRT+21 |
$$FINDUSER | EN+20 |
$$IDPASS | FINDUSER+13 |
$$MPISSN | FINDUSER+45, FINDUSER+61, FINDUSER+79 |
$$TOKVALID | EN+23, FINDUSER+50, FINDUSER+64, FINDUSER+82 |
$$WARNINGS | EN+22 |
CH | SH+26 |
EL | SH+10, SH+16, SH+22 |
LOGFAIL | EN+23 |
ND | EN+17, ND+5, ND+8 |
SH | ND+2 |
VALASSRT | EN+19 |
Name | Field # of Occurrence |
---|---|
^(1.1 | LOGFAIL+8* |
>> | Not killed explicitly |
* | Changed |
! | Killed |
~ | Newed |
Name | Field # of Occurrence |
---|---|
>> %DT | CONVTIME+8* |
>> %DT(0 | CONVTIME+12! |
CH | ND+1~, ND+3*, ND+4*, ND+5 |
>> DILOCKTM | FINDUSER+43, FINDUSER+59, FINDUSER+74 |
DOC | EN~, EN+14, EN+19, VALASSRT~, VALASSRT+31 |
DUZ | EN+23, FINDUSER+50, FINDUSER+64, FINDUSER+82, TOKVALID~, LOGFAIL~ |
DUZ("AUTHENTICATION" | FINDUSER+41*, FINDUSER+58*, FINDUSER+73*, TOKVALID+5, LOGFAIL+9 |
DUZ("LOA" | VALASSRT+11* |
DUZ("MVIICN" | FINDUSER+31* |
DUZ("REMAPP" | FINDUSER+6*, FINDUSER+17*, FINDUSER+57, FINDUSER+69 |
DUZ("WARNINGS" | EN+22*, LOGFAIL+4 |
ELE | SH+2~, SH+3*, SH+5, SH+9, SH+15, SH+21, SH+24, SH+30 |
FS | ND~, ND+6 |
HDL | EN+8~, EN+14*, EN+16, EN+17, EN+21, ND~, ND+2, ND+4, ND+5, ND+8 , SH~, SH+3, SH+10, SH+16, SH+22, SH+26, SH+31, SH+32, SH+35, SH+37 , CH~, CH+4, EL~, EL+2, EL+3 |
I | SH+2~, SH+33*, CH+1~, CH+5* |
IEN | LOGFAIL~, LOGFAIL+5, LOGFAIL+6, LOGFAIL+7*, LOGFAIL+8 |
ND | ND~, ND+2, ND+4, ND+7, SH~, SH+3, SH+10, SH+16, SH+22, SH+26 , SH+31, SH+35, SH+37, CH~, CH+4, EL~, EL+2, EL+3 |
NM | SH+2~, SH+10, SH+16, SH+22, SH+34*, SH+35*, SH+36, SH+37, SH+38, EL~ , EL+1*, EL+2*, EL+3 |
RETURN | IDPASS+1~, IDPASS+2*, IDPASS+5, IDPASS+7, IDPASS+9 |
SIB | ND+1~, ND+7*, ND+8* |
SSN | MPISSN+1~, MPISSN+2*, MPISSN+6, MPISSN+8*, MPISSN+9 |
STRICT | TOKVALID+1~, TOKVALID+3*, TOKVALID+4, LOGFAIL+1~, LOGFAIL+2*, LOGFAIL+3 |
TIME | CONVTIME~, CONVTIME+3, CONVTIME+4, CONVTIME+6 |
TX | ND+1~ |
U | FINDUSER+17, FINDUSER+18, FINDUSER+39, FINDUSER+54, FINDUSER+68, FINDUSER+88, VALASSRT+33, TOKVALID+3, LOGFAIL+2, LOGFAIL+5 , LOGFAIL+6, LOGFAIL+8 |
V | SH+2~ |
VISTAID | FINDUSER+2~ |
VV | SH+2~, SH+32, CH+1~, CH+4, CH+5 |
VV( | SH+33, CH+5 |
WARN | LOGFAIL+1~, LOGFAIL+3*, LOGFAIL+4*, LOGFAIL+5*, LOGFAIL+6*, LOGFAIL+10 |
X | FINDUSER+2~, CONVTIME+2~, CONVTIME+8*, WARNINGS+1~, WARNINGS+2*, WARNINGS+3*, LOGFAIL+8* |
XARRY | FINDUSER+2~, FINDUSER+44, FINDUSER+45, FINDUSER+46, FINDUSER+51, FINDUSER+60, FINDUSER+61, FINDUSER+62, FINDUSER+65, FINDUSER+75 , FINDUSER+78, FINDUSER+79, FINDUSER+80, FINDUSER+83 |
XARRY(1 | FINDUSER+8*, FINDUSER+55 |
XARRY(10 | FINDUSER+25* |
XARRY(11 | FINDUSER+26*, FINDUSER+37*, FINDUSER+72 |
XARRY(2 | FINDUSER+9*, FINDUSER+55, FINDUSER+68 |
XARRY(3 | FINDUSER+10*, FINDUSER+33*, FINDUSER+40*, FINDUSER+56*, FINDUSER+70*, FINDUSER+71*, FINDUSER+72*, FINDUSER+74, FINDUSER+84 |
XARRY(4 | FINDUSER+11*, FINDUSER+12*, FINDUSER+88 |
XARRY(5 | FINDUSER+19*, FINDUSER+20*, FINDUSER+49, FINDUSER+63, FINDUSER+81 |
XARRY(6 | FINDUSER+21* |
XARRY(7 | FINDUSER+22*, FINDUSER+34*, FINDUSER+40, FINDUSER+43, FINDUSER+47, FINDUSER+52, FINDUSER+56, FINDUSER+59, FINDUSER+66, FINDUSER+88 |
XARRY(8 | FINDUSER+23*, FINDUSER+35*, FINDUSER+70, FINDUSER+77* |
XARRY(9 | FINDUSER+45*, FINDUSER+46, FINDUSER+61*, FINDUSER+62, FINDUSER+79*, FINDUSER+80 |
XASSRT | EN+8~, EN+10*, EN+17, EN+19, ND~, ND+2, ND+5, ND+8, SH~, VALASSRT~ |
XASSRT("Address" | SH+12* |
XASSRT("AuthnContextClassRef" | SH+27*, VALASSRT+28 |
XASSRT("AuthnInstant" | SH+23*, VALASSRT+17 |
XASSRT("NotBefore" | SH+17*, VALASSRT+19 |
XASSRT("NotOnOrAfter" | SH+18*, VALASSRT+21 |
XASSRT("Recipient" | SH+11*, FINDUSER+13 |
XASSRT("Subject" | SH+6* |
XATR | MPISSN~ |
XATR(10 | MPISSN+5 |
XATR(6 | MPISSN+4 |
XATR(7 | MPISSN+3 |
XAUTH | FINDUSER+2~, FINDUSER+28*, FINDUSER+39, FINDUSER+54, FINDUSER+69, VALASSRT+2~, VALASSRT+5* |
XC | FINDUSER+2~ |
XCHILD | SH+2~, SH+31*, SH+32 |
XCTXT | FINDUSER+2~, FINDUSER+18*, FINDUSER+19 |
XD | VALASSRT+2~, VALASSRT+9*, VALASSRT+10, VALASSRT+11, VALASSRT+17*, VALASSRT+19*, VALASSRT+21*, VALASSRT+26, CONVTIME+2~, CONVTIME+4* , CONVTIME+5*, CONVTIME+8 |
XDUZ | FINDUSER+2~, FINDUSER+4*, FINDUSER+43*, FINDUSER+44*, FINDUSER+45, FINDUSER+46*, FINDUSER+47, FINDUSER+50*, FINDUSER+51*, FINDUSER+55* , FINDUSER+59*, FINDUSER+60*, FINDUSER+61, FINDUSER+62*, FINDUSER+63, FINDUSER+64*, FINDUSER+65*, FINDUSER+74*, FINDUSER+75*, FINDUSER+76 , FINDUSER+78*, FINDUSER+79, FINDUSER+80*, FINDUSER+81, FINDUSER+82*, FINDUSER+83*, FINDUSER+86, FINDUSER+88*, FINDUSER+89 |
XEDIPI | FINDUSER+2~, FINDUSER+30*, FINDUSER+36*, FINDUSER+71 |
XERR | SH+2~, SH+32*, SH+33, FINDUSER+5* |
XI | MPISSN+6~*, MPISSN+8 |
XIN | MPISSN+7~, MPISSN+8 |
XIN( | MPISSN+8* |
XMPI | MPISSN+1~ |
XMPI( | MPISSN+8 |
XMPI("VAemail" | MPISSN+5* |
XMPI("samacctnm" | MPISSN+4* |
XMPI("secId" | MPISSN+3* |
XNOW | VALASSRT+2~, VALASSRT+16*, VALASSRT+19, VALASSRT+26 |
>> XOBDATA("XOB | RPC" , EN+11*, EN+12*, EN+25*, EN+26*, VALASSRT+3*, VALASSRT+4*, VALASSRT+6, VALASSRT+8!, VALASSRT+10* , VALASSRT+33 |
>> XOPT | TOKVALID+3, LOGFAIL+2 |
XOUT | CONVTIME+2~, CONVTIME+9*, CONVTIME+10, CONVTIME+11*, CONVTIME+13, MPISSN+1~, MPISSN+8 |
XOUT("pnid" | MPISSN+8 |
XPASS | FINDUSER+2~, FINDUSER+13*, FINDUSER+14, FINDUSER+15, FINDUSER+19 |
XPROOF | VALASSRT+2~, VALASSRT+6* |
XT | FINDUSER+2~, FINDUSER+15*, FINDUSER+16, FINDUSER+17, FINDUSER+18, CONVTIME+2~, CONVTIME+6*, CONVTIME+7*, CONVTIME+8 |
XTD | IDPASS+1~, IDPASS+3*, IDPASS+4, IDPASS+6 |
XTE | IDPASS+1~, IDPASS+4*, IDPASS+6 |
XTEXT | SH+2~, SH+32*, SH+33*, SH+38 |
XUA | IDPASS~, IDPASS+2 |
XUERR | EN+19, EN+20, EN+22, EN+23, FINDUSER~, FINDUSER+50, FINDUSER+64, FINDUSER+82, VALASSRT~, VALASSRT+31 , WARNINGS~, TOKVALID~, TOKVALID+4 |
XUERR( | WARNINGS+3 |
XUERR("AuthnCCR" | VALASSRT+29* |
XUERR("AuthnI" | VALASSRT+18* |
XUERR("CALL-RTN" | FINDUSER+3* |
XUERR("EXPIRED" | VALASSRT+26*, TOKVALID+6 |
XUERR("ISSUER" | VALASSRT+34* |
XUERR("NotBefore" | VALASSRT+20* |
XUERR("SECID" | FINDUSER+87* |
XUF | LOGFAIL+1~, LOGFAIL+11* |
XUF( | LOGFAIL+8*, LOGFAIL+9*, LOGFAIL+10* |
XUHOME | FINDUSER+2~, FINDUSER+29*, FINDUSER+39, FINDUSER+54 |
XUIAM | FINDUSER+2~, FINDUSER+7* |
XUPN | EN+8~, EN+10*, EN+17, ND~, ND+2, ND+5, ND+8, SH~, SH+10, SH+16 , SH+22, SH+25*, SH+26, CH~, CH+2, CH+6, CH+7, CH+9, EL~, EL+1!* , EL+3*, EL+4, EL+5, EL+7 |
XVALUE | SH+2~, SH+37*, SH+38 |
XZ | CONVTIME+2~, CONVTIME+3*, CONVTIME+7, CONVTIME+11 |
Y | EN+8~, EN+10*, EN+18*, EN+20*, EN+23*, EN+24, EN+28, CH+1~, CH+3*, CH+5* , CH+7, CH+9, CONVTIME+2~, CONVTIME+9, WARNINGS+1~, WARNINGS+2*, WARNINGS+3*, WARNINGS+4 |
Z | FINDUSER+2~ |