{"id":8845,"date":"2026-08-22T19:20:00","date_gmt":"2026-08-22T17:20:00","guid":{"rendered":"https:\/\/www.lukaswojcik.com\/blog\/?p=8845"},"modified":"2026-08-13T14:30:16","modified_gmt":"2026-08-13T12:30:16","slug":"bezpieczne-rest-api-wordpress-oauth-niestandardowe-endpointy","status":"publish","type":"post","link":"https:\/\/www.lukaswojcik.com\/blog\/pl\/tworzenie-stron-internetowych\/bezpieczne-rest-api-wordpress-oauth-niestandardowe-endpointy\/","title":{"rendered":"Bezpieczne REST API w WordPressie: OAuth 2.0 i niestandardowe, autoryzowane endpointy"},"content":{"rendered":"\r\n<h2 class=\"wp-block-heading\">Bezpieczne REST API w WordPressie: OAuth 2.0 i niestandardowe, autoryzowane endpointy<\/h2>\r\n\r\n\r\n\r\n<p class=\"wp-block-paragraph\">Integracja WordPressa z zewn\u0119trznymi platformami SaaS, potokami przetwarzania danych czy skryptami automatyzuj\u0105cymi wdro\u017cenia wymaga udost\u0119pnienia wydajnych i stabilnych interfejs\u00f3w API. Poleganie na domy\u015blnych endpointach REST API lub prostych has\u0142ach aplikacji (Application Passwords) wi\u0105\u017ce si\u0119 cz\u0119sto z nadawaniem zbyt szerokich uprawnie\u0144 w obr\u0119bie ca\u0142ego systemu CMS. Projektowanie bezpiecznej warstwy integracyjnej klasy Enterprise wymaga wdro\u017cenia protoko\u0142u OAuth 2.0 oraz tworzenia dedykowanych, niestandardowych endpoint\u00f3w REST z granulowan\u0105 kontrol\u0105 dost\u0119pu.<\/p>\r\n\r\n\r\n\r\n<h2 class=\"wp-block-heading\">1. Przewaga OAuth 2.0 nad tradycyjnymi has\u0142ami aplikacji<\/h2>\r\n\r\n\r\n\r\n<p class=\"wp-block-paragraph\">Standardowe has\u0142a aplikacji w WordPressie autoryzuj\u0105 \u017c\u0105dania z u\u017cyciem Basic Authentication po protokole HTTPS. Cho\u0107 rozwi\u0105zanie to sprawdza si\u0119 w prostych skryptach, odziedzicza ono pe\u0142en zakres uprawnie\u0144 administracyjnych powi\u0105zanego konta u\u017cytkownika. W z\u0142o\u017conych architekturach protok\u00f3\u0142 OAuth 2.0 gwarantuje wy\u017cszy poziom separacji kryptograficznej oraz kontroli nad bezpiecze\u0144stwem:<\/p>\r\n\r\n\r\n\r\n<ul class=\"wp-block-list\">\r\n<li><strong>\u015acis\u0142e ograniczanie zakresu (Scopes):<\/strong> Tokeny dost\u0119pu OAuth 2.0 mog\u0105 zosta\u0107 precyzyjnie ograniczone do operacji odczytu lub zapisu w konkretnych obszarach (np. zezwolenie wy\u0142\u0105cznie na aktualizacj\u0119 wybranych tabel w bazie danych bez dost\u0119pu do zarz\u0105dzania u\u017cytkownikami czy konfiguracj\u0105 wtyczek).<\/li>\r\n\r\n\r\n\r\n<li><strong>Kr\u00f3tki czas \u017cycia token\u00f3w i rotacja:<\/strong> Tokeny dost\u0119powe wygasaj\u0105 automatycznie po okre\u015blonym czasie, wykorzystuj\u0105c mechanizm rotacji refresh token\u00f3w w celu zminimalizowania ryzyka w przypadku kompromitacji zewn\u0119trznej aplikacji SaaS.<\/li>\r\n<\/ul>\r\n\r\n\r\n\r\n<figure class=\"lw-diagram\">\n<img loading=\"lazy\" src=\"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/diagrams\/hand-restapi-pl.png\" width=\"1120\" height=\"660\" decoding=\"async\"\n     alt=\"\u017b\u0105danie przechodzi przez cztery bramy \u2014 nag\u0142\u00f3wek Bearer, wa\u017cno\u015b\u0107 tokenu, schemat \u0142adunku i limit \u017c\u0105da\u0144 \u2014 zanim wykona si\u0119 handler REST WordPressa\">\n<figcaption>Ka\u017cda kontrola dzieje si\u0119 przed handlerem, nie w nim: permission_callback decyduje, kto wchodzi, schemat argument\u00f3w \u2014 co mo\u017ce wej\u015b\u0107, a limit \u017c\u0105da\u0144 \u2014 jak cz\u0119sto.<\/figcaption>\n<\/figure>\n\n<h2 class=\"wp-block-heading\">2. Projektowanie niestandardowych endpoint\u00f3w o minimalnej powierzchni ataku<\/h2>\r\n\r\n\r\n\r\n<p class=\"wp-block-paragraph\">Aby zapobiec nieautoryzowanej eksfiltracji danych lub niepo\u017c\u0105danym modyfikacjom w bazie danych, dedykowane endpointy musz\u0105 by\u0107 rejestrowane za pomoc\u0105 funkcji <code>register_rest_route()<\/code> ze \u015bcis\u0142\u0105 walidacj\u0105 wej\u015bcia, sanityzacj\u0105 oraz rygorystyczn\u0105 funkcj\u0105 zwrotn\u0105 uprawnie\u0144 (<code>permission_callback<\/code>).<\/p>\r\n\r\n\r\n\r\n<pre class=\"wp-block-code\"><code>\/\/ Przyk\u0142ad: Bezpieczny niestandardowy endpoint REST API z walidacj\u0105 tokenu OAuth\r\nadd_action('rest_api_init', function () {\r\n    register_rest_route('lw-solutions\/v1', '\/ingest-telemetry', [\r\n        'methods'             =&gt; 'POST',\r\n        'callback'            =&gt; 'lw_handle_telemetry_ingestion',\r\n        'permission_callback' =&gt; function ($request) {\r\n            \/\/ Weryfikacja tokenu Bearer OAuth lub podpisu HMAC JWT\r\n            $auth_header = $request-&gt;get_header('authorization');\r\n            if (!$auth_header || !str_starts_with($auth_header, 'Bearer ')) {\r\n                return new WP_Error('rest_forbidden', 'Missing authorization token', ['status' =&gt; 401]);\r\n            }\r\n            $token = substr($auth_header, 7);\r\n            return lw_verify_api_token($token); \/\/ Musi zwr\u00f3ci\u0107 true lub WP_Error\r\n        },\r\n        'args'                =&gt; [\r\n            'payload_hash' =&gt; [\r\n                'required'          =&gt; true,\r\n                'type'              =&gt; 'string',\r\n                'validate_callback' =&gt; function($param) {\r\n                    return (bool) preg_match('\/^[a-f0-9]{64}$\/i', $param);\r\n                }\r\n            ]\r\n        ]\r\n    ]);\r\n});<\/code><\/pre>\r\n\r\n\r\n\r\n<h2 class=\"wp-block-heading\">3. Dobre praktyki zabezpieczania integracji API<\/h2>\r\n\r\n\r\n\r\n<p class=\"wp-block-paragraph\">Wystawianie endpoint\u00f3w REST dla zewn\u0119trznych skrypt\u00f3w automatyzacji wymaga wdro\u017cenia kluczowych mechanizm\u00f3w obronnych:<\/p>\r\n\r\n\r\n\r\n<ul class=\"wp-block-list\">\r\n<li><strong>Limity zapyta\u0144 (Rate Limiting &amp; Throttling):<\/strong> Ograniczanie cz\u0119stotliwo\u015bci \u017c\u0105da\u0144 na poziomie serwera lub przy u\u017cyciu bazy Redis zapobiega atakom typu Denial-of-Service (DoS) na zasobocho\u0142onne endpointy.<\/li>\r\n\r\n\r\n\r\n<li><strong>Wymuszanie schemat\u00f3w \u0142adunku (JSON Schema):<\/strong> Opieranie si\u0119 na \u015bcis\u0142ych regu\u0142ach walidacji w definicji argument\u00f3w sprawia, \u017ce niepoprawne struktury danych s\u0105 odrzucane przez sam silnik REST API przed wykonaniem jakiejkolwiek logiki backendowej w PHP.<\/li>\r\n\r\n\r\n\r\n<li><strong>Wy\u0142\u0105czanie nieu\u017cywanych \u015bcie\u017cek domy\u015blnych:<\/strong> Nieu\u017cywane, wbudowane trasy (np. <code>\/wp\/v2\/users<\/code>) powinny by\u0107 programowo blokowane dla nieautoryzowanego ruchu w celu uniemo\u017cliwienia enumeracji nazw u\u017cytkownik\u00f3w.<\/li>\r\n<\/ul>\r\n\r\n\r\n\r\n<h2 class=\"wp-block-heading\">Podsumowanie<\/h2>\r\n\r\n\r\n\r\n<p class=\"wp-block-paragraph\">Bezpieczna architektura REST API w WordPressie wymaga odej\u015bcia od nadmiernie uprzywilejowanej autoryzacji Basic Authentication na rzecz kontrolowanych zakres\u00f3w OAuth 2.0. Po\u0142\u0105czenie rygorystycznych weryfikacji w <code>permission_callback<\/code>, wyra\u017ce\u0144 regularnych sprawdzaj\u0105cych argumenty oraz wyizolowanych tras integracyjnych gwarantuje bezawaryjn\u0105 automatyzacj\u0119 bez zwi\u0119kszania powierzchni ataku na system CMS.<\/p>\r\n\n\n<div class=\"lw-quellen\">\n<h2>\u0179r\u00f3d\u0142a<\/h2>\n<ul>\n<li><a href=\"https:\/\/developer.wordpress.org\/rest-api\/\" target=\"_blank\" rel=\"noopener noreferrer\">WordPress REST API handbook<\/a><\/li>\n<li><a href=\"https:\/\/owasp.org\/www-project-top-ten\/\" target=\"_blank\" rel=\"noopener noreferrer\">OWASP Top 10<\/a><\/li>\n<\/ul>\n<\/div>","protected":false},"excerpt":{"rendered":"<p>Techniczny przewodnik po zabezpieczaniu integracji REST API w WordPressie: wdra\u017canie zakres\u00f3w OAuth 2.0, autoryzowane niestandardowe endpointy i \u015bcis\u0142a walidacja schemat\u00f3w.<\/p>\n","protected":false},"author":1,"featured_media":11664,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[152],"tags":[92280,92051,92238,92077,92286],"class_list":["post-8845","post","type-post","status-publish","format-standard","hentry","category-tworzenie-stron-internetowych","tag-php-pl","tag-rest-api-pl","tag-tutorial-pl","tag-web-security-pl","tag-wordpress-pl"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.1 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Bezpieczne REST API w WordPressie: OAuth 2.0 i niestandardowe, autoryzowane endpointy - Lukas Wojcik - Blog<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.lukaswojcik.com\/blog\/pl\/tworzenie-stron-internetowych\/bezpieczne-rest-api-wordpress-oauth-niestandardowe-endpointy\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Bezpieczne REST API w WordPressie: OAuth 2.0 i niestandardowe, autoryzowane endpointy - Lukas Wojcik - Blog\" \/>\n<meta property=\"og:description\" content=\"Techniczny przewodnik po zabezpieczaniu integracji REST API w WordPressie: wdra\u017canie zakres\u00f3w OAuth 2.0, autoryzowane niestandardowe endpointy i \u015bcis\u0142a walidacja schemat\u00f3w.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.lukaswojcik.com\/blog\/pl\/tworzenie-stron-internetowych\/bezpieczne-rest-api-wordpress-oauth-niestandardowe-endpointy\/\" \/>\n<meta property=\"og:site_name\" content=\"Lukas Wojcik - Blog\" \/>\n<meta property=\"article:published_time\" content=\"2026-08-22T17:20:00+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/08\/hero-8845-bezpieczne-rest-api-wordpress-oauth--c.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1200\" \/>\n\t<meta property=\"og:image:height\" content=\"630\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"luky\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"luky\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/pl\\\/tworzenie-stron-internetowych\\\/bezpieczne-rest-api-wordpress-oauth-niestandardowe-endpointy\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/pl\\\/tworzenie-stron-internetowych\\\/bezpieczne-rest-api-wordpress-oauth-niestandardowe-endpointy\\\/\"},\"author\":{\"name\":\"luky\",\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/#\\\/schema\\\/person\\\/895f7604f9b6b71aad9bba33af28d0f9\"},\"headline\":\"Bezpieczne REST API w WordPressie: OAuth 2.0 i niestandardowe, autoryzowane endpointy\",\"datePublished\":\"2026-08-22T17:20:00+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/pl\\\/tworzenie-stron-internetowych\\\/bezpieczne-rest-api-wordpress-oauth-niestandardowe-endpointy\\\/\"},\"wordCount\":481,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/#\\\/schema\\\/person\\\/895f7604f9b6b71aad9bba33af28d0f9\"},\"image\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/pl\\\/tworzenie-stron-internetowych\\\/bezpieczne-rest-api-wordpress-oauth-niestandardowe-endpointy\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/08\\\/hero-8845-bezpieczne-rest-api-wordpress-oauth--c.png\",\"keywords\":[\"PHP\",\"REST API\",\"Tutorial\",\"Web Security\",\"WordPress\"],\"articleSection\":[\"Tworzenie stron internetowych\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/pl\\\/tworzenie-stron-internetowych\\\/bezpieczne-rest-api-wordpress-oauth-niestandardowe-endpointy\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/pl\\\/tworzenie-stron-internetowych\\\/bezpieczne-rest-api-wordpress-oauth-niestandardowe-endpointy\\\/\",\"url\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/pl\\\/tworzenie-stron-internetowych\\\/bezpieczne-rest-api-wordpress-oauth-niestandardowe-endpointy\\\/\",\"name\":\"Bezpieczne REST API w WordPressie: OAuth 2.0 i niestandardowe, autoryzowane endpointy - Lukas Wojcik - Blog\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/pl\\\/tworzenie-stron-internetowych\\\/bezpieczne-rest-api-wordpress-oauth-niestandardowe-endpointy\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/pl\\\/tworzenie-stron-internetowych\\\/bezpieczne-rest-api-wordpress-oauth-niestandardowe-endpointy\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/08\\\/hero-8845-bezpieczne-rest-api-wordpress-oauth--c.png\",\"datePublished\":\"2026-08-22T17:20:00+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/pl\\\/tworzenie-stron-internetowych\\\/bezpieczne-rest-api-wordpress-oauth-niestandardowe-endpointy\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/pl\\\/tworzenie-stron-internetowych\\\/bezpieczne-rest-api-wordpress-oauth-niestandardowe-endpointy\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/pl\\\/tworzenie-stron-internetowych\\\/bezpieczne-rest-api-wordpress-oauth-niestandardowe-endpointy\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/08\\\/hero-8845-bezpieczne-rest-api-wordpress-oauth--c.png\",\"contentUrl\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/08\\\/hero-8845-bezpieczne-rest-api-wordpress-oauth--c.png\",\"width\":1200,\"height\":630,\"caption\":\"Bezpieczne REST API w WordPressie: OAuth 2.0 i niestandardowe, autoryzowane endpointy\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/pl\\\/tworzenie-stron-internetowych\\\/bezpieczne-rest-api-wordpress-oauth-niestandardowe-endpointy\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Bezpieczne REST API w WordPressie: OAuth 2.0 i niestandardowe, autoryzowane endpointy\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/\",\"name\":\"Lukas Wojcik - Blog\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/#\\\/schema\\\/person\\\/895f7604f9b6b71aad9bba33af28d0f9\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/#\\\/schema\\\/person\\\/895f7604f9b6b71aad9bba33af28d0f9\",\"name\":\"luky\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/07\\\/lw-x2.jpg\",\"url\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/07\\\/lw-x2.jpg\",\"contentUrl\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/07\\\/lw-x2.jpg\",\"width\":424,\"height\":636,\"caption\":\"luky\"},\"logo\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/07\\\/lw-x2.jpg\"},\"sameAs\":[\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\"],\"url\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/author\\\/luky\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Bezpieczne REST API w WordPressie: OAuth 2.0 i niestandardowe, autoryzowane endpointy - Lukas Wojcik - Blog","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.lukaswojcik.com\/blog\/pl\/tworzenie-stron-internetowych\/bezpieczne-rest-api-wordpress-oauth-niestandardowe-endpointy\/","og_locale":"en_US","og_type":"article","og_title":"Bezpieczne REST API w WordPressie: OAuth 2.0 i niestandardowe, autoryzowane endpointy - Lukas Wojcik - Blog","og_description":"Techniczny przewodnik po zabezpieczaniu integracji REST API w WordPressie: wdra\u017canie zakres\u00f3w OAuth 2.0, autoryzowane niestandardowe endpointy i \u015bcis\u0142a walidacja schemat\u00f3w.","og_url":"https:\/\/www.lukaswojcik.com\/blog\/pl\/tworzenie-stron-internetowych\/bezpieczne-rest-api-wordpress-oauth-niestandardowe-endpointy\/","og_site_name":"Lukas Wojcik - Blog","article_published_time":"2026-08-22T17:20:00+00:00","og_image":[{"width":1200,"height":630,"url":"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/08\/hero-8845-bezpieczne-rest-api-wordpress-oauth--c.png","type":"image\/png"}],"author":"luky","twitter_card":"summary_large_image","twitter_misc":{"Written by":"luky","Est. reading time":"3 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.lukaswojcik.com\/blog\/pl\/tworzenie-stron-internetowych\/bezpieczne-rest-api-wordpress-oauth-niestandardowe-endpointy\/#article","isPartOf":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/pl\/tworzenie-stron-internetowych\/bezpieczne-rest-api-wordpress-oauth-niestandardowe-endpointy\/"},"author":{"name":"luky","@id":"https:\/\/www.lukaswojcik.com\/blog\/#\/schema\/person\/895f7604f9b6b71aad9bba33af28d0f9"},"headline":"Bezpieczne REST API w WordPressie: OAuth 2.0 i niestandardowe, autoryzowane endpointy","datePublished":"2026-08-22T17:20:00+00:00","mainEntityOfPage":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/pl\/tworzenie-stron-internetowych\/bezpieczne-rest-api-wordpress-oauth-niestandardowe-endpointy\/"},"wordCount":481,"commentCount":0,"publisher":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/#\/schema\/person\/895f7604f9b6b71aad9bba33af28d0f9"},"image":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/pl\/tworzenie-stron-internetowych\/bezpieczne-rest-api-wordpress-oauth-niestandardowe-endpointy\/#primaryimage"},"thumbnailUrl":"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/08\/hero-8845-bezpieczne-rest-api-wordpress-oauth--c.png","keywords":["PHP","REST API","Tutorial","Web Security","WordPress"],"articleSection":["Tworzenie stron internetowych"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.lukaswojcik.com\/blog\/pl\/tworzenie-stron-internetowych\/bezpieczne-rest-api-wordpress-oauth-niestandardowe-endpointy\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.lukaswojcik.com\/blog\/pl\/tworzenie-stron-internetowych\/bezpieczne-rest-api-wordpress-oauth-niestandardowe-endpointy\/","url":"https:\/\/www.lukaswojcik.com\/blog\/pl\/tworzenie-stron-internetowych\/bezpieczne-rest-api-wordpress-oauth-niestandardowe-endpointy\/","name":"Bezpieczne REST API w WordPressie: OAuth 2.0 i niestandardowe, autoryzowane endpointy - Lukas Wojcik - Blog","isPartOf":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/pl\/tworzenie-stron-internetowych\/bezpieczne-rest-api-wordpress-oauth-niestandardowe-endpointy\/#primaryimage"},"image":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/pl\/tworzenie-stron-internetowych\/bezpieczne-rest-api-wordpress-oauth-niestandardowe-endpointy\/#primaryimage"},"thumbnailUrl":"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/08\/hero-8845-bezpieczne-rest-api-wordpress-oauth--c.png","datePublished":"2026-08-22T17:20:00+00:00","breadcrumb":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/pl\/tworzenie-stron-internetowych\/bezpieczne-rest-api-wordpress-oauth-niestandardowe-endpointy\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.lukaswojcik.com\/blog\/pl\/tworzenie-stron-internetowych\/bezpieczne-rest-api-wordpress-oauth-niestandardowe-endpointy\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.lukaswojcik.com\/blog\/pl\/tworzenie-stron-internetowych\/bezpieczne-rest-api-wordpress-oauth-niestandardowe-endpointy\/#primaryimage","url":"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/08\/hero-8845-bezpieczne-rest-api-wordpress-oauth--c.png","contentUrl":"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/08\/hero-8845-bezpieczne-rest-api-wordpress-oauth--c.png","width":1200,"height":630,"caption":"Bezpieczne REST API w WordPressie: OAuth 2.0 i niestandardowe, autoryzowane endpointy"},{"@type":"BreadcrumbList","@id":"https:\/\/www.lukaswojcik.com\/blog\/pl\/tworzenie-stron-internetowych\/bezpieczne-rest-api-wordpress-oauth-niestandardowe-endpointy\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.lukaswojcik.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Bezpieczne REST API w WordPressie: OAuth 2.0 i niestandardowe, autoryzowane endpointy"}]},{"@type":"WebSite","@id":"https:\/\/www.lukaswojcik.com\/blog\/#website","url":"https:\/\/www.lukaswojcik.com\/blog\/","name":"Lukas Wojcik - Blog","description":"","publisher":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/#\/schema\/person\/895f7604f9b6b71aad9bba33af28d0f9"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.lukaswojcik.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":["Person","Organization"],"@id":"https:\/\/www.lukaswojcik.com\/blog\/#\/schema\/person\/895f7604f9b6b71aad9bba33af28d0f9","name":"luky","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/07\/lw-x2.jpg","url":"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/07\/lw-x2.jpg","contentUrl":"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/07\/lw-x2.jpg","width":424,"height":636,"caption":"luky"},"logo":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/07\/lw-x2.jpg"},"sameAs":["https:\/\/www.lukaswojcik.com\/blog"],"url":"https:\/\/www.lukaswojcik.com\/blog\/author\/luky\/"}]}},"_links":{"self":[{"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/posts\/8845","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/comments?post=8845"}],"version-history":[{"count":2,"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/posts\/8845\/revisions"}],"predecessor-version":[{"id":10032,"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/posts\/8845\/revisions\/10032"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/media\/11664"}],"wp:attachment":[{"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/media?parent=8845"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/categories?post=8845"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/tags?post=8845"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}