Domain ortamında güvenli bir sistem için her zaman son kullanıcılara sınırlı bir hesap veririz. Domain users olarak isimlendirdiğimiz bu grubun üyeleri hem domain ortamı için hem de kendi bilgisayarlarında sınırlı yetkiler ile aslında pek çok işini rahatlıkla yapabilmektedir. Hatta bazı basit bilgilere de sahipseniz hemen hemen her sorunu yetki vermeden çözebilirsiniz (Hangi dizine ve hangi kayıt defteri anahtarına yetki vereceğinizi biliyorsanız). Ancak yine de bazı durumlarda bir programın admin hakkı ile çalışması gereki. Böyle durumlar için aşağıdaki gibi Run as administrator dediğimiz bir yöntem ile ibr defaya mahsus bir programın yönetici hakları ile çalışmasını sağlayabiliriz.
Not: Blog yazımda sıkça “yükseltme” kelimesi görebilirsiniz, aslında bu yetki yükseltme anlamında kullanılacaktır, her seferinde yazmamak için bilgi veriyoruz.
Teknoloji her geçen gün değişiyor ve artık bu ihtiyaç için sudo kullanabileceğiz.
Announcing Windows 11 Insider Preview Build 26052 (Canary and Dev Channels) | Windows Insider Blog
Windows 11 insider preview build 26052 ile beraber artık Windows için Sudo özelliğinin duyurulduğunu gördük. Peki nedir Windows için Sudo? Kullanıcıların yükseltilmiş komutları yani yetki gerektiren ve bizim runa as administrator olarak isimlendirdiğimiz komutları doğrudan yükseltilmemiş bir konsol oturumundan yani run as administrator olarak çalıştırmadan komutu yetkili bir şekilde çalıştırmaları için yeni bir yoldur. Yeni bir yükseltilmiş konsol açmak zorunda kalmadan bir komutu yükseltmek isteyen kullanıcılar için ergonomik ve tanıdık bir çözümdür.
Peki bu özelliği nasıl aktif ediyoruz? Şu anda eğer uygun bir Windows 11 sürümüne sahipseniz
Settings > For Developers
Bu yolu izleyerek açabilirsiniz. Yine isterseniz yükseltilmiş yani yetkilendirilmiş bir cmd konsolunu da kullanabilirsiniz (biraz ilginç değil mi? Ama ilk aktifleştirmek için yetki istemesi normal)
sudo config –enable (confiuration_options)
Windows için Sudo şu anda üç farklı yapılandırma seçeneğini desteklemektedir
In a new window (forceNewWindow)
Input closed (disableInput)
Inline (normal)
Aynı şekilde yapılandırma ayarlarını yukarıda verdiğim gibi cmd ile de değiştirebilirsiniz. Yani isterseniz GUI isterseniz komut seti kullanabilirsiniz.
Configuration Option 1: In a New Window
Bu yapılandırmada, Windows için Sudo yeni bir yükseltilmiş konsol penceresi açacak ve komutu bu pencerede çalıştıracaktır. Bu, sudo etkinleştirildiğinde varsayılan yapılandırma seçeneğidir.
sudo netstat -ab
Yeni bir pencere açılacak ve komut bu pencerede çalıştırılacaktır:
Configuration Option 2: Input Closed
Bu yapılandırmada, Sudo for Windows yükseltilmiş süreci geçerli pencerede çalıştıracaktır, ancak yeni süreç standard input’a kapalı olarak ortaya çıkacaktır. Bu yeni sürecin herhangi bir kullanıcı girdisi kabul etmeyeceği anlamına gelir, bu nedenle bu yapılandırma yükseltmeden sonra daha fazla kullanıcı girdisi gerektiren süreçler için çalışmayacaktır. Eğer çalıştırma sonrasında kullanıcı girdisine ihtiyaç duyan bir program, exe vb için kullanılması uygun değildir.
Configuration Option 3: Inline
Bu yapılandırma sudo’nun diğer işletim sistemlerindeki davranışına en çok benzeyen yapılandırmadır. Bu yapılandırmada Windows için Sudo yükseltilmiş süreci standard input, standard output ve standard error’ ların tümü geçerli pencereye bağlı olarak çalıştıracaktır. Bu yeni yükseltilmiş sürecin girdi alabileceği ve çıktıyı geçerli pencereye yönlendirebileceği anlamına gelir.
Nasıl çalışıyor?
Bir işlemi sudo ile komut satırından yükseltirken kullanıcıdan yükseltmeyi onaylamasını isteyen bir UAC iletişim kutusu görüntülenecektir:
Kullanıcı yükseltmeyi onayladığında, süreç kullanıcı tarafından seçilen yapılandırma seçeneğine göre yükseltilecektir.
Daha fazla bilgi için aşağıdaki video’ yu izlemenizi öneriyorum;
How does Sudo for Windows work? (youtube.com)
Kaynak
Introducing Sudo for Windows! – Windows Command Line (microsoft.com)