Aracılığıyla paylaş


Graph API kullanarak parolayı değiştirmeye çalıştığınızda hata Authorization_RequestDenied

Bu makalede, Graph API kullanarak parola değiştirmeye çalışırken Authorization_RequestDenied hatası aldığınız bir sorunu giderme hakkında bilgi sağlanır.

Orijinal ürün sürümü: Microsoft Entra ID
Özgün KB numarası: 3004133

Belirtiler

Microsoft Entra kullanıcının parolasını değiştirmeye çalışırsınız. Bu kullanıcının Kuruluş Rolü ayarı herhangi bir "Yönetici" seçeneğine ayarlanırsa işlem başarısız olur. Aşağıdaki hata iletisini oluşturur:

{"odata.error":{"code":"Authorization_RequestDenied","message":{"lang":"en","value":"İşlemi tamamlamak için yeterli ayrıcalık yok." }} }

Uygulamanıza veya Uygulama Hizmet Sorumlunuza Dizin verilerini okuma ve yazma izni verdiğinizde, uygulama Graph API kullanarak tipik bir Microsoft Entra kullanıcısının parolasını değiştirebilir. Bu ayar aşağıdaki ekran görüntüsünde gösterilmiştir.

Dizin verileri okuma ve yazma izninin seçildiği uygulama izinlerinin ekran görüntüsü.

Aşağıdaki ekran görüntüsünde gösterildiği gibi, kullanıcının Kuruluş Rolü ayarını değiştirerek bir Microsoft Entra kullanıcıyı yönetici olarak temsilci olarak atayabilirsiniz.

Kuruluş Rolü seçeneğinin Kullanıcı olarak ayarlandığını gösteren ekran görüntüsü.

Neden

Bu sorun, Yönetici kuruluş rollerinden herhangi birine sahip olan kullanıcıların Office 365 yönetim rollerinde Şirket Yöneticisi veya Kullanıcı Hesabı Yöneticisi üyesi olmadığı için oluşur.

Çözüm

Not

Azure AD ve MSOnline PowerShell modülleri 30 Mart 2024 itibarıyla kullanım dışı bırakılmıştır. Daha fazla bilgi edinmek için kullanımdan kaldırma güncelleştirmesini okuyun. Bu tarihten sonra bu modüllere yönelik destek, Microsoft Graph PowerShell SDK'sına geçiş yardımı ve güvenlik düzeltmeleriyle sınırlıdır. Kullanım dışı bırakılan modüller Mart 30 2025'e kadar çalışmaya devam edecektir.

Microsoft Entra ID (eski adıyla Azure AD) ile etkileşime geçmek için Microsoft Graph PowerShell'e geçiş öneririz. Sık sorulan geçiş soruları için Bkz. Geçiş SSS. Not: MSOnline'ın 1.0.x sürümleri 30 Haziran 2024'den sonra kesintiye neden olabilir.

Bu sorunu çözmek için uygulamanızı Office 365 yönetim rollerinde Şirket Yöneticisi'ne ekleyin. Bunu yapmak için, Windows PowerShell (MSOL) cmdlet'leri için aşağıdaki tüm Azure AD modülünü çalıştırın:

Connect-MsolService

Sizden kiracınızın kimlik bilgilerini ister. Microsoft Entra yönetici kullanıcı adınızı biçiminde admin@tenant.onmicrosoft.com kullanabilmeniz gerekir.

$displayName = "Application Name" 
$objectId = (Get-MsolServicePrincipal -SearchString $displayName).ObjectId

"Uygulama Adı"nı "Uygulama Hizmet Sorumlunuzun" adıyla değiştirin.

$roleName = "Company Administrator"
Add-MsolRoleMember -RoleName $roleName -RoleMemberType ServicePrincipal -RoleMemberObjectId $objectId

"Uygulama Hizmeti Sorumlunuzu" Şirket Yöneticisi rolüne ekler.

Ayrıca, Microsoft Entra kullanıcı aşağıdaki Yönetici kuruluş rollerinden birine sahipse uygulamanızı Office 365 yönetim rollerinde Kullanıcı Hesabı Yöneticisi'ne eklemeniz gerekir:

  • Genel Yönetici
  • Faturalama Yöneticisi
  • Hizmet Yöneticisi

Bunu yapmak için aşağıdaki tüm MSOL cmdlet'lerini çalıştırın:

Connect-MsolService
$displayName = "Application Name" 
$objectId = (Get-MsolServicePrincipal -SearchString $displayName).ObjectId
$roleName = "User Account Administrator"
Add-MsolRoleMember -RoleName $roleName -RoleMemberType ServicePrincipal -RoleMemberObjectId $objectId

Her iki cmdlet kümesini de çalıştırdıktan sonra, uygulamanız tüm Yönetici kuruluş rollerinin parolasını değiştirmek için etkinleştirilir.

Not

İzinleri Office 365 yönetim rollerine ekledikten sonra, izinlerin Uygulama Hizmet Sorumlusuna uygulanması 30 dakika kadar sürebilir.

Yardım için bize ulaşın

Sorularınız veya yardıma ihtiyacınız varsa bir destek isteği oluşturun veya Azure topluluk desteği isteyin. Ürün geri bildirimini Azure geri bildirim topluluğuna da gönderebilirsiniz.