From b7a6d6e73946032286356a33d38f5b2e9bc01e61 Mon Sep 17 00:00:00 2001 From: Jens Langhammer Date: Tue, 10 Dec 2019 11:25:34 +0100 Subject: [PATCH] docs: add docs for property mappings, switch to material theme --- docs/Dockerfile | 4 +- docs/css/custom.css | 342 -------------------------------------- docs/policies.md | 4 + docs/property-mappings.md | 21 +++ mkdocs.yml | 8 +- 5 files changed, 31 insertions(+), 348 deletions(-) delete mode 100644 docs/css/custom.css create mode 100644 docs/property-mappings.md diff --git a/docs/Dockerfile b/docs/Dockerfile index 1f2092fae7..1bee7d1ca0 100644 --- a/docs/Dockerfile +++ b/docs/Dockerfile @@ -2,9 +2,7 @@ FROM python:3.7-slim-buster as builder WORKDIR /mkdocs -RUN apt-get update && apt-get install -y git && \ - pip install mkdocs && \ - pip install git+https://github.com/BeryJu/mkdocs-bootstrap4.git +RUN pip install mkdocs mkdocs-material COPY docs/ docs COPY mkdocs.yml . diff --git a/docs/css/custom.css b/docs/css/custom.css deleted file mode 100644 index cc0c968c2c..0000000000 --- a/docs/css/custom.css +++ /dev/null @@ -1,342 +0,0 @@ -table { - width: 100%; - margin-bottom: 1rem; - color: #212529; -} - -table th, -table td { - padding: 0.75rem; - vertical-align: top; - border-top: 1px solid #dee2e6; -} - -table thead th { - vertical-align: bottom; - border-bottom: 2px solid #dee2e6; -} - -table tbody + tbody { - border-top: 2px solid #dee2e6; -} - -.table-sm th, -.table-sm td { - padding: 0.3rem; -} - -.table-bordered { - border: 1px solid #dee2e6; -} - -.table-bordered th, -.table-bordered td { - border: 1px solid #dee2e6; -} - -.table-bordered thead th, -.table-bordered thead td { - border-bottom-width: 2px; -} - -.table-borderless th, -.table-borderless td, -.table-borderless thead th, -.table-borderless tbody + tbody { - border: 0; -} - -table tbody tr:nth-of-type(odd) { - background-color: rgba(0, 0, 0, 0.05); -} - -table tbody tr:hover { - color: #212529; - background-color: rgba(0, 0, 0, 0.075); -} - -.table-primary, -.table-primary > th, -.table-primary > td { - background-color: #b8daff; -} - -.table-primary th, -.table-primary td, -.table-primary thead th, -.table-primary tbody + tbody { - border-color: #7abaff; -} - -table .table-primary:hover { - background-color: #9fcdff; -} - -table .table-primary:hover > td, -table .table-primary:hover > th { - background-color: #9fcdff; -} - -.table-secondary, -.table-secondary > th, -.table-secondary > td { - background-color: #d6d8db; -} - -.table-secondary th, -.table-secondary td, -.table-secondary thead th, -.table-secondary tbody + tbody { - border-color: #b3b7bb; -} - -table .table-secondary:hover { - background-color: #c8cbcf; -} - -table .table-secondary:hover > td, -table .table-secondary:hover > th { - background-color: #c8cbcf; -} - -.table-success, -.table-success > th, -.table-success > td { - background-color: #c3e6cb; -} - -.table-success th, -.table-success td, -.table-success thead th, -.table-success tbody + tbody { - border-color: #8fd19e; -} - -table .table-success:hover { - background-color: #b1dfbb; -} - -table .table-success:hover > td, -table .table-success:hover > th { - background-color: #b1dfbb; -} - -.table-info, -.table-info > th, -.table-info > td { - background-color: #bee5eb; -} - -.table-info th, -.table-info td, -.table-info thead th, -.table-info tbody + tbody { - border-color: #86cfda; -} - -table .table-info:hover { - background-color: #abdde5; -} - -table .table-info:hover > td, -table .table-info:hover > th { - background-color: #abdde5; -} - -.table-warning, -.table-warning > th, -.table-warning > td { - background-color: #ffeeba; -} - -.table-warning th, -.table-warning td, -.table-warning thead th, -.table-warning tbody + tbody { - border-color: #ffdf7e; -} - -table .table-warning:hover { - background-color: #ffe8a1; -} - -table .table-warning:hover > td, -table .table-warning:hover > th { - background-color: #ffe8a1; -} - -.table-danger, -.table-danger > th, -.table-danger > td { - background-color: #f5c6cb; -} - -.table-danger th, -.table-danger td, -.table-danger thead th, -.table-danger tbody + tbody { - border-color: #ed969e; -} - -table .table-danger:hover { - background-color: #f1b0b7; -} - -table .table-danger:hover > td, -table .table-danger:hover > th { - background-color: #f1b0b7; -} - -.table-light, -.table-light > th, -.table-light > td { - background-color: #fdfdfe; -} - -.table-light th, -.table-light td, -.table-light thead th, -.table-light tbody + tbody { - border-color: #fbfcfc; -} - -table .table-light:hover { - background-color: #ececf6; -} - -table .table-light:hover > td, -table .table-light:hover > th { - background-color: #ececf6; -} - -.table-dark, -.table-dark > th, -.table-dark > td { - background-color: #c6c8ca; -} - -.table-dark th, -.table-dark td, -.table-dark thead th, -.table-dark tbody + tbody { - border-color: #95999c; -} - -table .table-dark:hover { - background-color: #b9bbbe; -} - -table .table-dark:hover > td, -table .table-dark:hover > th { - background-color: #b9bbbe; -} - -.table-active, -.table-active > th, -.table-active > td { - background-color: rgba(0, 0, 0, 0.075); -} - -table .table-active:hover { - background-color: rgba(0, 0, 0, 0.075); -} - -table .table-active:hover > td, -table .table-active:hover > th { - background-color: rgba(0, 0, 0, 0.075); -} - -table .thead-dark th { - color: #fff; - background-color: #343a40; - border-color: #454d55; -} - -table .thead-light th { - color: #495057; - background-color: #e9ecef; - border-color: #dee2e6; -} - -.table-dark { - color: #fff; - background-color: #343a40; -} - -.table-dark th, -.table-dark td, -.table-dark thead th { - border-color: #454d55; -} - -.table-dark.table-bordered { - border: 0; -} - -.table-dark.table-striped tbody tr:nth-of-type(odd) { - background-color: rgba(255, 255, 255, 0.05); -} - -.table-darktable tbody tr:hover { - color: #fff; - background-color: rgba(255, 255, 255, 0.075); -} - -@media (max-width: 575.98px) { - .table-responsive-sm { - display: block; - width: 100%; - overflow-x: auto; - -webkit-overflow-scrolling: touch; - } - .table-responsive-sm > .table-bordered { - border: 0; - } -} - -@media (max-width: 767.98px) { - .table-responsive-md { - display: block; - width: 100%; - overflow-x: auto; - -webkit-overflow-scrolling: touch; - } - .table-responsive-md > .table-bordered { - border: 0; - } -} - -@media (max-width: 991.98px) { - .table-responsive-lg { - display: block; - width: 100%; - overflow-x: auto; - -webkit-overflow-scrolling: touch; - } - .table-responsive-lg > .table-bordered { - border: 0; - } -} - -@media (max-width: 1199.98px) { - .table-responsive-xl { - display: block; - width: 100%; - overflow-x: auto; - -webkit-overflow-scrolling: touch; - } - .table-responsive-xl > .table-bordered { - border: 0; - } -} - -.table-responsive { - display: block; - width: 100%; - overflow-x: auto; - -webkit-overflow-scrolling: touch; -} - -.table-responsive > .table-bordered { - border: 0; -} diff --git a/docs/policies.md b/docs/policies.md index 5d831fe8f2..c6ed04109c 100644 --- a/docs/policies.md +++ b/docs/policies.md @@ -6,6 +6,8 @@ There are two different Kind of policies, a Standard Policy and a Password Polic ## Standard Policies +--- + ### Group-Membership Policy This policy evaluates to True if the current user is a Member of the selected group. @@ -44,6 +46,8 @@ This policy allows you to send an arbitrary HTTP Request to any URL. You can the ## Password Policies +--- + ### Password Policy This Policy allows you to specify Password rules, like Length and required Characters. diff --git a/docs/property-mappings.md b/docs/property-mappings.md new file mode 100644 index 0000000000..0eebcb0d73 --- /dev/null +++ b/docs/property-mappings.md @@ -0,0 +1,21 @@ +# Property Mappings + +Property Mappings allow you to pass information to external Applications. For example, pass the current user's Groups as a SAML Parameter. Property Mappings are also used to map Source fields to passbook fields, for example when using LDAP. + +## SAML Property Mapping + +SAML Property Mappings allow you embed Information into the SAML AuthN Request. THis Information can then be used by the Application to assign permissions for example. + +You can find examples [here](integrations/) + +## LDAP Property Mapping + +LDAP Property Mappings are used when you define a LDAP Source. These Mappings define which LDAP Property maps to which passbook Property. By default, these mappings are created: + +- Autogenerated LDAP Mapping: givenName -> first_name +- Autogenerated LDAP Mapping: mail -> email +- Autogenerated LDAP Mapping: name -> name +- Autogenerated LDAP Mapping: sAMAccountName -> username +- Autogenerated LDAP Mapping: sn -> last_name + +These are configured for the most common LDAP Setups. diff --git a/mkdocs.yml b/mkdocs.yml index 8be00f4474..03a9ab79bf 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -7,10 +7,12 @@ nav: - Kubernetes: installation/kubernetes.md - Policies: policies.md - Factors: factors.md + - Property Mappings: property-mappings.md repo_url: https://git.beryju.org/BeryJu.org/passbook theme: - name: bootstrap4 + name: "material" -extra_css: - - css/custom.css +markdown_extensions: + - toc: + permalink: "ΒΆ"