diff options
Diffstat (limited to 'spss/server/serverws/tools')
-rw-r--r-- | spss/server/serverws/tools/ConfigurationMapper.xsl | 343 |
1 files changed, 343 insertions, 0 deletions
diff --git a/spss/server/serverws/tools/ConfigurationMapper.xsl b/spss/server/serverws/tools/ConfigurationMapper.xsl new file mode 100644 index 000000000..fd47cbf84 --- /dev/null +++ b/spss/server/serverws/tools/ConfigurationMapper.xsl @@ -0,0 +1,343 @@ +<?xml version="1.0" encoding="UTF-8"?> +<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:dsig="http://www.w3.org/2000/09/xmldsig#" xmlns:cfg="http://reference.e-government.gv.at/namespace/moaconfig/20021122#"> + <xsl:output encoding="UTF-8" indent="yes" method="xml"/> + <xsl:template match="/"> + <xsl:apply-templates/> + </xsl:template> + <xsl:template match="cfg:MOAConfiguration"> + <xsl:comment>MOA SPSS 1.3 Configuration File created by MOA SPSS Configuration Mapper</xsl:comment> + <cfg:MOAConfiguration> + <xsl:if test="cfg:HardwareCryptoModule"> + <cfg:Common> + <xsl:for-each select="cfg:HardwareCryptoModule"> + <cfg:HardwareCryptoModule> + <cfg:Name> + <xsl:value-of select="@name"/> + </cfg:Name> + <xsl:if test="@slotID"> + <cfg:SlotId> + <xsl:value-of select="@slotID"/> + </cfg:SlotId> + </xsl:if> + <cfg:UserPIN> + <xsl:value-of select="@userPIN"/> + </cfg:UserPIN> + </cfg:HardwareCryptoModule> + </xsl:for-each> + </cfg:Common> + </xsl:if> + <xsl:if test="cfg:KeyGroup"> + <cfg:SignatureCreation> + <cfg:KeyModules> + <xsl:apply-templates select="cfg:HardwareKeyModule | cfg:SoftwareKeyModule"/> + </cfg:KeyModules> + <xsl:apply-templates select="cfg:KeyGroup"/> + <xsl:apply-templates select="cfg:KeyGroupMapping"/> + <cfg:XMLDSig> + <cfg:CanonicalizationAlgorithm> + <xsl:choose> + <xsl:when test="cfg:CanonicalizationAlgorithm"> + <xsl:value-of select="cfg:CanonicalizationAlgorithm/@name"/> + </xsl:when> + <xsl:otherwise>http://www.w3.org/TR/2001/REC-xml-c14n-20010315</xsl:otherwise> + </xsl:choose> + </cfg:CanonicalizationAlgorithm> + <cfg:DigestMethodAlgorithm> + <xsl:choose> + <xsl:when test="cfg:DigestMethodAlgorithm"> + <xsl:value-of select="cfg:DigestMethodAlgorithm/@name"/> + </xsl:when> + <xsl:otherwise>http://www.w3.org/2000/09/xmldsig#sha1</xsl:otherwise> + </xsl:choose> + </cfg:DigestMethodAlgorithm> + </cfg:XMLDSig> + <xsl:for-each select="cfg:CreateTransformsInfoProfile"> + <cfg:CreateTransformsInfoProfile> + <xsl:apply-templates select="."/> + </cfg:CreateTransformsInfoProfile> + </xsl:for-each> + <xsl:for-each select="cfg:CreateSignatureEnvironmentProfile"> + <cfg:CreateSignatureEnvironmentProfile> + <xsl:apply-templates select="."/> + </cfg:CreateSignatureEnvironmentProfile> + </xsl:for-each> + </cfg:SignatureCreation> + </xsl:if> + <xsl:if test="cfg:TrustProfile"> + <cfg:SignatureVerification> + <xsl:call-template name="CertificateValidation"/> + </cfg:SignatureVerification> + </xsl:if> + </cfg:MOAConfiguration> + </xsl:template> + <xsl:template match="cfg:SoftwareKeyModule"> + <cfg:SoftwareKeyModule> + <cfg:Id> + <xsl:value-of select="@id"/> + </cfg:Id> + <cfg:FileName> + <xsl:value-of select="@filename"/> + </cfg:FileName> + <xsl:if test="@password"> + <cfg:Password> + <xsl:value-of select="@password"/> + </cfg:Password> + </xsl:if> + </cfg:SoftwareKeyModule> + </xsl:template> + <xsl:template match="cfg:HardwareKeyModule"> + <cfg:HardwareKeyModule> + <cfg:Id> + <xsl:value-of select="@id"/> + </cfg:Id> + <cfg:Name> + <xsl:value-of select="@name"/> + </cfg:Name> + <xsl:if test="@slotID"> + <cfg:SlotId> + <xsl:value-of select="@slotID"/> + </cfg:SlotId> + </xsl:if> + <cfg:UserPIN> + <xsl:value-of select="@userPIN"/> + </cfg:UserPIN> + </cfg:HardwareKeyModule> + </xsl:template> + <xsl:template match="cfg:KeyGroup"> + <cfg:KeyGroup> + <cfg:Id> + <xsl:value-of select="@id"/> + </cfg:Id> + <xsl:for-each select="cfg:Key"> + <cfg:Key> + <cfg:KeyModuleId> + <xsl:value-of select="cfg:KeyModuleID"/> + </cfg:KeyModuleId> + <cfg:KeyCertIssuerSerial> + <dsig:X509IssuerName> + <xsl:value-of select="cfg:KeyCertIssuerSerial/dsig:X509IssuerName"/> + </dsig:X509IssuerName> + <dsig:X509SerialNumber> + <xsl:value-of select="cfg:KeyCertIssuerSerial/dsig:X509SerialNumber"/> + </dsig:X509SerialNumber> + </cfg:KeyCertIssuerSerial> + </cfg:Key> + </xsl:for-each> + </cfg:KeyGroup> + </xsl:template> + <xsl:template match="cfg:KeyGroupMapping"> + <cfg:KeyGroupMapping> + <xsl:if test="cfg:X509IssuerSerial"> + <cfg:CustomerId> + <dsig:X509IssuerName> + <xsl:value-of select="cfg:X509IssuerSerial/dsig:X509IssuerName"/> + </dsig:X509IssuerName> + <dsig:X509SerialNumber> + <xsl:value-of select="cfg:X509IssuerSerial/dsig:X509SerialNumber"/> + </dsig:X509SerialNumber> + </cfg:CustomerId> + </xsl:if> + <xsl:for-each select="cfg:KeyGroup"> + <cfg:KeyGroupId> + <xsl:value-of select="@id"/> + </cfg:KeyGroupId> + </xsl:for-each> + </cfg:KeyGroupMapping> + </xsl:template> + <xsl:template match="cfg:CreateTransformsInfoProfile | cfg:CreateSignatureEnvironmentProfile | cfg:VerifyTransformsInfoProfile | cfg:SupplementProfile"> + <cfg:Id> + <xsl:value-of select="@id"/> + </cfg:Id> + <cfg:Location> + <xsl:value-of select="@filename"/> + </cfg:Location> + </xsl:template> + <xsl:template name="CertificateValidation"> + <cfg:CertificateValidation> + <cfg:PathConstruction> + <cfg:AutoAddCertificates> + <xsl:call-template name="GetGenericValue"> + <xsl:with-param name="GenericName" select="'autoAddCertificates'"/> + <xsl:with-param name="DefaultValue" select="'true'"/> + </xsl:call-template> + </cfg:AutoAddCertificates> + <cfg:UseAuthorityInformationAccess> + <xsl:call-template name="GetGenericValue"> + <xsl:with-param name="GenericName" select="'useAuthorityInfoAccess'"/> + <xsl:with-param name="DefaultValue" select="'true'"/> + </xsl:call-template> + </cfg:UseAuthorityInformationAccess> + <cfg:CertificateStore> + <cfg:DirectoryStore> + <cfg:Location> + <xsl:call-template name="GetGenericValue"> + <xsl:with-param name="GenericName" select="'DirectoryCertStoreParameters.RootDir'"/> + <xsl:with-param name="DefaultValue" select="'certstore'"/> + </xsl:call-template> + </cfg:Location> + </cfg:DirectoryStore> + </cfg:CertificateStore> + </cfg:PathConstruction> + <cfg:PathValidation> + <cfg:ChainingMode> + <cfg:DefaultMode> + <xsl:choose> + <xsl:when test="cfg:ChainingModes/@systemDefaultMode"> + <xsl:value-of select="cfg:ChainingModes/@systemDefaultMode"/> + </xsl:when> + <xsl:otherwise>pkix</xsl:otherwise> + </xsl:choose> + </cfg:DefaultMode> + <xsl:for-each select="cfg:ChainingModes/cfg:TrustAnchor"> + <cfg:TrustAnchor> + <cfg:Identification> + <dsig:X509IssuerName> + <xsl:value-of select="dsig:X509IssuerName"/> + </dsig:X509IssuerName> + <dsig:X509SerialNumber> + <xsl:value-of select="dsig:X509SerialNumber"/> + </dsig:X509SerialNumber> + </cfg:Identification> + <cfg:Mode> + <xsl:value-of select="@mode"/> + </cfg:Mode> + </cfg:TrustAnchor> + </xsl:for-each> + </cfg:ChainingMode> + <xsl:for-each select="cfg:TrustProfile"> + <cfg:TrustProfile> + <cfg:Id> + <xsl:value-of select="@id"/> + </cfg:Id> + <cfg:TrustAnchorsLocation> + <xsl:value-of select="@uri"/> + </cfg:TrustAnchorsLocation> + <xsl:if test="@signerCertsUri"> + <cfg:SignerCertsLocation> + <xsl:value-of select="@signerCertsUri"/> + </cfg:SignerCertsLocation> + </xsl:if> + </cfg:TrustProfile> + </xsl:for-each> + </cfg:PathValidation> + <cfg:RevocationChecking> + <cfg:EnableChecking> + <xsl:call-template name="GetGenericValue"> + <xsl:with-param name="GenericName" select="'checkRevocation'"/> + <xsl:with-param name="DefaultValue" select="'true'"/> + </xsl:call-template> + </cfg:EnableChecking> + <cfg:MaxRevocationAge> + <xsl:call-template name="GetGenericValue"> + <xsl:with-param name="GenericName" select="'maxRevocationAge'"/> + <xsl:with-param name="DefaultValue" select="'0'"/> + </xsl:call-template> + </cfg:MaxRevocationAge> + <cfg:ServiceOrder> + <cfg:Service>CRL</cfg:Service> + <cfg:Service>OCSP</cfg:Service> + </cfg:ServiceOrder> + <cfg:Archiving> + <cfg:EnableArchiving> + <xsl:call-template name="GetGenericValue"> + <xsl:with-param name="GenericName" select="'archiveRevocationInfo'"/> + <xsl:with-param name="DefaultValue" select="'false'"/> + </xsl:call-template> + </cfg:EnableArchiving> + <cfg:ArchiveDuration> + <xsl:choose> + <xsl:when test="cfg:CRLArchive/@duration"> + <xsl:value-of select="cfg:CRLArchive/@duration"/> + </xsl:when> + <xsl:otherwise>365</xsl:otherwise> + </xsl:choose> + </cfg:ArchiveDuration> + <cfg:Archive> + <cfg:DatabaseArchive> + <cfg:JDBCURL> + <xsl:call-template name="GetGenericValue"> + <xsl:with-param name="GenericName" select="'DataBaseArchiveParameter.JDBCUrl'"/> + <xsl:with-param name="DefaultValue" select="'jdbc:url'"/> + </xsl:call-template> + </cfg:JDBCURL> + <cfg:JDBCDriverClassName> + <xsl:call-template name="GetGenericValue"> + <xsl:with-param name="GenericName" select="'DataBaseArchiveParameter.JDBCDriverClass'"/> + <xsl:with-param name="DefaultValue" select="'fully.qualified.classname'"/> + </xsl:call-template> + </cfg:JDBCDriverClassName> + </cfg:DatabaseArchive> + </cfg:Archive> + </cfg:Archiving> + <xsl:for-each select="cfg:CRLDistributionPoint"> + <cfg:DistributionPoint> + <cfg:CAIssuerDN> + <xsl:value-of select="cfg:CAIssuerDN"/> + </cfg:CAIssuerDN> + <xsl:for-each select="cfg:DistributionPoint"> + <cfg:CRLDP> + <cfg:Location> + <xsl:value-of select="@uri"/> + </cfg:Location> + <xsl:if test="contains(@reasonCodes, 'all')"> + <cfg:ReasonCode>all</cfg:ReasonCode> + </xsl:if> + <xsl:if test="contains(@reasonCodes, 'unused')"> + <cfg:ReasonCode>unused</cfg:ReasonCode> + </xsl:if> + <xsl:if test="contains(@reasonCodes, 'keyCompromise')"> + <cfg:ReasonCode>keyCompromise</cfg:ReasonCode> + </xsl:if> + <xsl:if test="contains(@reasonCodes, 'cACompromise')"> + <cfg:ReasonCode>cACompromise</cfg:ReasonCode> + </xsl:if> + <xsl:if test="contains(@reasonCodes, 'affiliationChanged')"> + <cfg:ReasonCode>affiliationChanged</cfg:ReasonCode> + </xsl:if> + <xsl:if test="contains(@reasonCodes, 'superseded')"> + <cfg:ReasonCode>superseded</cfg:ReasonCode> + </xsl:if> + <xsl:if test="contains(@reasonCodes, 'cessationOfOperation')"> + <cfg:ReasonCode>cessationOfOperation</cfg:ReasonCode> + </xsl:if> + <xsl:if test="contains(@reasonCodes, 'certificateHold')"> + <cfg:ReasonCode>certificateHold</cfg:ReasonCode> + </xsl:if> + <xsl:if test="contains(@reasonCodes, 'privilegeWithdrawn')"> + <cfg:ReasonCode>privilegeWithdrawn</cfg:ReasonCode> + </xsl:if> + <xsl:if test="contains(@reasonCodes, 'aACompromise')"> + <cfg:ReasonCode>aACompromise</cfg:ReasonCode> + </xsl:if> + </cfg:CRLDP> + </xsl:for-each> + </cfg:DistributionPoint> + </xsl:for-each> + </cfg:RevocationChecking> + </cfg:CertificateValidation> + <xsl:for-each select="cfg:VerifyTransformsInfoProfile"> + <cfg:VerifyTransformsInfoProfile> + <xsl:apply-templates select="."/> + </cfg:VerifyTransformsInfoProfile> + </xsl:for-each> + <xsl:for-each select="cfg:SupplementProfile"> + <cfg:SupplementProfile> + <xsl:apply-templates select="."/> + </cfg:SupplementProfile> + </xsl:for-each> + </xsl:template> + <xsl:template name="GetGenericValue"> + <xsl:param name="GenericName"/> + <xsl:param name="DefaultValue"/> + <xsl:choose> + <xsl:when test="cfg:GenericConfiguration[@name=$GenericName]"> + <xsl:value-of select="cfg:GenericConfiguration[@name=$GenericName]/@value"/> + </xsl:when> + <xsl:otherwise> + <xsl:if test="$DefaultValue != ''"> + <xsl:value-of select="$DefaultValue"/> + </xsl:if> + </xsl:otherwise> + </xsl:choose> + </xsl:template> +</xsl:stylesheet> |