Commit ea32e78c authored by Tobias Dussa's avatar Tobias Dussa
Browse files

Added KIT style file, updated Makefile.

parent cdfc85de
FILESTOBEFIXED=$(wildcard written_statement*.tex)
FILESTOBEFIXED=kit-antrag.sty
INPUTFILES=$(wildcard written_statement*.tex)
TESTFILES=$(subst .tex,.pdf,$(INPUTFILES))
......
% Support fillable PDF forms
\usepackage{hyperref}
% Support automagic typesetting of numbers
\usepackage{numprint}
% Support string operations
\usepackage{xstring}
% Support box rotation
\usepackage{rotating}
% Support framed paragraphs
\newenvironment{sidebar}%
{\setlength{\arrayrulewidth}{3pt}%
\setlength{\tabcolsep}{1em}%
\newlength{\mycolumnwidth}%
\setlength{\mycolumnwidth}{\textwidth}%
\addtolength{\mycolumnwidth}{-\arrayrulewidth}%
\addtolength{\mycolumnwidth}{-\arrayrulewidth}%
\addtolength{\mycolumnwidth}{-\tabcolsep}%
\addtolength{\mycolumnwidth}{-\tabcolsep}%
\begin{tabular}{|p{\mycolumnwidth}|}}
{\end{tabular}}
% Git file revision
\newcommand{\gitrevision}{}
\newcommand{\setgitrevision}[1]{\renewcommand{\gitrevision}{#1}}
\setgitrevision{r112/cdfc85d~(2017-09-07)}
% Make \linie a line with a fillable box, \linie* a plain line
\newcounter{formnum}
\makeatletter
\DeclareRobustCommand{\linie}{\@ifstar{\oldlinie}{\newlinie}}
\makeatother
\newcommand*{\newlinie}[1]{\stepcounter{formnum}\makebox[0pt][l]{\smash{\raisebox{2pt}{\TextField[width=#1,name=\theformnum,bordercolor={1 1 1}]{{}}}}}\oldlinie{#1}}
\newcommand*{\oldlinie}[1]{\makebox[#1][l]{\hrulefill}}
% Old definitions
\newcommand{\personlinie}{\linie{122mm}}
\newcommand\checkbox{%
\setlength\fboxsep{0pt}
\framebox[\height]{\phantom{X}}}
\usepackage[ngerman]{babel}
\usepackage[ansinew]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{graphicx}
\usepackage{color}
\usepackage{geometry}
\usepackage{helvet}
\usepackage{boxedminipage}
\usepackage{url}
\usepackage{paralist}
\usepackage{longtable}
\urlstyle{sf}
\pagestyle{empty}
% Basic layout
\renewcommand{\familydefault}{\sfdefault}
\newcommand{\textmc}[1]{{\fontseries{mc}\selectfont #1}}
\geometry{left=20mm,textwidth=170mm,top=16mm,textheight=260.5mm}
\unitlength=1mm
% Coloring
\definecolor{grey}{rgb}{0.85, 0.85, 0.85}
\newcommand{\backdrop}[2]{\makebox[0pt][l]{\smash{\raisebox{1mm}{\makebox[#1][c]{\Large\textcolor{grey}{#2}}}}}\linie*{#1}}
% Get decent date format
\usepackage{datetime}
\renewcommand{\dateseparator}{-}
\makeatletter
\newcommand*{\myformatdate}[3]{%
\@day=#1\relax\@month=#2\relax\@year=#3\relax
\the\@year\dateseparator \twodigit\@month\dateseparator \twodigit\@day}
\makeatother
% Have a command to typeset non-empty rows only
\makeatletter
\newcommand{\@setrow}[2]{#1&#2\\}
\newcommand{\setrow}[2]{%
\if\relax\detokenize\expandafter{#2}\relax{}%
\relax{}%
\else%
\@setrow{#1}{#2}%
\fi}
\makeatother
%%%%%
% Data provided by the DFN scripts; this needs to be redeclared in the actual
% LaTeX master file
\newcommand{\REQUESTSERIAL}{}
\newcommand{\DN}{}
\newcommand{\SUBJECTALTERNATIVENAME}{}
\newcommand{\FINGERPRINT}{}
\newcommand{\PUBLISH}{}
\newcommand{\ROLE}{}
\newcommand{\ADDITIONALATTRIBUTEREQUESTERCN}{}
\newcommand{\ADDITIONALATTRIBUTEEMAIL}{}
\newcommand{\ADDITIONALATTRIBUTEDEPARTMENT}{}
% Config params for graphics; also to be redeclared in the actual LaTeX master
% file
\newcommand{\DFNStrip}{}
\newcommand{\KITCALogo}{}
\newcommand{\DFNPKIHead}{}
%%%%%
%%% Fine print addenda
% Individual certificates
\newcommand{\FineprintIndividual}{%
\item Ich darf den privaten Schlssel zu dem Zertifikat nicht anderen Personen
zugnglich machen. Eine Weitergabe ist nicht erlaubt.
\item Jedes Gert, auf dem ich den privaten Schlssel speichere beziehungsweise
einsetze, muss angemessen geschtzt, also unter anderem frei von Schadsoftware
wie Viren sein und regelmig mit Sicherheits-Patches versehen werden.
\item Ich bin unter den folgenden Bedingungen verpflichtet, das Zertifikat
sperren zu lassen:
{\begin{compactitem}
\item Das Zertifikat enthlt Angaben, die nicht mehr gltig sind,
beispielsweise nach einer Namensnderung.
\item Der private Schlssel oder die dazugehrige Passphrase wurde verloren,
gestohlen, offen gelegt oder anderweitig kompromittiert oder missbraucht.
\item Ich bin nicht mehr berechtigt, das Zertifikat zu nutzen.
\end{compactitem}}}
% Group certificates
\newcommand{\FineprintGroup}{%
\item Ich darf den privaten Schlssel zu dem Zertifikat nicht anderen Personen
auerhalb der benannten Gruppe zugnglich machen. Eine Weitergabe ist nur
innerhalb der Gruppe erlaubt, siehe Informationen fr Zertifikatinhaber.
\item Jedes Gert, auf dem ich den privaten Schlssel speichere beziehungsweise
einsetze, muss angemessen geschtzt, also unter anderem frei von Schadsoftware
wie Viren sein und regelmig mit Sicherheits-Patches versehen werden.
\item Ich bin unter den folgenden Bedingungen verpflichtet, das Zertifikat
sperren zu lassen:
{\begin{compactitem}
\item Das Zertifikat enthlt Angaben, die nicht mehr gltig sind,
beispielsweise nach einer Namensnderung.
\item Der private Schlssel oder die dazugehrige Passphrase wurde verloren,
gestohlen, offen gelegt oder anderweitig kompromittiert oder missbraucht.
\item Ich bin nicht mehr berechtigt, das Zertifikat zu nutzen.
\item Ein Mitglied der Gruppe scheidet aus (Ausnahmen: Siehe Informationen
fr Zertifikatinhaber).
\end{compactitem}}}
% Server certificates
\newcommand{\FineprintServer}{%
\item Das Zertifikat darf nur auf Servern installiert werden, die unter den im
Zertifikat enthaltenen Namen erreichbar sind.
\item Der private Schlssel darf nur Administratoren der im Zertifikat
genannten Server zugnglich sein.
\item Jeder im Zertifikat genannte Server, der aus dem Internet erreichbar ist,
muss angemessen geschtzt werden. Das heit etwa:
{\begin{compactitem}
\item Der Server befindet sich in einer gesicherten Infrastruktur, zum
Beispiel hinter einer geeignet konfigurierten Firewall.
\item Der Server wird professionell betrieben; unter anderem werden
Sicherheitspatches zeitnah eingespielt.
\item Der administrative Zugriff auf den Server und somit auf den privaten
Schlssel ist klar geregelt.
\end{compactitem}}
\item Wenn die im Zertifikat enthaltenen Daten nicht mehr korrekt sind oder
eine unbefugte Person Kontrolle ber den privaten Schlssel hatte, wird
umgehend die Sperrung des Zertifikats veranlasst.}
% "I have a user certificate" clause
\newcommand{\IHaveAUserCertificate}{%
bin im Besitz eines gltigen Personenzertifikats der KIT-CA und}
%%% Fill-in instructions
% Fill-in instructions for identification forms
\newcommand{\InstructionsIdentify}{%
\begin{sidebar}
\textbf{Bitte das Formular \emph{bis hier} ausfllen und mit einem gltigen
amtlichen Lichtbildausweis innerhalb von drei Monaten beim SCC-Servicedesk
vorlegen (siehe \url{https://www.ca.kit.edu/p/abgeben}).}
\end{sidebar}}
% Fill-in instructions for non-identification forms
\newcommand{\InstructionsNoIdentify}{%
\begin{sidebar}
\textbf{Bitte das Formular \emph{bis hier} ausfllen und innerhalb von drei
Monaten im Original bei der KIT-CA einreichen (siehe
\url{https://www.ca.kit.edu/p/einreichen}).}
\end{sidebar}}
%%% Checkboxes
% Checkbox for identification forms
\newcommand{\CheckboxIdentify}{%
\begin{boxedminipage}{\textwidth}
\textbf{Wird vom Teilnehmerservice ausgefllt}\hfill\textbf{Antragnummer \serial}\newline
\linie*{\textwidth}
\begin{tabular}{p{0.49\linewidth}|p{0.45\linewidth}}
\multicolumn{1}{l}{\textbf{Identittsprfung}} & \\
\multicolumn{1}{l}{\quad\checkbox{} Name geprft} & \checkbox{} KIT-Mitgliedschaft geprft \\
\multicolumn{1}{l}{\quad\checkbox{} Unterschrift geprft} & \multicolumn{1}{@{}p{0.45\linewidth}@{}}{\makebox[0pt][c]{\rule[-4pt]{\arrayrulewidth}{4.4pt}}\linie*{1.075\linewidth}} \\
\quad\checkbox{} Passbild geprft & \textbf{Prfer} \\
\quad\checkbox{} Ausweisnr. (letzte 5~Stellen): \linie*{4mm} \linie*{4mm} \linie*{4mm} \linie*{4mm} \linie*{4mm} & \\
\quad\qquad\checkbox{} \textmc{Personalausweis} ~\checkbox{} \textmc{Reisepass} ~\checkbox{} \textmc{Aufenthaltstitel} & \linie*{\linewidth} \\
\quad\checkbox{} Ausweisgltigkeit geprft & (ID, Datum, Unterschrift) \\
\end{tabular}
\linie*{\textwidth}
\begin{tabular}{p{0.49\linewidth}|p{0.45\linewidth}}
\textbf{Antragprfung} & \textbf{RA-Operator}\\
\quad\checkbox{} Angegebene Institutszugehrigkeit geprft & \\
\quad\checkbox{} E-Mail-Adresse gehrt zum Antragsteller & \linie*{\linewidth} \\
\quad\checkbox{} DN noch nicht anderweitig vergeben & (ID, Datum, Unterschrift) \\
\end{tabular}
\end{boxedminipage}}
% Checkbox for group certificate forms
\newcommand{\CheckboxGroup}{%
\begin{boxedminipage}{\textwidth}
\textbf{Wird vom Teilnehmerservice ausgefllt}\hfill\textbf{Antragnummer \serial}\newline
\linie*{\textwidth}
\begin{tabular}{p{0.49\linewidth}|p{0.45\linewidth}}
\textbf{Antragprfung} & \textbf{RA-Operator}\\
\quad\checkbox{} Antragsteller besitzt gltiges Personenzertifikat & \\
\quad\checkbox{} Angegebene Institutszugehrigkeit geprft & \\
\quad\checkbox{} E-Mail-Adresse gehrt zur Gruppe & \linie*{\linewidth}\\
\quad\checkbox{} DN noch nicht anderweitig vergeben & (ID, Datum, Unterschrift)\\
\end{tabular}
\end{boxedminipage}}
% Checkbox for server certificate forms
\newcommand{\CheckboxServer}{%
\begin{boxedminipage}{\textwidth}
\textbf{Wird vom Teilnehmerservice ausgefllt}\hfill\textbf{Antragnummer \serial}\newline
\linie*{\textwidth}
\begin{tabular}{p{0.49\linewidth}|p{0.45\linewidth}}
\textbf{Antragprfung} & \textbf{RA-Operator}\\
\quad\checkbox{} Antragsteller besitzt gltiges Personenzertifikat & \\
\quad\checkbox{} Angegebene Institutszugehrigkeit geprft & \\
\quad\checkbox{} E-Mail-Adresse gehrt zum Antragsteller & \linie*{\linewidth}\\
\quad\checkbox{} Zustndigkeit fr den DNS-Namen geprft & (ID, Datum, Unterschrift)\\
\end{tabular}
\end{boxedminipage}}
% General structure of the certificate request form
% #1: Type
% #2: Additional fine print, general
% #3: Additional fine print, "I have a user certificate" clause
% #4: Fill-in notes
% #5: Checklist box
\newcommand{\Zertifikatantrag}[5]{%
\let\formatdate=\myformatdate%
\StrGobbleRight{\REQUESTSERIAL}{4}[\block]%
\StrRight{\REQUESTSERIAL}{4}[\offset]%
\newcommand{\serial}{\numprint{\block}~\textbf{\StrLeft{\offset}{2}}~\StrRight{\offset}{2}}
\marginpar{\hspace*{10mm}\begin{sideways}\scriptsize\serial{}\qquad\raisebox{1.0pt}{\textbullet{}}\qquad{}\FINGERPRINT\end{sideways}}
\begin{Form}
{\setlength{\parskip}{0pt}
\makebox[0pt][l]{\includegraphics[height=12mm]{\DFNStrip}}
\makebox[0pt][l]{\includegraphics[height=11mm]{\KITCALogo}}\hfill
\makebox[0pt][r]{\includegraphics[height=12mm]{\DFNPKIHead}}}
\vspace{4mm}
\centerline{\large\textbf{Zertifikatantrag fr ein #1}}
\centerline{-- an das Karlsruher Institut fr Technologie --}
\textbf{Angaben zum Zertifikatantrag}
\begin{longtable}{p{4.5cm}@{\vspace{1mm}}p{122mm}@{}}
\setrow{Antragnummer}{\serial}
\setrow{Eindeutiger Name (DN)}{\DN}
\setrow{Alternativer Name}{\SUBJECTALTERNATIVENAME}
\setrow{Public-Key Fingerprint}{\FINGERPRINT}
\setrow{Verffentlichen}{\PUBLISH}
\setrow{Zertifikatprofil}{\ROLE}
\end{longtable}
\textbf{Angaben zur Person}
\begin{tabular}{p{4.5cm}@{\vspace{1mm}}p{122mm}@{}}
\setrow{Name}{\ADDITIONALATTRIBUTEREQUESTERCN}
\setrow{E-Mail}{\ADDITIONALATTRIBUTEEMAIL}
\setrow{Abteilung/Institut}{\ADDITIONALATTRIBUTEDEPARTMENT}
\end{tabular}
{\footnotesize
Hiermit beantrage ich ein #1 in der DFN-PKI und
verpflichte mich, die Regelungen der unter
\url{https://info.pca.dfn.de/doc/Info_Zertifikatinhaber.pdf}
verffentlichten Informationen fr Zertifikatinhaber
einzuhalten. Das heit insbesondere:
\vspace{-1.5ex}
{\begin{compactitem}
\item Ich versichere, dass smtliche Angaben im Antrag vollstndig
sind und der Wahrheit entsprechen; ist im eindeutigen Namen (DN)
des Zertifikatantrags in einem OU-Feld ein Institut oder hnliches
enthalten, so ist meine Zugehrigkeit durch den entsprechenden
Institutsstempel oder vergleichbares unten besttigt.
#2
\end{compactitem}}
\vspace{-1.5ex}
Ich #3 erklre mich mit der Verarbeitung und Nutzung der erhobenen
Daten zum Zweck der Zertifikaterstellung einverstanden. Die Daten
drfen an die KIT-CA sowie den DFN-Verein bermittelt und dort
beschrnkt auf diesen Zweck verarbeitet und genutzt werden.
}
\vfill
\vfill
\vspace{3mm}
\begin{tabbing}
\linie{0.45\linewidth}\hspace{0.1\linewidth}\=\linie*{0.45\linewidth}\\
(Ort, Datum, gegebenenfalls Institutsstempel)\>(Unterschrift -- wie im Ausweis)
\end{tabbing}
\vfill
#4
\vfill
#5
\smash{\raisebox{-6pt}{\tiny\gitrevision}}\hspace*{\fill}\smash{\raisebox{-6pt}{\tiny\today{}T\currenttime{}}}
\vspace{4mm}
\end{Form}}
% User certificate
\newcommand{\Nutzerzertifikat}{%
\Zertifikatantrag%
{Nutzerzertifikat}% Type
{\FineprintIndividual{}}% Fine print addendum, general
{}% Fine print addendum, "I have a user certificate" clause
{\InstructionsIdentify{}}% Fill-in instructions
{\CheckboxIdentify{}}% Checkbox
}
% Pseudonymzertifikat
\newcommand{\Pseudonymzertifikat}{%
\Zertifikatantrag%
{Pseudonymzertifikat}% Type
{\FineprintIndividual{}}% Fine print addendum, general
{}% Fine print addendum, "I have a user certificate" clause
{\InstructionsIdentify{}}% Fill-in instructions
{\CheckboxIdentify{}}% Checkbox
}
% Group certificate
\newcommand{\Gruppenzertifikat}{%
\Zertifikatantrag%
{Gruppenzertifikat}% Type
{\FineprintGroup{}}% Fine print addendum, general
{\IHaveAUserCertificate{}}% Fine print addendum, "I have a user certificate" clause
{\InstructionsNoIdentify{}}% Fill-in instructions
{\CheckboxGroup{}}% Checkbox
}
% Serverzertifikat
\newcommand{\Serverzertifikat}{%
\Zertifikatantrag%
{Serverzertifikat}% Type
{\FineprintServer{}}% Fine print addendum, general
{\IHaveAUserCertificate{}}% Fine print addendum, "I have a user certificate" clause
{\InstructionsNoIdentify{}}% Fill-in instructions
{\CheckboxServer{}}% Checkbox
}
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment