{"id":3645,"date":"2024-11-11T23:30:12","date_gmt":"2024-11-11T20:30:12","guid":{"rendered":"https:\/\/fatihsoysal.com\/blog\/nestjsde-ozel-rol-tabanli-erisim-kontrolu-ozel-koruyucular-kullanimi\/"},"modified":"2024-11-11T23:30:12","modified_gmt":"2024-11-11T20:30:12","slug":"nestjsde-ozel-rol-tabanli-erisim-kontrolu-ozel-koruyucular-kullanimi","status":"publish","type":"post","link":"https:\/\/fatihsoysal.com\/blog\/nestjsde-ozel-rol-tabanli-erisim-kontrolu-ozel-koruyucular-kullanimi\/","title":{"rendered":"NestJS&#8217;de \u00d6zel Rol Tabanl\u0131 Eri\u015fim Kontrol\u00fc: \u00d6zel Koruyucular Kullan\u0131m\u0131"},"content":{"rendered":"<p>NestJS&#8217;de \u00d6zel Rol Tabanl\u0131 Eri\u015fim Kontrol\u00fc: \u00d6zel Koruyucular Kullan\u0131m\u0131<\/p>\n<p>NestJS&#8217;de g\u00fcvenli bir \u015fekilde uygulama geli\u015ftirmek i\u00e7in, **rol tabanl\u0131 eri\u015fim kontrol\u00fc (RBAC)**  etkin bir \u015fekilde kullan\u0131lmal\u0131d\u0131r. RBAC, kullan\u0131c\u0131lar\u0131n veya rollerin sistemdeki belirli kaynaklara eri\u015fimini y\u00f6netmenizi sa\u011flar. Bu makalede, NestJS&#8217;de \u00f6zel rol tabanl\u0131 eri\u015fim kontrol\u00fc uygulaman\u0131n basit ve etkili bir yolunu, **\u00f6zel koruyucular** kullanarak inceleyece\u011fiz.<\/p>\n<h2>Neden \u00d6zel Koruyucular?<\/h2>\n<p>NestJS&#8217;de **\u00f6zel koruyucular**, belirli i\u015flemlere veya rotalara eri\u015fim sa\u011flamak i\u00e7in **y\u00f6netilen g\u00fcvenlik mekanizmalar\u0131** olarak kullan\u0131l\u0131r. **\u00d6zel koruyucular** kullanarak, belirli bir role sahip kullan\u0131c\u0131lar\u0131n eri\u015fimine izin verilen veya engellenen rotalar\u0131 tan\u0131mlayabilirsiniz. Bu, uygulama g\u00fcvenli\u011finizi iyile\u015ftirmek i\u00e7in kullan\u0131labilecek g\u00fc\u00e7l\u00fc bir \u00f6zelliktir.<\/p>\n<h2>Bir \u00d6zel Koruyucu Olu\u015fturma<\/h2>\n<p>\u00d6zel bir koruyucu olu\u015fturmak i\u00e7in, **@Injectable()** dekorat\u00f6r\u00fcn\u00fc kullanarak bir s\u0131n\u0131f tan\u0131mlar ve **CanActivate** aray\u00fcz\u00fcn\u00fc uygular\u0131z. **CanActivate** aray\u00fcz\u00fc, iste\u011fin eri\u015fim izninin olup olmad\u0131\u011f\u0131na dair bir boolean de\u011fer d\u00f6nd\u00fcren **canActivate()** metodunu tan\u0131mlar.<\/p>\n<p>&#8220;`typescript<br \/>\nimport { Injectable, CanActivate, ExecutionContext, SetMetadata } from &#8216;@nestjs\/common&#8217;;<br \/>\nimport { Reflector } from &#8216;@nestjs\/core&#8217;;<\/p>\n<p>@Injectable()<br \/>\nexport class RolesGuard implements CanActivate {<br \/>\n  constructor(private reflector: Reflector) {}<\/p>\n<p>  canActivate(context: ExecutionContext): boolean {<br \/>\n    const requiredRoles = this.reflector.get<string[]>(&#8216;roles&#8217;, context.getHandler());<br \/>\n    const user = context.switchToHttp().getRequest().user;<\/p>\n<p>    if (!user || !user.roles) {<br \/>\n      return false;<br \/>\n    }<\/p>\n<p>    return requiredRoles.some((role) => user.roles.includes(role));<br \/>\n  }<br \/>\n}<br \/>\n&#8220;`<\/p>\n<p>Bu \u00f6rnekte, **RolesGuard** adl\u0131 bir koruyucu, iste\u011fin hangi role sahip olmas\u0131 gerekti\u011fini belirten **@Roles()** dekorat\u00f6r\u00fcn\u00fc kullanarak tan\u0131mlanm\u0131\u015ft\u0131r. **canActivate()** metodu, iste\u011fin roles meta verisini kontrol eder ve iste\u011fi g\u00f6nderen kullan\u0131c\u0131n\u0131n ilgili role sahip olup olmad\u0131\u011f\u0131n\u0131 do\u011frular. \u0130stek, iste\u011fin role sahip olup olmad\u0131\u011f\u0131na g\u00f6re true veya false de\u011feri d\u00f6nd\u00fcr\u00fcr.<\/p>\n<h2>\u00d6zel Koruyucular\u0131n Uygulamaya Eklenmesi<\/h2>\n<p>Bir \u00f6zel koruyucunun bir rotaya uygulanmas\u0131 olduk\u00e7a basittir. **@UseGuards()** dekorat\u00f6r\u00fcn\u00fc, koruyucu s\u0131n\u0131f\u0131n\u0131 parametre olarak kullanarak rotaya ekleyin.  Bu, iste\u011fin rotan\u0131n tan\u0131mlad\u0131\u011f\u0131 role sahip oldu\u011fundan emin olmak i\u00e7in, koruyucuyu kullanacak \u015fekilde yap\u0131land\u0131r\u0131r.<\/p>\n<p>&#8220;`typescript<br \/>\nimport { Controller, Get, UseGuards } from &#8216;@nestjs\/common&#8217;;<br \/>\nimport { RolesGuard } from &#8216;.\/roles.guard&#8217;;<br \/>\nimport { Roles } from &#8216;.\/roles.decorator&#8217;;<\/p>\n<p>@Controller(&#8216;users&#8217;)<br \/>\n@UseGuards(RolesGuard)<br \/>\nexport class UsersController {<br \/>\n  @Get()<br \/>\n  @Roles(&#8216;admin&#8217;)<br \/>\n  getUsers() {<br \/>\n    \/\/ Kullan\u0131c\u0131lar listesi d\u00f6nd\u00fcr<br \/>\n  }<br \/>\n}<br \/>\n&#8220;`<\/p>\n<p>Yukar\u0131daki \u00f6rnekte, **UsersController**&#8217;da bulunan **getUsers** metodu **admin** rol\u00fc gerektiren **@Roles** dekorat\u00f6r\u00fcn\u00fc kullanarak i\u015faretlenir. Bu, **RolesGuard**&#8217;\u0131n **getUsers** metoduna eri\u015fmeden \u00f6nce \u00e7a\u011fr\u0131laca\u011f\u0131 ve iste\u011fin **admin** rol\u00fcne sahip olup olmad\u0131\u011f\u0131n\u0131 kontrol edece\u011fi anlam\u0131na gelir.<\/p>\n<h2>\u00d6zet<\/h2>\n<p>NestJS&#8217;de \u00f6zel koruyucular kullanarak, kullan\u0131c\u0131lar\u0131 veya rolleri sisteminizde g\u00fcvenli bir \u015fekilde y\u00f6netmek i\u00e7in g\u00fc\u00e7l\u00fc bir rol tabanl\u0131 eri\u015fim kontrol\u00fc (RBAC) sistemi kurabilirsiniz. Bu makalede a\u00e7\u0131klanan ad\u0131mlar\u0131 izleyerek, g\u00fcvenlik gereksinimlerinizi kar\u015f\u0131layan \u00f6zelle\u015ftirilmi\u015f bir RBAC sistemi olu\u015fturabilirsiniz.  <\/p>\n<p>E\u011fer NestJS&#8217;de g\u00fcvenlik ve eri\u015fim kontrol\u00fc hakk\u0131nda daha fazla bilgi edinmek isterseniz, <a href=\"https:\/\/fatihsoysal.com\">fatihsoysal.com<\/a> web sitesini ziyaret edebilir ve di\u011fer makalelerime g\u00f6z atabilirsiniz. <\/p>\n<h2>Faydal\u0131 Kaynaklar<\/h2>\n<ul>\n<li><a href=\"https:\/\/docs.nestjs.com\/guards\">NestJS Dok\u00fcmanlar\u0131: Guards<\/a><\/li>\n<li><a href=\"https:\/\/dev.to\/imzihad21\/custom-role-based-access-control-in-nestjs-using-custom-guards-jol\">Custom Role-Based Access Control in NestJS Using Custom Guards<\/a><\/li>\n<\/ul>\n<p>#Etiketler<br \/>\nNestJS, \u00d6zel Koruyucular, Rol Tabanl\u0131 Eri\u015fim Kontrol\u00fc, RBAC, G\u00fcvenlik, Eri\u015fim Kontrol\u00fc,  NestJS G\u00fcvenli\u011fi<\/p>\n","protected":false},"excerpt":{"rendered":"NestJS&#8217;de \u00d6zel Rol Tabanl\u0131 Eri\u015fim Kontrol\u00fc: \u00d6zel Koruyucular Kullan\u0131m\u0131 NestJS&#8217;de g\u00fcvenli bir \u015fekilde uygulama geli\u015ftirmek i\u00e7in, **rol tabanl\u0131&hellip;","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"csco_page_header_type":"","csco_page_load_nextpost":"","csco_page_subscribe_form":"","csco_page_contact_form":"","footnotes":""},"categories":[1],"tags":[],"class_list":{"0":"post-3645","1":"post","2":"type-post","3":"status-publish","4":"format-standard","6":"category-genel","7":"cs-entry","8":"cs-video-wrap"},"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v20.5 (Yoast SEO v25.3.1) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>NestJS&#039;de \u00d6zel Rol Tabanl\u0131 Eri\u015fim Kontrol\u00fc: \u00d6zel Koruyucular Kullan\u0131m\u0131<\/title>\n<meta name=\"description\" content=\"NestJS&#039;de g\u00fcvenli bir \u015fekilde uygulama geli\u015ftirmek i\u00e7in, **rol tabanl\u0131 eri\u015fim kontrol\u00fc (RBAC)** etkin bir \u015fekilde kullan\u0131lmal\u0131d\u0131r. RBAC, kullan\u0131c\u0131lar\u0131n veya rollerin sistemdeki belirli kaynaklara eri\u015fimini y\u00f6netmenizi sa\u011flar. Bu makalede, NestJS&#039;de \u00f6zel rol tabanl\u0131 eri\u015fim kontrol\u00fc uygulaman\u0131n basit ve etkili bir yolunu, **\u00f6zel koruyucular** kullanarak inceleyece\u011fiz.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/fatihsoysal.com\/blog\/nestjsde-ozel-rol-tabanli-erisim-kontrolu-ozel-koruyucular-kullanimi\/\" \/>\n<meta property=\"og:locale\" content=\"tr_TR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"NestJS&#039;de \u00d6zel Rol Tabanl\u0131 Eri\u015fim Kontrol\u00fc: \u00d6zel Koruyucular Kullan\u0131m\u0131\" \/>\n<meta property=\"og:description\" content=\"NestJS&#039;de g\u00fcvenli bir \u015fekilde uygulama geli\u015ftirmek i\u00e7in, **rol tabanl\u0131 eri\u015fim kontrol\u00fc (RBAC)** etkin bir \u015fekilde kullan\u0131lmal\u0131d\u0131r. RBAC, kullan\u0131c\u0131lar\u0131n veya rollerin sistemdeki belirli kaynaklara eri\u015fimini y\u00f6netmenizi sa\u011flar. Bu makalede, NestJS&#039;de \u00f6zel rol tabanl\u0131 eri\u015fim kontrol\u00fc uygulaman\u0131n basit ve etkili bir yolunu, **\u00f6zel koruyucular** kullanarak inceleyece\u011fiz.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/fatihsoysal.com\/blog\/nestjsde-ozel-rol-tabanli-erisim-kontrolu-ozel-koruyucular-kullanimi\/\" \/>\n<meta property=\"og:site_name\" content=\"Kodlar\u0131n Gizemli D\u00fcnyas\u0131\" \/>\n<meta property=\"article:published_time\" content=\"2024-11-11T20:30:12+00:00\" \/>\n<meta name=\"author\" content=\"Fatih Soysal\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Yazan:\" \/>\n\t<meta name=\"twitter:data1\" content=\"Fatih Soysal\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tahmini okuma s\u00fcresi\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 dakika\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/nestjsde-ozel-rol-tabanli-erisim-kontrolu-ozel-koruyucular-kullanimi\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/nestjsde-ozel-rol-tabanli-erisim-kontrolu-ozel-koruyucular-kullanimi\/\"},\"author\":{\"name\":\"Fatih Soysal\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"headline\":\"NestJS&#8217;de \u00d6zel Rol Tabanl\u0131 Eri\u015fim Kontrol\u00fc: \u00d6zel Koruyucular Kullan\u0131m\u0131\",\"datePublished\":\"2024-11-11T20:30:12+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/nestjsde-ozel-rol-tabanli-erisim-kontrolu-ozel-koruyucular-kullanimi\/\"},\"wordCount\":571,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/nestjsde-ozel-rol-tabanli-erisim-kontrolu-ozel-koruyucular-kullanimi\/#respond\"]}],\"copyrightYear\":\"2024\",\"copyrightHolder\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/nestjsde-ozel-rol-tabanli-erisim-kontrolu-ozel-koruyucular-kullanimi\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/nestjsde-ozel-rol-tabanli-erisim-kontrolu-ozel-koruyucular-kullanimi\/\",\"name\":\"NestJS'de \u00d6zel Rol Tabanl\u0131 Eri\u015fim Kontrol\u00fc: \u00d6zel Koruyucular Kullan\u0131m\u0131\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\"},\"datePublished\":\"2024-11-11T20:30:12+00:00\",\"description\":\"NestJS'de g\u00fcvenli bir \u015fekilde uygulama geli\u015ftirmek i\u00e7in, **rol tabanl\u0131 eri\u015fim kontrol\u00fc (RBAC)** etkin bir \u015fekilde kullan\u0131lmal\u0131d\u0131r. RBAC, kullan\u0131c\u0131lar\u0131n veya rollerin sistemdeki belirli kaynaklara eri\u015fimini y\u00f6netmenizi sa\u011flar. Bu makalede, NestJS'de \u00f6zel rol tabanl\u0131 eri\u015fim kontrol\u00fc uygulaman\u0131n basit ve etkili bir yolunu, **\u00f6zel koruyucular** kullanarak inceleyece\u011fiz.\",\"breadcrumb\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/nestjsde-ozel-rol-tabanli-erisim-kontrolu-ozel-koruyucular-kullanimi\/#breadcrumb\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/nestjsde-ozel-rol-tabanli-erisim-kontrolu-ozel-koruyucular-kullanimi\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/nestjsde-ozel-rol-tabanli-erisim-kontrolu-ozel-koruyucular-kullanimi\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Anasayfa\",\"item\":\"https:\/\/fatihsoysal.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"NestJS&#8217;de \u00d6zel Rol Tabanl\u0131 Eri\u015fim Kontrol\u00fc: \u00d6zel Koruyucular Kullan\u0131m\u0131\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/\",\"name\":\"Fatihsoysal.com\",\"description\":\"Blog - Yaz\u0131l\u0131m D\u00fcnyas\u0131 Tecr\u00fcbelerim\",\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/fatihsoysal.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"tr\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\",\"name\":\"Fatih Soysal\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"tr\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png\",\"contentUrl\":\"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png\",\"width\":512,\"height\":512,\"caption\":\"Fatih Soysal\"},\"logo\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/\"},\"description\":\"Kullan\u0131m ve kodlama m\u00fckemmeliyetini odak alan uygulamalar olu\u015fturma deneyimine sahip, profesyonel olarak 15+ y\u0131l \u00fczeri deneyime sahip bir yaz\u0131l\u0131m m\u00fchendisi.\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/author\/fatihsoysal\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"NestJS'de \u00d6zel Rol Tabanl\u0131 Eri\u015fim Kontrol\u00fc: \u00d6zel Koruyucular Kullan\u0131m\u0131","description":"NestJS'de g\u00fcvenli bir \u015fekilde uygulama geli\u015ftirmek i\u00e7in, **rol tabanl\u0131 eri\u015fim kontrol\u00fc (RBAC)** etkin bir \u015fekilde kullan\u0131lmal\u0131d\u0131r. RBAC, kullan\u0131c\u0131lar\u0131n veya rollerin sistemdeki belirli kaynaklara eri\u015fimini y\u00f6netmenizi sa\u011flar. Bu makalede, NestJS'de \u00f6zel rol tabanl\u0131 eri\u015fim kontrol\u00fc uygulaman\u0131n basit ve etkili bir yolunu, **\u00f6zel koruyucular** kullanarak inceleyece\u011fiz.","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:\/\/fatihsoysal.com\/blog\/nestjsde-ozel-rol-tabanli-erisim-kontrolu-ozel-koruyucular-kullanimi\/","og_locale":"tr_TR","og_type":"article","og_title":"NestJS'de \u00d6zel Rol Tabanl\u0131 Eri\u015fim Kontrol\u00fc: \u00d6zel Koruyucular Kullan\u0131m\u0131","og_description":"NestJS'de g\u00fcvenli bir \u015fekilde uygulama geli\u015ftirmek i\u00e7in, **rol tabanl\u0131 eri\u015fim kontrol\u00fc (RBAC)** etkin bir \u015fekilde kullan\u0131lmal\u0131d\u0131r. RBAC, kullan\u0131c\u0131lar\u0131n veya rollerin sistemdeki belirli kaynaklara eri\u015fimini y\u00f6netmenizi sa\u011flar. Bu makalede, NestJS'de \u00f6zel rol tabanl\u0131 eri\u015fim kontrol\u00fc uygulaman\u0131n basit ve etkili bir yolunu, **\u00f6zel koruyucular** kullanarak inceleyece\u011fiz.","og_url":"https:\/\/fatihsoysal.com\/blog\/nestjsde-ozel-rol-tabanli-erisim-kontrolu-ozel-koruyucular-kullanimi\/","og_site_name":"Kodlar\u0131n Gizemli D\u00fcnyas\u0131","article_published_time":"2024-11-11T20:30:12+00:00","author":"Fatih Soysal","twitter_card":"summary_large_image","twitter_misc":{"Yazan:":"Fatih Soysal","Tahmini okuma s\u00fcresi":"3 dakika"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/fatihsoysal.com\/blog\/nestjsde-ozel-rol-tabanli-erisim-kontrolu-ozel-koruyucular-kullanimi\/#article","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/nestjsde-ozel-rol-tabanli-erisim-kontrolu-ozel-koruyucular-kullanimi\/"},"author":{"name":"Fatih Soysal","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"headline":"NestJS&#8217;de \u00d6zel Rol Tabanl\u0131 Eri\u015fim Kontrol\u00fc: \u00d6zel Koruyucular Kullan\u0131m\u0131","datePublished":"2024-11-11T20:30:12+00:00","mainEntityOfPage":{"@id":"https:\/\/fatihsoysal.com\/blog\/nestjsde-ozel-rol-tabanli-erisim-kontrolu-ozel-koruyucular-kullanimi\/"},"wordCount":571,"commentCount":0,"publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"inLanguage":"tr","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/fatihsoysal.com\/blog\/nestjsde-ozel-rol-tabanli-erisim-kontrolu-ozel-koruyucular-kullanimi\/#respond"]}],"copyrightYear":"2024","copyrightHolder":{"@id":"https:\/\/fatihsoysal.com\/blog\/#organization"}},{"@type":"WebPage","@id":"https:\/\/fatihsoysal.com\/blog\/nestjsde-ozel-rol-tabanli-erisim-kontrolu-ozel-koruyucular-kullanimi\/","url":"https:\/\/fatihsoysal.com\/blog\/nestjsde-ozel-rol-tabanli-erisim-kontrolu-ozel-koruyucular-kullanimi\/","name":"NestJS'de \u00d6zel Rol Tabanl\u0131 Eri\u015fim Kontrol\u00fc: \u00d6zel Koruyucular Kullan\u0131m\u0131","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/#website"},"datePublished":"2024-11-11T20:30:12+00:00","description":"NestJS'de g\u00fcvenli bir \u015fekilde uygulama geli\u015ftirmek i\u00e7in, **rol tabanl\u0131 eri\u015fim kontrol\u00fc (RBAC)** etkin bir \u015fekilde kullan\u0131lmal\u0131d\u0131r. RBAC, kullan\u0131c\u0131lar\u0131n veya rollerin sistemdeki belirli kaynaklara eri\u015fimini y\u00f6netmenizi sa\u011flar. Bu makalede, NestJS'de \u00f6zel rol tabanl\u0131 eri\u015fim kontrol\u00fc uygulaman\u0131n basit ve etkili bir yolunu, **\u00f6zel koruyucular** kullanarak inceleyece\u011fiz.","breadcrumb":{"@id":"https:\/\/fatihsoysal.com\/blog\/nestjsde-ozel-rol-tabanli-erisim-kontrolu-ozel-koruyucular-kullanimi\/#breadcrumb"},"inLanguage":"tr","potentialAction":[{"@type":"ReadAction","target":["https:\/\/fatihsoysal.com\/blog\/nestjsde-ozel-rol-tabanli-erisim-kontrolu-ozel-koruyucular-kullanimi\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/fatihsoysal.com\/blog\/nestjsde-ozel-rol-tabanli-erisim-kontrolu-ozel-koruyucular-kullanimi\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Anasayfa","item":"https:\/\/fatihsoysal.com\/blog\/"},{"@type":"ListItem","position":2,"name":"NestJS&#8217;de \u00d6zel Rol Tabanl\u0131 Eri\u015fim Kontrol\u00fc: \u00d6zel Koruyucular Kullan\u0131m\u0131"}]},{"@type":"WebSite","@id":"https:\/\/fatihsoysal.com\/blog\/#website","url":"https:\/\/fatihsoysal.com\/blog\/","name":"Fatihsoysal.com","description":"Blog - Yaz\u0131l\u0131m D\u00fcnyas\u0131 Tecr\u00fcbelerim","publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/fatihsoysal.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"tr"},{"@type":["Person","Organization"],"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1","name":"Fatih Soysal","image":{"@type":"ImageObject","inLanguage":"tr","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png","contentUrl":"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png","width":512,"height":512,"caption":"Fatih Soysal"},"logo":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/"},"description":"Kullan\u0131m ve kodlama m\u00fckemmeliyetini odak alan uygulamalar olu\u015fturma deneyimine sahip, profesyonel olarak 15+ y\u0131l \u00fczeri deneyime sahip bir yaz\u0131l\u0131m m\u00fchendisi.","url":"https:\/\/fatihsoysal.com\/blog\/author\/fatihsoysal\/"}]}},"yoast_meta":{"yoast_wpseo_title":"","yoast_wpseo_metadesc":"","yoast_wpseo_canonical":""},"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/3645","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/comments?post=3645"}],"version-history":[{"count":0,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/3645\/revisions"}],"wp:attachment":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/media?parent=3645"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/categories?post=3645"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/tags?post=3645"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}