語言

DevicePolicyManager.SetKeyPairCertificate 方法

定義

多載

名稱 Description
SetKeyPairCertificate(ComponentName, String, IList<Certificate>, Boolean)

以下 API 可呼叫,將憑證與使用 #generateKeyPair、 產生的金鑰對關聯,並設定使用者是否可在憑證選擇提示中選擇該金鑰:<ul><li 裝置>擁有者</li><li>個人資料擁有者</li><li>委派憑證安裝器</li><li>憑證管理應用程式</li></ul>

SetKeyPairCertificate(String, IList<Certificate>, Boolean, KeyChainManagerKeyPairScope)

將憑證鏈與特定範圍的密鑰關聯。

SetKeyPairCertificate(ComponentName, String, IList<Certificate>, Boolean)

以下 API 可呼叫,將憑證與使用 #generateKeyPair、 產生的金鑰對關聯,並設定使用者是否可在憑證選擇提示中選擇該金鑰:<ul><li 裝置>擁有者</li><li>個人資料擁有者</li><li>委派憑證安裝器</li><li>憑證管理應用程式</li></ul>

[Android.Runtime.Register("setKeyPairCertificate", "(Landroid/content/ComponentName;Ljava/lang/String;Ljava/util/List;Z)Z", "GetSetKeyPairCertificate_Landroid_content_ComponentName_Ljava_lang_String_Ljava_util_List_ZHandler", ApiSince=28)]
[Android.Runtime.RequiresPermission("android.permission.MANAGE_DEVICE_POLICY_CERTIFICATES")]
public virtual bool SetKeyPairCertificate(Android.Content.ComponentName? admin, string alias, System.Collections.Generic.IList<Java.Security.Cert.Certificate> certs, bool isUserSelectable);
[<Android.Runtime.Register("setKeyPairCertificate", "(Landroid/content/ComponentName;Ljava/lang/String;Ljava/util/List;Z)Z", "GetSetKeyPairCertificate_Landroid_content_ComponentName_Ljava_lang_String_Ljava_util_List_ZHandler", ApiSince=28)>]
[<Android.Runtime.RequiresPermission("android.permission.MANAGE_DEVICE_POLICY_CERTIFICATES")>]
abstract member SetKeyPairCertificate : Android.Content.ComponentName * string * System.Collections.Generic.IList<Java.Security.Cert.Certificate> * bool -> bool
override this.SetKeyPairCertificate : Android.Content.ComponentName * string * System.Collections.Generic.IList<Java.Security.Cert.Certificate> * bool -> bool

參數

admin
ComponentName

這個請求是與哪個 DeviceAdminReceiver 裝置相關聯,或者 null 如果呼叫者不是裝置管理員。

alias
String

安裝憑證的私鑰別名。 應該 alias 代表現有的私鑰。 如果已有該別名的憑證,該憑證會被覆寫。

certs
IList<Certificate>

安裝憑證鏈。 鏈條應該從葉子證書開始,並依序包含信任鏈。 此資料將由 android.security.KeyChain#getCertificateChain返回。

isUserSelectable
Boolean

true 用來表示使用者可以透過憑證選擇提示詞選擇此金鑰, false 表示此金鑰只能透過實作 android.app.admin.DeviceAdminReceiver#onChoosePrivateKeyAlias來授予存取權限。

傳回

true 如果提供的 alias 憑證存在且憑證已成功綁定, false 否則。

屬性

備註

以下 API 可呼叫,將憑證與使用 #generateKeyPair、 產生的金鑰對關聯,並設定使用者是否可在憑證選擇提示中選擇該金鑰:<ul><li 裝置>擁有者</li><li>個人資料擁有者</li><li>委派憑證安裝器</li><li>憑證管理應用程式</li></ul>

從 Android android.os.Build.VERSION_CODES#S版本,憑證管理應用程式可以呼叫這個 API。 若憑證管理應用程式呼叫,元件名稱必須為 null。 請注意,憑證管理應用程式只能在未受管理的裝置上安裝。

Java 文件 android.app.admin.DevicePolicyManager.setKeyPairCertificate(android.content.ComponentName, java.lang.String, java.util.List<java.security.cert.Certificate>, boolean)。

本頁部分內容為基於 Open Source Project 所創建與分享的作品,並依授權條款所描述的使用進行修改。

適用於

SetKeyPairCertificate(String, IList<Certificate>, Boolean, KeyChainManagerKeyPairScope)

將憑證鏈與特定範圍的密鑰關聯。

[Android.Runtime.Register("setKeyPairCertificate", "(Ljava/lang/String;Ljava/util/List;ZI)Z", "GetSetKeyPairCertificate_Ljava_lang_String_Ljava_util_List_ZIHandler", ApiSince=37)]
[Android.Runtime.RequiresPermission("android.permission.MANAGE_DEVICE_POLICY_CERTIFICATES")]
public virtual bool SetKeyPairCertificate(string alias, System.Collections.Generic.IList<Java.Security.Cert.Certificate> certs, bool isUserSelectable, Android.Security.KeyChainManagerKeyPairScope scope);
[<Android.Runtime.Register("setKeyPairCertificate", "(Ljava/lang/String;Ljava/util/List;ZI)Z", "GetSetKeyPairCertificate_Ljava_lang_String_Ljava_util_List_ZIHandler", ApiSince=37)>]
[<Android.Runtime.RequiresPermission("android.permission.MANAGE_DEVICE_POLICY_CERTIFICATES")>]
abstract member SetKeyPairCertificate : string * System.Collections.Generic.IList<Java.Security.Cert.Certificate> * bool * Android.Security.KeyChainManagerKeyPairScope -> bool
override this.SetKeyPairCertificate : string * System.Collections.Generic.IList<Java.Security.Cert.Certificate> * bool * Android.Security.KeyChainManagerKeyPairScope -> bool

參數

alias
String

安裝憑證的私鑰別名。

certs
IList<Certificate>

安裝憑證鏈。

isUserSelectable
Boolean

true 用來表示使用者可以透過憑證選擇提示詞選擇此金鑰, false 表示此金鑰只能透過實作來授予存取權限 android.app.admin.DeviceAdminReceiver#onChoosePrivateKeyAlias 或呼喚 #grantKeyPairToApp 和 #grantKeyPairToWifiAuth。

scope
KeyChainManagerKeyPairScope

金鑰對的作用範圍: KeyChainManager#KEYPAIR_SCOPE_USER 或 KeyChainManager#KEYPAIR_SCOPE_DEVICE。

傳回

true 如果憑證成功 false 關聯,否則。

屬性

備註

將憑證鏈與特定範圍的密鑰關聯。

此方法擴展了 setKeyPairCertificate(ComponentName, String, List, boolean),並加入範圍參數以判斷憑證應與使用者專屬或裝置整體鑰匙圈中的金鑰對相關聯。

此過載的主要差異:使用KeyChainManager.KEYPAIR_SCOPE_DEVICE:憑證將與裝置整體鑰匙圈中的一對金鑰綁定。 呼叫者必須在關聯使用者中執行以管理裝置金鑰。 請參見 isAffiliatedUser()。 憑證管理應用程式不得使用此範圍;使用KeyChainManager.KEYPAIR_SCOPE_USER:憑證會與呼叫使用者自己鑰匙圈中的一對金鑰綁定。

Android 參考資料。android.app.admin.DevicePolicyManager.setKeyPairCertificate

本頁部分內容為基於 Open Source Project 所創建與分享的作品,並依授權條款所描述的使用進行修改。

適用於