Zapobieganie atakom typu CSRF (Cross-Site Request Forgery)
Aby zapobiec atakom typu CSRF
(Cross-Site Request Forgery), wszystkie wywołania interfejsu API operacji w chmurze wymagają ustawienia znacznika IBM-CSRF-Token w nagłówku HTTP każdego żądania.
Aplikacja operacyjna musi uzyskać znacznik CSRF przez wywołanie
interfejsu REST API
POST /instance/services/csrf_token z
treścią JSON, która jest podobna do poniższego przykładu.{
"requested_lifetime": 7200
}Właściwość requested_lifetime służy do
podawania czasu ważności (liczba sekund) znacznika. Jeśli
wartość nie zostanie podana, domyślnie przyjmuje się maksymalną dozwoloną wartość 7200 sekund. Razem
z wywołaniem zawsze należy wysłać ładunek (nawet jeśli będzie on pusty). Znacznik jest zwracany jako łańcuch we właściwości csrf_token obiektu odpowiedzi.Jeśli wywołanie zawiera znacznik, który utracił ważność, kończy się niepowodzeniem z kodem odpowiedzi HTTP 403 i błędem.CWMGG0015E:
The request was blocked because the IBM-CSRF-TOKEN token header is
not validw odpowiedzi. Aby pobrać nowy token, aplikacja operacji musi ponownie wywołać operację POST /instance/services/csrf_token . Aplikacja może następnie użyć nowego znacznika, aby ponownie
wysłać żądanie, które zostało zakończone niepowodzeniem.