-
nowość
Identyfikacja i autoryzacja. Poradnik administratora i inżyniera DevOps - ebook
Identyfikacja i autoryzacja. Poradnik administratora i inżyniera DevOps - ebook
Kompleksowy przewodnik po rozwiązaniach uwierzytelniających.
Ten podręcznik jest przeznaczony przede wszystkim dla administratorów i deweloperów systemów informatycznych. Dotyka niezwykle istotnego zagadnienia, przed którym stoją inżynierowie DevOps: jak sprawić, by poprzez autoryzację chronić dostęp do danych i serwisów, gdy programy komunikują się ze sobą - często bez udziału człowieka?
Autor wyjaśnia teoretyczne podstawy i prezentuje praktyczne rozwiązania z wykorzystaniem technologii kontenerów Docker. Ta technologia bowiem doskonale nadaje się do testowania i prezentowania licznych przykładów zawartych w podręczniku.
Książka opisuje nowoczesne rozwiązania, kluczowe dla rozwoju systemów informatycznych w Polsce. Dla osób posługujących się językiem Python jest to pozycja niezbędna.
- Poznaj fundamentalne różnice między identyfikacją, autoryzacją a uwierzytelnianiem i sposoby ich implementacji
- Dowiedz się, jaką rolę odgrywają szyfry i algorytmy ważne w procesie uwierzytelnienia
- Opanuj wiedzę dotyczącą technologii i metod związanych z ochroną serwerów, a także funkcjonowania ich najważniejszych elementów, takich jak poczta (SMTP), VPN, LDAP, Kerberos, PAM
- Zapoznaj się z nowoczesnymi metodami uwierzytelniania, takimi jak weryfikacja dwuetapowa, standardy SAML i OAuth 2
- Zobacz, jak te rozwiązania zostały zastosowane w usługach wprowadzanych przez polskie prawo, w tym e-Doręczenia, KWIE, KSeF
Spis treści
Rozdział 1. Wprowadzenie
- 1.1. Uwagi redakcyjne
- 1.1.1. DevOps
- 1.1.2. Grupa docelowa
- 1.1.3. Programy i prawa autorskie
- 1.2. Wprowadzenie do tematu książki
- 1.2.1. O różnicy między identyfikacją a upoważnieniem
- 1.2.2. Uwierzytelnianie
- 1.2.3. Ochrona tożsamości
- 1.2.4. Tokeny
- 1.2.5. Jednokrotne logowanie a potrzeba standaryzacji
Rozdział 2. DevOps i Docker - praktyczne wprowadzenie
- 2.1. Czym jest DevOps
- 2.2. Infrastruktura jako kod
- 2.2.1. Wirtualizacja
- 2.2.2. Konteneryzacja
Rozdział 3. Docker
- 3.1. Podstawowe komendy
- 3.1.1. Budowanie obrazu kontenera
- 3.1.2. Lista obrazów w systemie
- 3.1.3. Uruchomienie nowego kontenera
- 3.1.4. Zatrzymanie kontenera
- 3.1.5. Lista kontenerów obecnych w systemie
- 3.1.6. Pobierz obraz z rejestru
- 3.1.7. Usunięcie obrazu
- 3.2. Tworzenie sieci
Rozdział 4. Szyfry w procesie uwierzytelnienia
- 4.1. Szyfrowanie symetryczne
- 4.2. Szyfrowanie asymetryczne
- 4.3. Funkcje haszujące (funkcje skrótu)
- 4.4. Podsumowanie
- 4.5. Szyfry blokowe
- 4.5.1. Podsumowanie
- 4.6. Hasła i funkcje skrótu
- 4.6.1. Funkcje skrótu w Pythonie
- 4.7. Szyfry asymetryczne i certyfikaty
- 4.7.1. Transmisja z wykorzystaniem szyfrowania asymetrycznego
- 4.7.2. Certyfikaty
- 4.7.3. Inne zastosowania
- 4.8. Docker CA
- 4.8.1. Dockerfile
- 4.8.2. Skrypt entrypoint.sh
- 4.8.3. Przykład konfiguracji openssl (plik openssl.cnf)
- 4.8.4. Skrypt serwera TCP (server.py)
- 4.8.5. Generowanie i podpisywanie certyfikatów przez TCP/IP
Rozdział 5. Algorytmy, z którymi warto się zapoznać
- 5.1. Protokół Diffiego-Hellmana (DH)
- 5.1.1. Wprowadzenie
- 5.1.2. Podstawy matematyczne
- 5.1.3. Zasada działania protokołu
- 5.1.4. Bezpieczeństwo
- 5.1.5. Implementacja
- 5.1.6. Ostrzeżenia i zalecenia
- 5.1.7. Literatura uzupełniająca
- 5.2. Algorytm RSA
- 5.2.1. Funkcja Eulera (?(n))
- 5.2.2. Twierdzenie Eulera
- 5.2.3. Szyfr wykładniczy
- 5.2.4. Generowanie kluczy
- 5.2.5. Implementacja edukacyjna w Pythonie
- 5.2.6. Uwagi dotyczące implementacji
- 5.2.7. Podsumowanie
- 5.3. Protokół Needhama-Schroedera
- 5.3.1. Kluczowe założenia
- 5.3.2. Wersje protokołu
- 5.3.3. Przebieg protokołu (wersja symetryczna)
- 5.3.4. Bezpieczeństwo. Zalety protokołu
- 5.3.5. Znane zagrożenia
- 5.3.6. Przykład implementacji
- 5.3.7. Związek z Kerberosem
- 5.3.8. Literatura i zasoby
- 5.3.9. Podsumowanie
Rozdział 6. TLS (TRANSPORT LAYER SECURITY)
- 6.1. Podstawy TLS
- 6.1.1. Ewolucja z SSL do TLS
- 6.1.2. Architektura w modelu OSI
- 6.1.3. Szczegółowy proces uzgadniania (Handshake)
- 6.2. Praktyczna konfiguracja serwerów
- 6.2.1. Nginx - szczegółowa konfiguracja
- 6.2.2. Apache - szczegółowa konfiguracja
- 6.3. Zarządzanie certyfikatami
- 6.3.1. Tworzenie łańcucha certyfikatów
- 6.3.2. Generowanie różnych typów certyfikatów
- 6.3.3. Konwersja formatów i paczka PFX
- 6.4. Szyfrowanie, deszyfrowanie i podpisywanie
- 6.4.1. Szyfrowanie i deszyfrowanie plików
- 6.4.2. Podpisywanie i weryfikacja wiadomości
- 6.4.3. Dodatkowe informacje
- 6.5. Konfiguracja dla różnych usług
- 6.5.1. Postfix (SMTP)
- 6.5.2. Dovecot (IMAP/POP3)
- 6.5.3. Git
- 6.6. Rozwiązywanie problemów
- 6.6.1. Typowe błędy i rozwiązania
- 6.6.2. Zaawansowana diagnostyka
- 6.7. Automatyzacja i zarządzanie
- 6.7.1. Certbot (Let's Encrypt)
- 6.7.2. Skrypty monitorujące
- 6.7.3. Zaawansowane techniki
- 6.7.4. Najlepsze praktyki bezpieczeństwa
- 6.7.5. Dodatkowe informacje i zasoby
- 6.8. Dwustronne SSL (mTLS)
- 6.8.1. Wprowadzenie
- 6.9. Przykładowa implementacja
- 6.9.1. Certyfikat serwera
- 6.9.2. Certyfikat klienta
- 6.9.3. Testowanie połączenia
- 6.9.4. Implementacja klienta
- 6.9.5. Najlepsze praktyki
- 6.9.6. Dodatkowe zasoby
- 6.10. Podstawy OpenSSL
- 6.10.1. Możliwości OpenSSL
- 6.10.2. Wersja i konfiguracja
- 6.10.3. Najczęściej używane opcje
- 6.10.4. Podawanie haseł
- 6.10.5. Silniki kryptograficzne
- 6.10.6. Wymagania systemowe
- 6.10.7. Generowanie haszy haseł
- 6.10.8. Generowanie losowych danych
- 6.10.9. Szyfrowanie i deszyfrowanie plików
- 6.10.10. Generowanie kluczy
- 6.10.11. Podpisywanie i weryfikacja wiadomości
- 6.10.12. Testowanie serwerów SSL/TLS
- 6.10.13. Diagnostyka certyfikatów
- 6.10.14. Generowanie certyfikatów
- 6.10.15. Konfiguracja własnego CA (Debian/Ubuntu)
- 6.10.16. Algorytm Diffiego-Hellmana (zaawansowane)
- 6.10.17. Podsumowanie
- 6.10.18. Dodatkowe zasoby
- 6.11. Przykłady zastosowania
- 6.11.1. Szyfrowanie plików
- 6.11.2. Bezpieczna wymiana plików z użyciem kryptografii i Dockera
Rozdział 7. Elementy ochrony infrastruktury IT
- 7.1. Bezpieczeństwo systemu Linux
- 7.1.1. Najważniejsze zalecenia
- 7.1.2. Mechanizmy jądra Linuksa
- 7.2. Bezpieczeństwo infrastruktury
- 7.2.1. Zarządzanie dostępem i uwierzytelnianiem
- 7.2.2. Zarządzanie siecią i infrastrukturą
- 7.2.3. Ochrona danych
- 7.2.4. Zarządzanie serwerami
- 7.2.5. Polityki i procedury organizacyjne
- 7.3. Wazuh
- 7.4. Logowanie do systemów
- 7.4.1. Wymagania wobec haseł
- 7.4.2. Rozwój systemów logowania
- 7.5. Dodatkowe zasoby
Rozdział 8. Pluggable Authentication Modules
- 8.1. Wprowadzenie do PAM
- 8.2. Konfiguracja PAM
- 8.2.1. Typ modułu - module-type
- 8.2.2. Reakcja na wynik zwrócony przez moduł - control-flag
- 8.2.3. module-path - pełna ścieżka do modułu
- 8.2.4. arguments - opcjonalne parametry
- 8.3. Moduły
- 8.3.1. Popularne moduły
- 8.3.2. Własne moduły
- Najlepsze praktyki
- Dodatkowe informacje
Rozdział 9. LDAP
- 9.1. Standardy i zalety LDAP
- 9.2. Instalacja OpenLDAP
- Krok 1. Instalacja pakietów
- Krok 2. Schematy (schema)
- Krok 3. Konfiguracja klienta i serwera
- Krok 4. Ustawienia bazy
- Krok 5. Test i start
- Krok 6. Dodawanie obiektów
- 9.3. Uwierzytelnienie z LDAP
- 9.3.1. Konfiguracja NSS
- 9.3.2. Konfiguracja PAM
- 9.4. Buforowanie nazw
- 9.4.1. NSCD
- 9.4.2. SSSD
- 9.5. Logowanie z programów
- 9.6. Połączenia szyfrowane
- 9.7. Replikacja
- 9.8. Zmiana hasła
- 9.9. Backup i restore
- 9.10. Monitoring i logging
- 9.11. Integracja z Kerberos
- 9.12. Program do zmiany hasła (Samba)
- 9.13. Źródła
Rozdział 10. SASL - wspólny język uwierzytelniania
- 10.1. Jak działa SASL
- 10.2. Mechanizmy SASL
- 10.3. Przykład w praktyce: SMTP
- 10.4. SASL na Linuksie
- 10.4.1. Fragment konfiguracji Postfiksa
- 10.4.2. Fragment konfiguracji saslauthd z LDAP
- 10.5. SASL w chmurze
- 10.6. Bezpieczeństwo
- 10.7. Monitoring i debugowanie
- 10.8. Alternatywy i przyszłość
- 10.9. Podsumowanie
Rozdział 11. SSH - zdalny dostęp do konsoli
- 11.1. Podstawowe pliki konfiguracyjne
- 11.2. Klucze SSH
- 11.3. Protokół SSH
- 11.4. Zdalne logowanie z kluczem
- 11.4.1. Klucze z hasłem
- 11.4.2. Wyłączanie haseł
- 11.5. Zdalne wykonanie programu
- 11.6. SSH w programach
- 11.6.1. Obsługa kluczy hosta (weryfikacja serwera)
- 11.6.2. Przykład: uwierzytelnianie kluczem (zalecana praktyka)
- 11.6.3. Przykład z AutoAddPolicy (tylko do testów)
- 11.7. Bezpieczeństwo i nowoczesne narzędzia
- 11.7.1. Analiza
- 11.7.2. Konfiguracja serwera
- 11.8. Konfiguracja Windows
- 11.9. Więcej informacji
Rozdział 12. VPN - wirtualna sieć prywatna
- 12.1. Poziomy bezpieczeństwa
- 12.2. Przykład 1. Bez autoryzacji i szyfrowania
- 12.3. Przykład 2. Ze wspólnym kluczem
- 12.4. Przykład 3. Z certyfikatami (PKI)
- 12.4.1. Instalacja i konfiguracja
- 12.4.2. Generowanie kluczy i certyfikatów
- 12.5. Konfiguracja firewalla
- 12.6. Uruchamianie i testowanie
- 12.7. Routing
- 12.8. Klienci graficzni
- 12.9. Bezpieczeństwo i dobre praktyki
- 12.10. Więcej informacji
- 12.11. Przykład: Docker VPN
- 12.11.1. Definicja obrazu Dockera
- 12.11.2. Pliki konfiguracyjne
- 12.11.3. Skrypt entrypoint.sh
- 12.11.4. Budowa i uruchamianie
- 12.11.5. Firewall i routing w hoście Dockera
- 12.11.6. Logi i debugowanie
- 12.11.7. Przykład: zdalny dostęp do bazy danych
- 12.11.8. Więcej informacji
Rozdział 13. Poczta
- 13.1. Architektura Postfiksa
- 13.2. Postfix i SSL/TLS
- 13.3. SMTP i SASL
- 13.3.1. /etc/postfix/main.cf
- 13.3.2. /etc/postfix/master.cf
- 13.3.3. Dovecot (IMAP/POP3S)
- 13.4. Wirtualne skrzynki - PostfixAdmin
- 13.4.1. Instalacja bazy
- 13.4.2. Instalacja PostfixAdmina
- 13.4.3. MySQL i konta wirtualne
- 13.4.4. PAM z MariaDB
- 13.4.5. Skrypt zmiany hasła
- 13.5. Anty-spam i antywirus
- 13.6. PGP/GPG
- 13.6.1. Testowanie szyfrowania
- 13.6.2. WKD (Web Key Directory)
- 13.7. Bezpieczeństwo i dobre praktyki
- 13.8. Więcej informacji
- 13.9. Przykład: Docker - filtr poczty
- 13.9.1. Dockerfile i uruchamianie
Rozdział 14. Integracja systemów Windows i Linux
- 14.1. Wprowadzenie
- 14.2. Scenariusz A. Samba jako kontroler domeny Active Directory
- 14.2.1. Wymagania wstępne
- 14.2.2. Inicjalizacja domeny (Provisioning)
- 14.2.3. Konfiguracja DNS
- 14.2.4. Zarządzanie domeną
- 14.2.5. Bezpieczeństwo w domenie AD
- 14.2.6. Redundancja kontrolerów domeny
- 14.3. Integracja serwerów Linux z domeną AD (klient SSSD)
- 14.4. Scenariusz B. Samba jako PDC w stylu NT4 (Legacy)
- 14.4.1. Konfiguracja serwera PDC
- 14.4.2. Konfiguracja klienta (Winbind)
- 14.4.3. Diagnostyka Winbind
- 14.5. Czego unikać (antywzorce bezpieczeństwa)
- 14.6. Skalowalność i ograniczenia
- 14.7. Samba dla ekspertów
- 14.7.1. Integracja PDC z backendem OpenLDAP
- 14.7.2. Synchronizacja między Active Directory a OpenLDAP
- 14.7.3. Problem replikacji haseł
- 14.7.4. Zmiana hasła w Active Directory z Linuksa
- 14.7.5. SASL i synchronizacja haseł LDAP z wykorzystaniem Samba4 AD i OpenLDAP
- 14.7.6. Rozwiązywanie problemów
- 14.7.7. Bezpieczeństwo
- 14.7.8. Literatura uzupełniająca
- 14.8. Kerberos i GSSAPI
- 14.8.1. Przepływ uwierzytelniania Kerberos
- 14.8.2. Konfiguracja MIT Kerberos
- 14.8.3. GSSAPI
- 14.8.4. Bezpieczeństwo
- 14.8.5. Rozwiązywanie problemów
Rozdział 15. Organizacja pracy administratora sieci
- 15.1. Wykorzystanie skryptów
- 15.2. Ansible
- 15.3. Docker Ansible
- 15.3.1. Jak to wykonać w praktyce
Rozdział 16. Magazyny sekretów
- 16.1. ssh-agent
- 16.1.1. gpg-agent
- 16.1.2. Bezpieczeństwo agentów
- 16.2. Plik z hasłami
- 16.2.1. KeePass
- 16.2.2. Alternatywne rozwiązania
- 16.2.3. Próba standaryzacji - SPIFFE
- 16.3. Sekrety w Docker Swarm
- 16.3.1. Wymagania
- 16.3.2. Inicjalizacja klastra Swarm
- 16.3.3. Tworzenie sekretów i zarządzanie nimi
- 16.3.4. Przykładowy skrypt Pythona
- 16.3.5. Dockerfile
- 16.3.6. Uruchomienie usługi Swarm
- 16.3.7. Najlepsze praktyki bezpieczeństwa
- 16.3.8. Częste problemy
- 16.3.9. Porównanie sekretów Swarm dla Linuksa i Windowsa
- 16.3.10. Źródła
- 16.4. Sekrety Kubernetesa
Rozdział 17. Standardy identyfikacji i autoryzacji w aplikacjach internetowych
- 17.1. Krótkie wprowadzenie do komunikacji internetowej
- 17.1.1. HTTP
- 17.1.2. Struktury danych
- 17.1.3. Sposoby przesyłania danych z protokołem HTTP
- 17.1.4. Algorytm analizy zapytania HTTP
- 17.1.5. RPC
- 17.1.6. RESTful
- 17.1.7. GraphQL
- 17.1.8. Apache Thrift
- 17.1.9. Podsumowanie
- 17.2. Proste metody zabezpieczeń
- 17.2.1. Poufny URL
- 17.2.2. Nie wyświetlaj swoich katalogów
- 17.2.3. Zabroń indeksowania robotom
- 17.2.4. Uwierzytelnianie za pomocą hasła
- 17.2.5. Hasło w JavaScripcie (przykład edukacyjny)
- 17.2.6. Ciasteczka i sesje
- 17.2.7. Bezpieczny przykład z sesjami PHP
- 17.2.8. Nowoczesne metody uwierzytelniania
- 17.2.9. Podsumowanie
- 17.3. CORS (Cross-Origin Resource Sharing)
- 17.3.1. Wprowadzenie
- 17.3.2. Same-Origin Policy (SOP)
- 17.3.3. Mechanizm działania CORS
- 17.3.4. Implementacja CORS
- 17.3.5. Ważne uwagi dotyczące bezpieczeństwa
- 17.3.6. Rozwiązywanie problemów z CORS
- 17.3.7. Podsumowanie
Rozdział 18. Standardy uwierzytelniania
- 18.1. Rys historyczny
- 18.1.1. OpenID 2.0
- 18.1.2. OAuth 1.0
- 18.2. OAuth 2.0
- 18.2.1. Role w OAuth 2.0
- 18.2.2. Główne scenariusze (granty) pozyskania tokena
- 18.3. OAuth 2.0 - szczegóły scenariuszy (grantów)
- 18.3.1. Authorization Code Grant
- 18.3.2. Implicit Grant (przestarzały)
- 18.3.3. Resource Owner Password Credentials Grant (niezalecany)
- 18.3.4. Client Credentials Grant
- 18.3.5. Refresh Token Grant
- 18.3.6. Authorization Code Grant z rozszerzeniem PKCE
- 18.3.7. Podsumowanie wyboru grantu
- 18.3.8. Informacje uzupełniające
- 18.4. Identyfikacja i autoryzacja z OpenID Connect
- 18.4.1. Idea OpenID Connect
- 18.4.2. Przepływy (Flows)
- 18.4.3. Scenariusze (główne przepływy)
- 18.4.4. Dodatkowe parametry żądania autoryzacji
- 18.4.5. Źródła i implementacje
- 18.5. SAML
- 18.6. CAS (Central Authentication Service)
- 18.6.1. Wprowadzenie
- 18.6.2. Podstawowe pojęcia
- 18.6.3. Architektura i przepływ uwierzytelniania
- 18.6.4. Obsługiwane protokoły i rozszerzenia
- 18.6.5. System wtyczek i modułów
- 18.6.6. Konfiguracja i wdrażanie
- 18.6.7. Zalety CAS
- 18.6.8. Wdrożenia
- 18.6.9. Dokumentacja i zasoby
- 18.6.10. Porównanie z innymi rozwiązaniami
Rozdział 19. Weryfikacja dwuetapowa
- 19.1. Algorytm TOTP
- 19.2. Klucze sprzętowe
- 19.2.1. Autentykator
- 19.2.2. Mechanizm komunikacji CTAP2
- 19.2.3. Szczegóły techniczne - konfiguracja i uzgadnianie kluczy
- 19.2.4. Wykorzystanie MFA z WebAuthn w praktyce
- 19.2.5. Dodatkowe informacje
Rozdział 20. Rozwój systemów uwierzytelniania
- 20.1. Środowisko dewelopera
- 20.1.1. Wykorzystanie OpenAPI
- 20.1.2. Narzędzia ekosystemu OpenAPI
- 20.1.3. Zaawansowane funkcje OpenAPI 3.x
- 20.1.4. Najlepsze praktyki dla OpenAPI
- 20.1.5. Integracja z systemami uwierzytelniania
- 20.1.6. Monitoring i zarządzanie API
- 20.1.7. Podsumowanie
- 20.2. Zastosowanie Postmana
- 20.3. Przykłady użycia Postmana
- 20.4. Polecane strony z przykładami i materiałami
- 20.4.1. Keycloak
- 20.4.2. Keycloak jako obraz Dockera lub pod w Kubernetesie
- 20.4.3. Rekomendowane dobre praktyki produkcyjne
- 20.5. Mozilla SOPS
- 20.5.1. Wprowadzenie
- 20.5.2. Instalacja SOPS
- 20.5.3. Konfiguracja GPG
- 20.5.4. Podstawowe użycie SOPS
- 20.5.5. Zaawansowana konfiguracja z plikiem .sops.yaml
- 20.5.6. Użycie z Age (nowoczesna alternatywa dla GPG)
- 20.5.7. Docker z SOPS
- 20.5.8. Integracja z CI/CD
- 20.5.9. Najlepsze praktyki i bezpieczeństwo
- 20.5.10. Rozwiązywanie problemów
- 20.5.11. Alternatywne mechanizmy szyfrowania
- 20.5.12. Podsumowanie
- 20.6. Wstęp do tworzenia aplikacji z wykorzystaniem chmurowych dostawców tożsamości
- 20.6.1. Wprowadzenie
- 20.6.2. Microsoft Azure
- 20.6.3. Chmura Google'a
- 20.6.4. Facebook Graph API
- 20.6.5. Bezpieczeństwo
- 20.6.6. Rozwiązywanie problemów
- 20.6.7. Podsumowanie
- 20.7. Projekt OAuth2-SDK
Rozdział 21. Prawo i technologia
- 21.1. Certyfikaty i podpisy elektroniczne
- 21.1.1. Definicje podpisu
- 21.1.2. Podpisy zaufane
- 21.2. SAML w systemach eID
- 21.2.1. Wprowadzenie
- 21.2.2. Architektura i przepływ uwierzytelniania
- 21.2.3. Wymagania implementacyjne i najlepsze praktyki
- 21.2.4. Federacje i metadane
- 21.2.5. Zarządzanie kluczami i zgodność
- 21.2.6. Przydatne biblioteki i narzędzia
- 21.2.7. Podsumowanie
- 21.3. Elektroniczny dowód osobisty i Węzeł Krajowy
- 21.3.1. Wprowadzenie
- 21.3.2. Struktura certyfikatów w e-dowodzie
- 21.3.3. Bezpieczeństwo i separacja certyfikatów
- 21.3.4. Infrastruktura klucza publicznego (PKI)
- 21.3.5. Węzeł Krajowy (login.gov.pl)
- 21.4. Podpisywanie dokumentów elektronicznych
- 21.4.1. Wprowadzenie
- 21.4.2. Algorytmy kryptograficzne
- 21.4.3. Standard XAdES - zaawansowane podpisy XML
- 21.4.4. Praktyczne implementacje w Pythonie
- 21.4.5. Nowoczesne formaty podpisów
- 21.4.6. Podpisy w chmurze - rewolucja w uwierzytelnianiu
- 21.4.7. Integracja z systemami enterprise
- 21.4.8. Bezpieczeństwo i zgodność prawna
- 21.4.9. Weryfikacja podpisów elektronicznych
- 21.4.10. Przyszłość podpisów elektronicznych
- 21.4.11. Podsumowanie
- 21.5. e-Doręczenia
- 21.5.1. Wprowadzenie
- 21.5.2. Adresacja bazowa
- 21.5.3. Procedura uzyskania dostępu
- 21.5.4. Wybrane funkcje API
- 21.5.5. Typowe błędy API
- 21.5.6. Bezpieczeństwo i autoryzacja
- 21.5.7. Przykładowa implementacja
- 21.5.8. Krok 1. Wygenerowanie i podpisanie tokena tożsamości klienta (JWT)
- 21.5.9. Krok 2. Wymiana JWT na token dostępu (Access Token)
- 21.5.10. Dokumentacja dodatkowa
- 21.6. Krajowy System e-Faktur (KSeF API 2.0)
- 21.6.1. Certyfikat kwalifikowany
- 21.6.2. Algorytm uwierzytelniania certyfikatem w KSeF 2.0
- 21.6.3. Aplikacja testowa w C
- 21.6.4. Wysyłanie faktur
- 21.6.5. Dodatkowe informacje
Źródła
| Kategoria: | Programowanie |
| Zabezpieczenie: |
Watermark
|
| ISBN: | 978-83-289-3914-1 |
| Rozmiar pliku: | 11 MB |