使用应用程序 ID 自动执行无缝 SSO kerberos 解密密钥翻转

Using Application ID to automate Seamless SSO kerberos decryption key rollover

我想自动更新用于无缝 SSO 的 kerberos 描述密钥。在这样做时,我不能使用全局管理员 USER 帐户,因为它们可能会受到喷雾攻击(我不能使用域 ID,因为域太多,因此我将不得不创建这么多全局管理员)。我在想,通过使用应用程序 ID 和证书,我可以安全地自动化这项工作。

问题是,我能找到的每个示例代码都使用了 "AuthenticationContext"。像这样:

New-AzureADSSOAuthenticationContext -CloudCredentials $CloudCredentials
Update-AzureADSSOForest -OnPremCredentials $OnpremCredentials

是否可以使用应用程序 ID 来自动执行此过程?如果是,我该如何编码?

感谢您的帮助。

恐怕您不能使用服务主体(即应用程序 ID)来执行此操作。

目前,我们只能在计划任务中使用域管理员和租户全局管理员凭据。

你可以参考这个sample:

# Requirements:
# Microsoft Online Services Sign-In Assistant.
# 64-bit Azure Active Directory module for Windows PowerShell.

$CloudUser = 'service_account@domain.com'
$CloudEncrypted = Get-Content "C:\Scripts\Cloud_Encrypted_Password.txt" | ConvertTo-SecureString
$CloudCred = New-Object System.Management.Automation.PsCredential($CloudUser,$CloudEncrypted)
$OnpremUser = 'DOMAIN\service_account'
$OnpremEncrypted = Get-Content "C:\Scripts\Onprem_Encrypted_Password.txt" | ConvertTo-SecureString
$OnpremCred = New-Object System.Management.Automation.PsCredential($OnpremUser,$OnpremEncrypted)

Import-Module 'C:\Program Files\Microsoft Azure Active Directory Connect\AzureADSSO.psd1'
New-AzureADSSOAuthenticationContext -CloudCredentials $CloudCred
Update-AzureADSSOForest -OnPremCredentials $OnpremCred

除此之外,Azure Team 也在努力实现这个自动化,查看反馈:

https://feedback.azure.com/forums/169401-azure-active-directory/suggestions/33773926-automate-seamless-sso-kerberos-decryption-key-roll