Özet
pwpolicy [-h]
pwpolicy [-v] [-a kimlik_doğrulayıcı] [-p parola] [-u kullanıcı_adı | -c bilgisayar_adı] [-n düğüm_adı] komut komut_argümanı
pwpolicy [-v] [-a kimlik_doğrulayıcı] [-p parola] [-u kullanıcı_adı | -c bilgisayar_adı] [-n düğüm_adı] komut "ilke1=değer1 ilke2=değer2 ..."
Açıklama
pwpolicy, parola ilkelerini yönetir.
Seçenekler
-a kimlik_doğrulayıcı: Kimlik doğrulayıcının adını belirtir.-c bilgisayar_adı: Değiştirilecek bilgisayar hesabının adını belirtir.-p parola: Parolayı belirtir. Güvenli bir giriş istemi kullanmak için bu seçeneği atlayın.-u kullanıcı_adı: Değiştirilecek kullanıcı hesabının adını belirtir.-n düğüm_adı: Belirli bir dizin düğümünü kullanır. Varsayılan olarak arama düğümü kullanılır.-v: Ayrıntılı bilgi verir.-h: Yardımı gösterir.
Komutlar
-getglobalpolicy: Genel ilkeleri alır. Kullanımdan kaldırıldı.-setglobalpolicy: Genel ilkeleri ayarlar. Kullanımdan kaldırıldı.-getpolicy: Bir kullanıcı için ilkeleri alır. Kullanımdan kaldırıldı.--get-effective-policy: Kullanıcıya uygulanan genel ve kullanıcı ilkelerinin birleşimini alır. Kullanımdan kaldırıldı.-setpolicy: Bir kullanıcı için ilkeleri ayarlar. Kullanımdan kaldırıldı.-setpassword: Bir kullanıcı için yeni parola ayarlar. Yönetici olmayan kullanıcılar bu komutu kendi parolalarını değiştirmek için kullanabilir.-enableuser: Parola ilkesi olayı nedeniyle devre dışı bırakılmış bir kullanıcı hesabını etkinleştirir.-disableuser: Kullanıcı hesabını devre dışı bırakır.-getglobalhashtypes: Bu sistem için diskte saklanan varsayılan parola karmalarının (hash) listesini döndürür.-setglobalhashtypes: Bu sistem için diskte saklanan varsayılan parola karmalarının listesini düzenler.-gethashtypes: Bir kullanıcı hesabı için diskte saklanan parola karmalarının listesini döndürür.-sethashtypes: Bir kullanıcı hesabı için diskte saklanan parola karmalarının listesini düzenler.-setaccountpolicies: Belirtilen kullanıcı için hesap ilkelerini ayarlar. Kullanıcı belirtilmezse genel hesap ilkelerini ayarlar. Tek bir argüman alır: ilkeleri içeren dosyanın adı.-getaccountpolicies: Belirtilen kullanıcı için hesap ilkelerini alır. Kullanıcı belirtilmezse genel hesap ilkelerini alır.-clearaccountpolicies: Belirtilen kullanıcının tüm hesap ilkelerini kaldırır. Kullanıcı belirtilmezse genel hesap ilkelerini kaldırır.-authentication-allowed: İlkelerin kullanıcının kimlik doğrulamasına izin verip vermediğini belirler.
Hesap İlkeleri
Hesap ilkeleri, kullanımdan kaldırılmış olan eski genel ve kullanıcı ilkelerinin yerine geçmiştir.
Hesap ilkeleri, her ilke kategorisi için bir anahtar olmak üzere üç anahtar içeren bir sözlük (dictionary) olarak belirtilir. Sözlüğün tüm ilke kategorilerini içermesi zorunlu değildir.
İlke kategorileri için geçerli anahtarlar şunlardır:
policyCategoryAuthentication: Kullanıcının ne zaman oturum açabileceğini veya kimlik doğrulayabileceğini kontrol eder.policyCategoryPasswordChange: Kullanıcının parolasını değiştirmesinin gerekip gerekmediğini veya ne zaman gerekeceğini belirler.policyCategoryPasswordContent: Parolada izin verilen karakter kümesini kontrol eder.
Her ilke kategorisi, bireysel ilke sözlüklerinden oluşan bir dizi (array) içerir. İlke sözlüğündeki geçerli anahtarlar şunlardır:
policyIdentifier: İlke için kullanıcı tarafından tanımlanmış benzersiz tanımlayıcı.policyParameters: İlke içinde kullanılacak veya görüntüleme amacıyla kullanılacak parametrelerin sözlüğünü içeren isteğe bağlı anahtar.policyContent: Üzerinden birNSPredicatehazırlanabilecek gerçek ilke dizesi. Kullanıcının kaydından gelen belirli parametreler, ilkenin parametreler sözlüğü ve geçerli herhangi birNSPredicateanahtar sözcüğü kullanılabilir.
Aşağıda örnek bir hesap ilkesi sözlüğü verilmiştir. Sözlükte tüm ilke kategorilerinin bulunması gerekmez.
<dict>
<key>policyCategoryPasswordAuthentication</key>
<array>
<dict>
<key>policyContent</key>
<string>policyAttributeMaximumFailedAuthentications < policyAttributeFailedAuthentications</string>
<key>policyIdentifier</key>
<string>failed auths</string>
</dict>
</array>
<key>policyCategoryPasswordChange</key>
<array>
<dict>
<key>policyContent</key>
<string>policyAttributeCurrentTime > policyAttributeLastPasswordChangeTime + policyAttributeExpiresEveryNDays * DAYS_TO_SECONDS</string>
<key>policyIdentifier</key>
<string>Change every 30 days</string>
<key>policyParameters</key>
<dict>
<key>policyAttributeExpiresEveryNDays</key>
<integer>30</integer>
</dict>
</dict>
</array>
<key>policyCategoryPasswordContent</key>
<array>
<dict>
<key>policyContent</key>
<string>policyAttributePassword matches '.{3,}+'</string>
<key>policyIdentifier</key>
<string>com.apple.policy.legacy.minChars</string>
<key>policyParameters</key>
<dict>
<key>minimumLength</key>
<integer>3</integer>
</dict>
</dict>
</array>
</dict>
Hesap İlkesi Anahtar Sözcükleri
İlke içeriğinde aşağıdaki anahtar sözcükler kullanılabilir. İlke değerlendirildiğinde, kullanıcının kaydındaki değerler anahtar sözcüğün yerine konur. İlke parametreleri sözlüğünde bulunduğu sürece, kullanıcı tarafından tanımlanmış anahtar sözcükler de kullanılabilir.
policyAttributePassword: Kullanıcının yeni parolası.policyAttributePasswordHashes: Yeni parolanın karmaları. Geçmişle karşılaştırılır.policyAttributePasswordHistory: Kullanıcının parola geçmişi.policyAttributePasswordHistoryDepth: Parola geçmişinin ne kadarının saklanacağı.policyAttributeCurrentDate:NSDateolarak geçerli tarih ve saat. YerelleştirilmişNSDatedeğerlerini karşılaştırmak için kullanılır.policyAttributeCurrentTime: Saniye cinsinden geçerli tarih ve saat. Tarih/saat hesaplamaları için kullanılır; örneğin tarih + aralık.policyAttributeCurrentDayOfWeek: Haftanın geçerli günü (tam sayı).policyAttributeCurrentTimeOfDay: Günün geçerli saati (0000-2359arası).policyAttributeFailedAuthentications: Üst üste başarısız kimlik doğrulama girişimi sayısı.policyAttributeMaximumFailedAuthentications: İzin verilen maksimum üst üste başarısız kimlik doğrulama girişimi sayısı.policyAttributeLastFailedAuthenticationTime: Son başarısız kimlik doğrulamasının zamanı.policyAttributeLastAuthenticationTime: Son başarılı kimlik doğrulamasının zamanı.policyAttributeLastPasswordChangeTime: Son parola değişikliğinin zamanı.policyAttributeNewPasswordRequiredTime: Yeni bir parolanın gerekli olduğu zaman.policyAttributeCreationTime: Hesabın hazırlanma zamanı.policyAttributeConsecutiveCharacters: Parolada art arda gelen, yani aynı olan, karakter sayısı.policyAttributeMaximumConsecutiveCharacters: Parolada izin verilen maksimum art arda gelen karakter sayısı.policyAttributeSequentialCharacters: Parolada sıralı, artan veya azalan, karakter sayısı.policyAttributeMaximumSequentialCharacters: Parolada izin verilen maksimum sıralı, artan veya azalan, karakter sayısı.policyAttributeExpiresEveryNDays: Herngünde bir sona erer.policyAttributeDaysUntilExpiration: Yukarıdakinin eş anlamlısı.policyAttributeEnableOnDate: Hesabın etkinleştirildiği tarih (yerelleştirilmişNSDate).policyAttributeExpiresOnDate: Hesabın süresinin dolacağı tarih (yerelleştirilmişNSDate).policyAttributeEnableOnDayOfWeek: Hesabın etkinleştirildiği haftanın günü (tam sayı).policyAttributeExpiresOnDayOfWeek: Hesabın süresinin dolacağı haftanın günü (tam sayı).policyAttributeEnableAtTimeOfDay: Hesabın etkinleştirildiği günün saati (tam sayı,0000-2359).policyAttributeExpiresAtTimeOfDay: Hesabın süresinin dolacağı günün saati (tam sayı,0000-2359).
Eski Genel İlkeler
Aşağıdaki ilkeler kullanımdan kaldırılmıştır.
usingHistory:0= kullanıcı mevcut parolayı yeniden kullanabilir;1= kullanıcı mevcut parolayı yeniden kullanamaz;2-15= kullanıcı sonnparolayı yeniden kullanamaz.usingExpirationDate:1ise kullanıcınınexpirationDateGMTiçindeki tarihte parolasını değiştirmesi gerekir.usingHardExpirationDate:1ise kullanıcının hesabıhardExpireDateGMTiçindeki tarihte devre dışı bırakılır.requiresAlpha:1ise kullanıcının parolasında[A-Z][a-z]aralığında bir karakter bulunması zorunludur.requiresNumeric:1ise kullanıcının parolasında[0-9]aralığında bir karakter bulunması zorunludur.expirationDateGMT: Parolanın süresinin dolacağı tarih. Biçimaa/gg/yyolmalıdır.hardExpireDateGMT: Kullanıcı hesabının devre dışı bırakılacağı tarih. Biçimaa/gg/yyolmalıdır.validAfter: Kullanıcı hesabının etkinleştirileceği tarih. Biçimaa/gg/yyolmalıdır.maxMinutesUntilChangePassword: Kullanıcının parolasını bu aralıkta değiştirmesi gerekir.maxMinutesUntilDisabled: Kullanıcının hesabı bu aralıktan sonra devre dışı bırakılır.maxMinutesOfNonUse: Kullanıcı hesabına bu süre zarfında erişilmezse hesap devre dışı bırakılır.maxFailedLoginAttempts: Başarısız giriş sayısı bu sayıyı aşarsa kullanıcı hesabı devre dışı bırakılır.minChars: Parolalar en azminCharskarakter içermelidir.maxChars: ParolalarmaxCharskarakter ile sınırlıdır.
Ek Eski Kullanıcı İlkeleri
Aşağıdaki kullanıcı ilkeleri kullanımdan kaldırılmıştır.
isDisabled:1ise kullanıcı hesabının kimlik doğrulamasına hiçbir zaman izin verilmez.isAdminUser:1ise bu kullanıcı parola sunucusundaki hesapları yönetebilir.newPasswordRequired:1ise kullanıcıya bir sonraki kimlik doğrulamasında yeni bir parola sorulur. Parola değiştirmeyi desteklemeyen uygulamalar kimlik doğrulaması yapamaz.canModifyPasswordforSelf:1ise kullanıcı parolayı değiştirebilir.
Saklanan Karma Türleri
CRAM-MD5: IMAP için gereklidir.RECOVERABLE: APOP ve WebDAV için gereklidir. Yalnızca Mac OS X Server sürümünde mevcuttur.SALTED-SHA512-PBKDF2:loginwindowiçin varsayılandır.SALTED-SHA512:loginwindowiçin eski karma.SMB-NT: Windows NT/XP dosya paylaşımı ile uyumluluk için gereklidir.SALTED-SHA1:loginwindowiçin eski karma.SHA1:loginwindowiçin eski karma.
Örnekler
Genel ilkeleri almak için:
pwpolicy -getglobalpolicy
Genel ilkeleri ayarlamak için:
pwpolicy -a kimlik_doğrulayıcı -setglobalpolicy "minChars=4 maxFailedLoginAttempts=3"
Belirli bir kullanıcı hesabı için ilkeleri almak için:
pwpolicy -u kullanıcı -getpolicy
pwpolicy -u kullanıcı -n /NetInfo/DefaultLocalNode -getpolicy
Belirli bir kullanıcı hesabı için ilkeleri ayarlamak için:
pwpolicy -a kimlik_doğrulayıcı -u kullanıcı -setpolicy "minChars=4 maxFailedLoginAttempts=3"
Bir kullanıcının parolasını değiştirmek için:
pwpolicy -a kimlik_doğrulayıcı -u kullanıcı -setpassword yeni_parola
Yerel hesaplar için karma türleri listesini ayarlamak için:
pwpolicy -a kimlik_doğrulayıcı -setglobalhashtypes SMB-LAN-MANAGER off SMB-NT on
Ayrıca Bakınız
PasswordService(8)