New-MsolServicePrincipalCredential
將認證金鑰新增至服務主體。
語法
New-MsolServicePrincipalCredential
-ObjectId <Guid>
[-Type <ServicePrincipalCredentialType>]
[-Value <String>]
[-StartDate <DateTime>]
[-EndDate <DateTime>]
[-Usage <ServicePrincipalCredentialUsage>]
[-TenantId <Guid>]
[<CommonParameters>]
New-MsolServicePrincipalCredential
-ServicePrincipalName <String>
[-Type <ServicePrincipalCredentialType>]
[-Value <String>]
[-StartDate <DateTime>]
[-EndDate <DateTime>]
[-Usage <ServicePrincipalCredentialUsage>]
[-TenantId <Guid>]
[<CommonParameters>]
New-MsolServicePrincipalCredential
-AppPrincipalId <Guid>
[-Type <ServicePrincipalCredentialType>]
[-Value <String>]
[-StartDate <DateTime>]
[-EndDate <DateTime>]
[-Usage <ServicePrincipalCredentialUsage>]
[-TenantId <Guid>]
[<CommonParameters>]
Description
New-MsolServicePrincipalCredential Cmdlet 會將新的認證新增至服務主體,或新增或變換應用程式的認證密鑰。 服務主體是藉由提供物件標識碼、應用程式主體標識碼或服務主體名稱, (SPN) 來識別。
範例
範例 1:將現有的認證新增至服務主體
PS C:\> $Certificate = New-Object System.Security.Cryptography.X509Certificates.X509Certificate
PS C:\> $Certificate.Import("C:\myapp.cer")
PS C:\> $BinCert = $Certificate.GetRawCertData()
PS C:\> $CredValue = [System.Convert]::ToBase64String($binCert);
PS C:\> New-MsolServicePrincipalCredential -ServicePrincipalName "MyApp/myApp.com" -Type asymmetric -Value $CredValue -StartDate $Certificate.GetEffectiveDateString() -EndDate $Certificate.GetExpirationDateString()
本範例會將認證或密鑰物件新增至現有的服務主體。 在此範例中,提供的base64編碼公用 X509 憑證myapp.cer會使用 MyApp/myApp.com 的服務主體名稱值新增至服務主體。
範例 2:註冊內部部署 Exchange Server
PS C:\> New-MsolServicePrincipalCredential -AppPrincipalId -Type asymmetric -Value $CredValue
此命令會註冊內部部署 Exchange Server,以便 Exchange Server 與 Microsoft Azure Active Directory 服務之間的通訊,例如 Office 365。 此範例假設 $credValue 包含用來代表內部部署 Exchange Server 的 base64 編碼公用 X509 憑證。 Office 365 伺服器的已知識別碼如下:
- Exchange:00000002-0000-0ff1-ce00-00000000000
- SharePoint:00000003-0000-0ff1-ce00-000000000000
- Lync:00000004-0000-0ff1-ce00-00000000000
參數
-AppPrincipalId
指定要在其中新增認證之服務主體的應用程式標識碼。
類型: | Guid |
Position: | Named |
預設值: | None |
必要: | True |
接受管線輸入: | True |
接受萬用字元: | False |
-EndDate
指定認證使用方式的有效結束日期。 預設值為今天起的一年。 針對非對稱類型認證,這必須設定為 X509 憑證有效的日期或之前,否則不會針對此應用程式發出 OAuth 令牌。
類型: | DateTime |
Position: | Named |
預設值: | Today + 1 year |
必要: | False |
接受管線輸入: | True |
接受萬用字元: | False |
-ObjectId
指定要加入認證之服務主體的唯一對象識別碼。
類型: | Guid |
Position: | Named |
預設值: | None |
必要: | True |
接受管線輸入: | True |
接受萬用字元: | False |
-ServicePrincipalName
指定要在其中新增認證的服務主體名稱。 SPN 必須使用下列其中一種格式:
appName
appName/hostname
- 有效的 URL
AppName 代表應用程式的名稱。 主機名代表應用程式的 URI 授權單位。
類型: | String |
Position: | Named |
預設值: | None |
必要: | True |
接受管線輸入: | True |
接受萬用字元: | False |
-StartDate
指定認證使用方式的有效開始日期。 預設值為今天。 針對非對稱類型認證,這必須設定為 X509 憑證有效的來源日期或之後,否則不會針對此應用程式發出 OAuth 令牌。
類型: | DateTime |
Position: | Named |
預設值: | Today |
必要: | False |
接受管線輸入: | True |
接受萬用字元: | False |
-TenantId
指定要執行作業之租使用者的唯一標識符。 預設值是目前使用者的租使用者。 此參數僅適用於合作夥伴使用者。
類型: | Guid |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | True |
接受萬用字元: | False |
-Type
指定使用的認證類型。 有效值為:
- 非對稱式
- 對稱式
- password
預設值為對稱。
重要
建議使用非對稱金鑰。 對稱密鑰不安全,而且會針對存取 Microsoft 第一方應用程式的服務主體停用。
類型: | ServicePrincipalCredentialType |
Position: | Named |
預設值: | Symmetric |
必要: | False |
接受管線輸入: | True |
接受萬用字元: | False |
-Usage
指定認證金鑰的使用方式。 認證金鑰使用方式可以設定為簽署或驗證令牌。 預設值為驗證。 只有對稱金鑰才允許簽署。 所有金鑰類型都允許驗證。
Azure Active Directory 目錄需要驗證認證密鑰,以確認應用程式已傳送要求令牌,此服務主體代表此令牌。
您的應用程式可能會選擇性地要求 Azure Active Directory 服務向使用簽署金鑰簽署的應用程式發出令牌,而不是識別 Microsoft Azure Active Directory 的非對稱公鑰。 在此情況下,請為您的服務主體提供簽署認證密鑰。
類型: | ServicePrincipalCredentialUsage |
Position: | Named |
預設值: | Verify |
必要: | False |
接受管線輸入: | True |
接受萬用字元: | False |
-Value
指定認證的值。
- 如果認證類型非對稱,則值代表基底 64 編碼的憑證。
- 如果認證類型是對稱的,而且未指定 Value 參數,系統會自動建立 256 位 AES 密鑰,並從建立起一年有效。
- 如果認證類型為密碼,請指定 Value。 它不應該以Base 64編碼。
類型: | String |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | True |
接受萬用字元: | False |