Freigeben über


DevicePolicyManager.InstallKeyPair Methode

Definition

Überlädt

InstallKeyPair(ComponentName, IPrivateKey, Certificate[], String, Boolean)

Diese API kann wie folgt aufgerufen werden, um eine Zertifikatkette und den entsprechenden privaten Schlüssel für das Blattzertifikat zu installieren: ul>li Gerätebesitzer</li><li Li>Profilbesitzer</li<>Li>Delegierter Zertifikat installer</li><li>Credential Management App</li><Li>Eine App, die die android.Manifest.permission#MANAGE_DEVICE_POLICY_CERTIFICATES Berechtigung</li></ul enthält>><< Alle Apps innerhalb des Profils können bei direkter Benutzergenehmigung auf die Zertifikatkette zugreifen und den privaten Schlüssel verwenden.

InstallKeyPair(ComponentName, IPrivateKey, Certificate[], String, InstallKeyFlags)

Diese API kann wie folgt aufgerufen werden, um eine Zertifikatkette und den entsprechenden privaten Schlüssel für das Blattzertifikat zu installieren: ul>li Gerätebesitzer</li><li Li>Profilbesitzer</li<>Li>Delegierter Zertifikat installer</li><li>Credential Management App</li><Li>Eine App, die die android.Manifest.permission#MANAGE_DEVICE_POLICY_CERTIFICATES Berechtigung</li></ul enthält>><< Alle Apps innerhalb des Profils können auf die Zertifikatkette zugreifen und den privaten Schlüssel verwenden, sofern der Benutzer direkt genehmigt wird (wenn der Benutzer den privaten Schlüssel auswählen darf).

InstallKeyPair(ComponentName, IPrivateKey, Certificate, String)

Diese API kann wie folgt aufgerufen werden, um ein Zertifikat und einen entsprechenden privaten Schlüssel zu installieren: ul>li Gerätebesitzer</li><li Li>Profilbesitzer</li<>li>Delegiertes Zertifikatinstallationsprogramm</li><li>Credential Management App</li<>Li>Eine App mit der android.Manifest.permission#MANAGE_DEVICE_POLICY_CERTIFICATES Berechtigung</li></ul> Alle Apps innerhalb des Profils können auf das Zertifikat zugreifen und den privaten Schlüssel verwenden.><< mit direkter Benutzergenehmigung.

InstallKeyPair(ComponentName, IPrivateKey, Certificate[], String, Boolean)

Diese API kann wie folgt aufgerufen werden, um eine Zertifikatkette und den entsprechenden privaten Schlüssel für das Blattzertifikat zu installieren: ul>li Gerätebesitzer</li><li Li>Profilbesitzer</li<>Li>Delegierter Zertifikat installer</li><li>Credential Management App</li><Li>Eine App, die die android.Manifest.permission#MANAGE_DEVICE_POLICY_CERTIFICATES Berechtigung</li></ul enthält>><< Alle Apps innerhalb des Profils können bei direkter Benutzergenehmigung auf die Zertifikatkette zugreifen und den privaten Schlüssel verwenden.

[Android.Runtime.Register("installKeyPair", "(Landroid/content/ComponentName;Ljava/security/PrivateKey;[Ljava/security/cert/Certificate;Ljava/lang/String;Z)Z", "GetInstallKeyPair_Landroid_content_ComponentName_Ljava_security_PrivateKey_arrayLjava_security_cert_Certificate_Ljava_lang_String_ZHandler", ApiSince=24)]
[Android.Runtime.RequiresPermission("android.permission.MANAGE_DEVICE_POLICY_CERTIFICATES")]
public virtual bool InstallKeyPair (Android.Content.ComponentName? admin, Java.Security.IPrivateKey privKey, Java.Security.Cert.Certificate[] certs, string alias, bool requestAccess);
[<Android.Runtime.Register("installKeyPair", "(Landroid/content/ComponentName;Ljava/security/PrivateKey;[Ljava/security/cert/Certificate;Ljava/lang/String;Z)Z", "GetInstallKeyPair_Landroid_content_ComponentName_Ljava_security_PrivateKey_arrayLjava_security_cert_Certificate_Ljava_lang_String_ZHandler", ApiSince=24)>]
[<Android.Runtime.RequiresPermission("android.permission.MANAGE_DEVICE_POLICY_CERTIFICATES")>]
abstract member InstallKeyPair : Android.Content.ComponentName * Java.Security.IPrivateKey * Java.Security.Cert.Certificate[] * string * bool -> bool
override this.InstallKeyPair : Android.Content.ComponentName * Java.Security.IPrivateKey * Java.Security.Cert.Certificate[] * string * bool -> bool

Parameter

admin
ComponentName

Dem DeviceAdminReceiver diese Anforderung zugeordnet ist, oder null wenn der Aufrufer kein Geräteadministrator ist.

privKey
IPrivateKey

Der zu installierende private Schlüssel.

certs
Certificate[]

Die zu installierende Zertifikatkette. Die Kette sollte mit dem Blattzertifikat beginnen und die Vertrauenskette in der Reihenfolge enthalten. Dies wird von android.security.KeyChain#getCertificateChainzurückgegeben.

alias
String

Der Private Key-Alias, unter dem das Zertifikat installiert werden soll. Wenn ein Zertifikat mit diesem Alias bereits vorhanden ist, wird es überschrieben.

requestAccess
Boolean

true , um anzufordern, dass der aufrufenden App sofort Zugriff auf die Anmeldeinformationen gewährt wird. Andernfalls erfolgt der Zugriff auf die Anmeldeinformationen durch die Benutzergenehmigung.

Gibt zurück

true , wenn die Schlüssel installiert wurden, false andernfalls.

Attribute

Hinweise

Diese API kann wie folgt aufgerufen werden, um eine Zertifikatkette und den entsprechenden privaten Schlüssel für das Blattzertifikat zu installieren: ul>li Gerätebesitzer</li><li Li>Profilbesitzer</li<>Li>Delegierter Zertifikat installer</li><li>Credential Management App</li><Li>Eine App, die die android.Manifest.permission#MANAGE_DEVICE_POLICY_CERTIFICATES Berechtigung</li></ul enthält>><< Alle Apps innerhalb des Profils können bei direkter Benutzergenehmigung auf die Zertifikatkette zugreifen und den privaten Schlüssel verwenden.

In Android android.os.Build.VERSION_CODES#Skann die App für die Verwaltung von Anmeldeinformationen diese API aufrufen. Diese API legt jedoch das Schlüsselpaar als standardmäßig auswählbaren Benutzer fest, was nicht zulässig ist, wenn von der Anmeldeinformationsverwaltungs-App aufgerufen wird. Stattdessen #installKeyPair(ComponentName, PrivateKey, Certificate[], String, int) sollte mit #INSTALLKEY_SET_USER_SELECTABLE nicht als Flag festgelegt werden. Hinweis: Auf einem nicht verwalteten Gerät kann nur eine App zur Verwaltung von Anmeldeinformationen vorhanden sein.

Der Aufrufer dieser API kann sich ohne Benutzergenehmigung sofort Zugriff auf das Zertifikat und den privaten Schlüssel gewähren. Es empfiehlt sich, dies nur dann anzufordern, wenn dies unbedingt erforderlich ist, da es zusätzliche Sicherheitsrisiken eröffnet.

Hinweis: Wenn es sich bei der bereitgestellten alias Datei um einen vorhandenen Alias handelt, werden alle früheren Berechtigungen, die Apps für den Zugriff auf den Schlüssel erteilt wurden, und Zertifikate, die diesem Alias zugeordnet sind, widerrufen.

Java-Dokumentation für android.app.admin.DevicePolicyManager.installKeyPair(android.content.ComponentName, java.security.PrivateKey, java.security.cert.Certificate[], java.lang.String, boolean).

Teile dieser Seite sind Änderungen, die auf Arbeiten basieren, die vom Android Open Source Project erstellt und freigegeben wurden und gemäß den In der Attribution License beschriebenen Begriffen verwendet werden.

Gilt für:

InstallKeyPair(ComponentName, IPrivateKey, Certificate[], String, InstallKeyFlags)

Diese API kann wie folgt aufgerufen werden, um eine Zertifikatkette und den entsprechenden privaten Schlüssel für das Blattzertifikat zu installieren: ul>li Gerätebesitzer</li><li Li>Profilbesitzer</li<>Li>Delegierter Zertifikat installer</li><li>Credential Management App</li><Li>Eine App, die die android.Manifest.permission#MANAGE_DEVICE_POLICY_CERTIFICATES Berechtigung</li></ul enthält>><< Alle Apps innerhalb des Profils können auf die Zertifikatkette zugreifen und den privaten Schlüssel verwenden, sofern der Benutzer direkt genehmigt wird (wenn der Benutzer den privaten Schlüssel auswählen darf).

[Android.Runtime.Register("installKeyPair", "(Landroid/content/ComponentName;Ljava/security/PrivateKey;[Ljava/security/cert/Certificate;Ljava/lang/String;I)Z", "GetInstallKeyPair_Landroid_content_ComponentName_Ljava_security_PrivateKey_arrayLjava_security_cert_Certificate_Ljava_lang_String_IHandler", ApiSince=28)]
[Android.Runtime.RequiresPermission("android.permission.MANAGE_DEVICE_POLICY_CERTIFICATES")]
public virtual bool InstallKeyPair (Android.Content.ComponentName? admin, Java.Security.IPrivateKey privKey, Java.Security.Cert.Certificate[] certs, string alias, Android.App.Admin.InstallKeyFlags flags);
[<Android.Runtime.Register("installKeyPair", "(Landroid/content/ComponentName;Ljava/security/PrivateKey;[Ljava/security/cert/Certificate;Ljava/lang/String;I)Z", "GetInstallKeyPair_Landroid_content_ComponentName_Ljava_security_PrivateKey_arrayLjava_security_cert_Certificate_Ljava_lang_String_IHandler", ApiSince=28)>]
[<Android.Runtime.RequiresPermission("android.permission.MANAGE_DEVICE_POLICY_CERTIFICATES")>]
abstract member InstallKeyPair : Android.Content.ComponentName * Java.Security.IPrivateKey * Java.Security.Cert.Certificate[] * string * Android.App.Admin.InstallKeyFlags -> bool
override this.InstallKeyPair : Android.Content.ComponentName * Java.Security.IPrivateKey * Java.Security.Cert.Certificate[] * string * Android.App.Admin.InstallKeyFlags -> bool

Parameter

admin
ComponentName

Dem DeviceAdminReceiver diese Anforderung zugeordnet ist, oder null wenn der Aufrufer kein Geräteadministrator ist.

privKey
IPrivateKey

Der zu installierende private Schlüssel.

certs
Certificate[]

Die zu installierende Zertifikatkette. Die Kette sollte mit dem Blattzertifikat beginnen und die Vertrauenskette in der Reihenfolge enthalten. Dies wird von android.security.KeyChain#getCertificateChainzurückgegeben.

alias
String

Der Private Key-Alias, unter dem das Zertifikat installiert werden soll. Wenn ein Zertifikat mit diesem Alias bereits vorhanden ist, wird es überschrieben.

flags
InstallKeyFlags

Flags, um anzufordern, dass der aufrufenden App Zugriff auf die Anmeldeinformationen gewährt wird, und legen den Schlüssel so fest, dass er vom Benutzer ausgewählt werden kann. Prüfen Sie #INSTALLKEY_SET_USER_SELECTABLE und #INSTALLKEY_REQUEST_CREDENTIALS_ACCESS.

Gibt zurück

true , wenn die Schlüssel installiert wurden, false andernfalls.

Attribute

Hinweise

Diese API kann wie folgt aufgerufen werden, um eine Zertifikatkette und den entsprechenden privaten Schlüssel für das Blattzertifikat zu installieren: ul>li Gerätebesitzer</li><li Li>Profilbesitzer</li<>Li>Delegierter Zertifikat installer</li><li>Credential Management App</li><Li>Eine App, die die android.Manifest.permission#MANAGE_DEVICE_POLICY_CERTIFICATES Berechtigung</li></ul enthält>><< Alle Apps innerhalb des Profils können auf die Zertifikatkette zugreifen und den privaten Schlüssel verwenden, sofern der Benutzer direkt genehmigt wird (wenn der Benutzer den privaten Schlüssel auswählen darf).

In Android android.os.Build.VERSION_CODES#Skann die App für die Verwaltung von Anmeldeinformationen diese API aufrufen. Wenn von der Anmeldeinformationsverwaltungs-App aufgerufen wird: ul>li The componentName must be nullr</li><li>The alias must exist in the credential management app's android.security.AppUriAuthenticationPolicy</li><li>The key pair must not user selectable</li></ul> Hinweis, es kann nur eine App zur Verwaltung von Anmeldeinformationen auf einem nicht verwalteten Gerät vorhanden sein.><<

Der Aufrufer dieser API kann sich ohne Benutzergenehmigung sofort Zugriff auf das Zertifikat und den privaten Schlüssel gewähren. Es empfiehlt sich, dies nur dann anzufordern, wenn dies unbedingt erforderlich ist, da es zusätzliche Sicherheitsrisiken eröffnet.

Schließen Sie #INSTALLKEY_SET_USER_SELECTABLE das flags Argument ein, damit der Benutzer den Schlüssel aus einem Dialogfeld auswählen kann.

Hinweis: Wenn es sich bei der bereitgestellten alias Datei um einen vorhandenen Alias handelt, werden alle früheren Berechtigungen, die Apps für den Zugriff auf den Schlüssel erteilt wurden, und Zertifikate, die diesem Alias zugeordnet sind, widerrufen.

Java-Dokumentation für android.app.admin.DevicePolicyManager.installKeyPair(android.content.ComponentName, java.security.PrivateKey, java.security.cert.Certificate[], java.lang.String, int).

Teile dieser Seite sind Änderungen, die auf Arbeiten basieren, die vom Android Open Source Project erstellt und freigegeben wurden und gemäß den In der Attribution License beschriebenen Begriffen verwendet werden.

Gilt für:

InstallKeyPair(ComponentName, IPrivateKey, Certificate, String)

Diese API kann wie folgt aufgerufen werden, um ein Zertifikat und einen entsprechenden privaten Schlüssel zu installieren: ul>li Gerätebesitzer</li><li Li>Profilbesitzer</li<>li>Delegiertes Zertifikatinstallationsprogramm</li><li>Credential Management App</li<>Li>Eine App mit der android.Manifest.permission#MANAGE_DEVICE_POLICY_CERTIFICATES Berechtigung</li></ul> Alle Apps innerhalb des Profils können auf das Zertifikat zugreifen und den privaten Schlüssel verwenden.><< mit direkter Benutzergenehmigung.

[Android.Runtime.Register("installKeyPair", "(Landroid/content/ComponentName;Ljava/security/PrivateKey;Ljava/security/cert/Certificate;Ljava/lang/String;)Z", "GetInstallKeyPair_Landroid_content_ComponentName_Ljava_security_PrivateKey_Ljava_security_cert_Certificate_Ljava_lang_String_Handler")]
[Android.Runtime.RequiresPermission("android.permission.MANAGE_DEVICE_POLICY_CERTIFICATES")]
public virtual bool InstallKeyPair (Android.Content.ComponentName? admin, Java.Security.IPrivateKey privKey, Java.Security.Cert.Certificate cert, string alias);
[<Android.Runtime.Register("installKeyPair", "(Landroid/content/ComponentName;Ljava/security/PrivateKey;Ljava/security/cert/Certificate;Ljava/lang/String;)Z", "GetInstallKeyPair_Landroid_content_ComponentName_Ljava_security_PrivateKey_Ljava_security_cert_Certificate_Ljava_lang_String_Handler")>]
[<Android.Runtime.RequiresPermission("android.permission.MANAGE_DEVICE_POLICY_CERTIFICATES")>]
abstract member InstallKeyPair : Android.Content.ComponentName * Java.Security.IPrivateKey * Java.Security.Cert.Certificate * string -> bool
override this.InstallKeyPair : Android.Content.ComponentName * Java.Security.IPrivateKey * Java.Security.Cert.Certificate * string -> bool

Parameter

admin
ComponentName

Dem DeviceAdminReceiver diese Anforderung zugeordnet ist, oder null wenn der Aufrufer kein Geräteadministrator ist.

privKey
IPrivateKey

Der zu installierende private Schlüssel.

cert
Certificate

Das zu installierende Zertifikat.

alias
String

Der Private Key-Alias, unter dem das Zertifikat installiert werden soll. Wenn ein Zertifikat mit diesem Alias bereits vorhanden ist, wird es überschrieben.

Gibt zurück

true , wenn die Schlüssel installiert wurden, false andernfalls.

Attribute

Hinweise

Diese API kann wie folgt aufgerufen werden, um ein Zertifikat und einen entsprechenden privaten Schlüssel zu installieren: ul>li Gerätebesitzer</li><li Li>Profilbesitzer</li<>li>Delegiertes Zertifikatinstallationsprogramm</li><li>Credential Management App</li<>Li>Eine App mit der android.Manifest.permission#MANAGE_DEVICE_POLICY_CERTIFICATES Berechtigung</li></ul> Alle Apps innerhalb des Profils können auf das Zertifikat zugreifen und den privaten Schlüssel verwenden.><< mit direkter Benutzergenehmigung.

In Android android.os.Build.VERSION_CODES#Skann die App für die Verwaltung von Anmeldeinformationen diese API aufrufen. Diese API legt jedoch das Schlüsselpaar als standardmäßig auswählbaren Benutzer fest, was nicht zulässig ist, wenn von der Anmeldeinformationsverwaltungs-App aufgerufen wird. Stattdessen #installKeyPair(ComponentName, PrivateKey, Certificate[], String, int) sollte mit #INSTALLKEY_SET_USER_SELECTABLE nicht als Flag festgelegt werden.

Der Zugriff auf die installierten Anmeldeinformationen wird dem Aufrufer dieser API ohne direkte Benutzergenehmigung nicht gewährt. Dies dient der Sicherheit: Sollte ein Zertifikatinstallationsprogramm kompromittiert werden, werden bereits installierte Zertifikate geschützt.

Wenn das Installationsprogramm Zugriff auf die Anmeldeinformationen haben muss, rufen Sie stattdessen auf #installKeyPair(ComponentName, PrivateKey, Certificate[], String, boolean) .

Hinweis: Wenn es sich bei der bereitgestellten alias Datei um einen vorhandenen Alias handelt, werden alle früheren Berechtigungen, die Apps für den Zugriff auf den Schlüssel erteilt wurden, und Zertifikate, die diesem Alias zugeordnet sind, widerrufen.

Java-Dokumentation für android.app.admin.DevicePolicyManager.installKeyPair(android.content.ComponentName, java.security.PrivateKey, java.security.cert.Certificate, java.lang.String).

Teile dieser Seite sind Änderungen, die auf Arbeiten basieren, die vom Android Open Source Project erstellt und freigegeben wurden und gemäß den In der Attribution License beschriebenen Begriffen verwendet werden.

Gilt für: