Aracılığıyla paylaş


Hizmet Kaydı Listesi

Her hizmet girişi yüklü hizmetlerin veritabanından okundukça, SCM hizmet için bir hizmet kaydı oluşturur. Hizmet kaydı şunları içerir:

  • Hizmet adı
  • Başlangıç türü (otomatik başlatma veya talep-başlangıç)
  • Hizmet durumu (SERVICE_STATUS yapısına bakın)
    Tür
    Geçerli durum
    Kabul edilebilir denetim kodları
    Çıkış kodu
    Bekleme ipucu
  • Bağımlılık listesi işaretçisi

Bir hesabın kullanıcı adı ve parolası, hizmet yüklenirken belirtilir. SCM, kullanıcı adını kayıt defterinde ve parolayı Yerel Güvenlik Yetkilisi'nin (LSA) güvenli bir bölümünde depolar. Sistem yöneticisi, süresi hiç dolmamış parolalara sahip hesaplar oluşturabilir. Alternatif olarak, sistem yöneticisi süresi dolan parolalara sahip hesaplar oluşturabilir ve parolaları düzenli aralıklarla değiştirerek hesapları yönetebilir.

SCM, bir kullanıcı hesabının parolasının iki kopyasını, geçerli parolayı ve yedekleme parolasını tutar. Hizmet ilk kez yüklendiğinde belirtilen parola geçerli parola olarak depolanır ve yedekleme parolası başlatılmaz. SCM, hizmeti kullanıcı hesabının güvenlik bağlamında çalıştırmaya çalıştığında geçerli parolayı kullanır. Geçerli parola başarıyla kullanılırsa, yedekleme parolası olarak da kaydedilir. Parola ChangeServiceConfig işleviyle veya Hizmetler denetim masası yardımcı programıyla değiştirilirse, yeni parola geçerli parola olarak depolanır ve önceki parola yedekleme parolası olarak depolanır. SCM hizmeti başlatmayı denerse ve geçerli parola başarısız olursa yedekleme parolasını kullanır. Yedekleme parolası başarıyla kullanılırsa, geçerli parola olarak kaydedilir.

SCM, bir hizmet SetServiceStatus işlevini kullanarak durum bildirimleri gönderdiğinde hizmet durumunu güncelleştirir. SCM, bir hizmetten olduğu gibi durum bildirimleri almak yerine G/Ç sistemini sorgulayarak sürücü hizmetinin durumunu korur.

Bir hizmet, SetServiceBits işlevini çağırarak ek tür bilgilerini kaydedebilir. NetServerGetInfo ve NetServerEnum işlevleri desteklenen hizmet türlerini alır.