DevicePolicyManager.InstallKeyPair Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Sobrecargas
| Nome | Description |
|---|---|
| InstallKeyPair(ComponentName, IPrivateKey, Certificate, String) |
Essa API pode ser chamada pelo seguinte para instalar um certificado e uma chave privada correspondente: <ul><li>Proprietário do dispositivo</li li>><Proprietário do perfil</li<>li>Instalador de certificado< delegado/li li<>>Aplicativo de gerenciamento< de credenciais/li li><>Um aplicativo que contém a |
| InstallKeyPair(ComponentName, IPrivateKey, Certificate[], String, InstallKeyFlags) |
Essa API pode ser chamada pelo seguinte para instalar uma cadeia de certificados e uma chave privada correspondente para o certificado folha: ul>li Proprietário do dispositivo</li li>><Proprietário do perfil</li li>><Instalador de certificado< delegado/li<>li>Aplicativo de gerenciamento< de credenciais/li li>><Um aplicativo que contém a |
| InstallKeyPair(ComponentName, IPrivateKey, Certificate[], String, Boolean) |
Essa API pode ser chamada pelo seguinte para instalar uma cadeia de certificados e uma chave privada correspondente para o certificado folha: ul>li Proprietário do dispositivo</li li>><Proprietário do perfil</li li>><Instalador de certificado< delegado/li<>li>Aplicativo de gerenciamento< de credenciais/li li>><Um aplicativo que contém a |
InstallKeyPair(ComponentName, IPrivateKey, Certificate, String)
Essa API pode ser chamada pelo seguinte para instalar um certificado e uma chave privada correspondente: <ul><li>Proprietário do dispositivo</li li>><Proprietário do perfil</li<>li>Instalador de certificado< delegado/li li<>>Aplicativo de gerenciamento< de credenciais/li li><>Um aplicativo que contém a android.Manifest.permission#MANAGE_DEVICE_POLICY_CERTIFICATES permissão</li></ul> Todos os aplicativos dentro do perfil poderão acessar o certificado e usar a chave privada, determinada aprovação direta do usuário.
[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
Parâmetros
- admin
- ComponentName
À qual DeviceAdminReceiver essa solicitação está associada ou null se o chamador não é um administrador do dispositivo.
- privKey
- IPrivateKey
A chave privada a ser instalada.
- cert
- Certificate
O certificado a ser instalado.
- alias
- String
O alias de chave privada no qual instalar o certificado. Se um certificado com esse alias já existir, ele será substituído.
Retornos
true se as chaves foram instaladas, false caso contrário.
- Atributos
Comentários
Essa API pode ser chamada pelo seguinte para instalar um certificado e uma chave privada correspondente: <ul><li>Proprietário do dispositivo</li li>><Proprietário do perfil</li<>li>Instalador de certificado< delegado/li li<>>Aplicativo de gerenciamento< de credenciais/li li><>Um aplicativo que contém a android.Manifest.permission#MANAGE_DEVICE_POLICY_CERTIFICATES permissão</li></ul> Todos os aplicativos dentro do perfil poderão acessar o certificado e usar a chave privada, determinada aprovação direta do usuário.
No Android android.os.Build.VERSION_CODES#S, o aplicativo de gerenciamento de credenciais pode chamar essa API. No entanto, essa API define o par de chaves como selecionável pelo usuário por padrão, o que não é permitido quando chamado pelo aplicativo de gerenciamento de credenciais. Em vez disso, #installKeyPair(ComponentName, PrivateKey, Certificate[], String, int) deve ser chamado sem #INSTALLKEY_SET_USER_SELECTABLE definir como um sinalizador.
O acesso às credenciais instaladas não será concedido ao chamador dessa API sem aprovação direta do usuário. Isso é para segurança – se um instalador de certificado ficar comprometido, os certificados que ele já tinha instalado serão protegidos.
Se o instalador precisar ter acesso às credenciais, chame #installKeyPair(ComponentName, PrivateKey, Certificate[], String, boolean) em vez disso.
Observação: se o fornecido alias for de um alias existente, todas as concessões anteriores que os aplicativos receberam para acessar a chave e os certificados associados a esse alias serão revogados.
Partes desta página são modificações baseadas no trabalho criado e compartilhado pelo Project Open Source do Open Source e usadas de acordo com os termos descritos na Creative Commons 2.5.
Aplica-se a
InstallKeyPair(ComponentName, IPrivateKey, Certificate[], String, InstallKeyFlags)
Essa API pode ser chamada pelo seguinte para instalar uma cadeia de certificados e uma chave privada correspondente para o certificado folha: ul>li Proprietário do dispositivo</li li>><Proprietário do perfil</li li>><Instalador de certificado< delegado/li<>li>Aplicativo de gerenciamento< de credenciais/li li>><Um aplicativo que contém a android.Manifest.permission#MANAGE_DEVICE_POLICY_CERTIFICATES permissão</li></ul>><< Todos os aplicativos dentro do perfil poderão acessar a cadeia de certificados e usar a chave privada, dada a aprovação direta do usuário (se o usuário tiver permissão para selecionar a chave privada).
[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
Parâmetros
- admin
- ComponentName
À qual DeviceAdminReceiver essa solicitação está associada ou null se o chamador não é um administrador do dispositivo.
- privKey
- IPrivateKey
A chave privada a ser instalada.
- certs
- Certificate[]
A cadeia de certificados a ser instalada. A cadeia deve começar com o certificado folha e incluir a cadeia de confiança em ordem. Isso será retornado por android.security.KeyChain#getCertificateChain.
- alias
- String
O alias de chave privada no qual instalar o certificado. Se um certificado com esse alias já existir, ele será substituído.
- flags
- InstallKeyFlags
Sinalizadores para solicitar que o aplicativo de chamada tenha acesso às credenciais e defina a chave como selecionável pelo usuário. Consulte #INSTALLKEY_SET_USER_SELECTABLE e #INSTALLKEY_REQUEST_CREDENTIALS_ACCESS.
Retornos
true se as chaves foram instaladas, false caso contrário.
- Atributos
Comentários
Essa API pode ser chamada pelo seguinte para instalar uma cadeia de certificados e uma chave privada correspondente para o certificado folha: ul>li Proprietário do dispositivo</li li>><Proprietário do perfil</li li>><Instalador de certificado< delegado/li<>li>Aplicativo de gerenciamento< de credenciais/li li>><Um aplicativo que contém a android.Manifest.permission#MANAGE_DEVICE_POLICY_CERTIFICATES permissão</li></ul>><< Todos os aplicativos dentro do perfil poderão acessar a cadeia de certificados e usar a chave privada, dada a aprovação direta do usuário (se o usuário tiver permissão para selecionar a chave privada).
No Android android.os.Build.VERSION_CODES#S, o aplicativo de gerenciamento de credenciais pode chamar essa API. Se chamado pelo aplicativo de gerenciamento de credenciais: <ul><li>O componentName deve ser nullr</li><li>O alias deve existir no aplicativo de<android.security.AppUriAuthenticationPolicy gerenciamento de credenciais /li><li>O par de chaves não deve ser selecionável< pelo usuário/li></ul> Observação, só pode haver um aplicativo de gerenciamento de credenciais em um dispositivo não gerenciado.
O chamador dessa API pode conceder a si mesmo acesso ao certificado e à chave privada imediatamente, sem a aprovação do usuário. É uma prática recomendada não solicitar isso, a menos que seja estritamente necessário, pois abre vulnerabilidades de segurança adicionais.
Inclua #INSTALLKEY_SET_USER_SELECTABLE no flags argumento para permitir que o usuário selecione a chave em uma caixa de diálogo.
Observação: se o fornecido alias for de um alias existente, todas as concessões anteriores que os aplicativos receberam para acessar a chave e os certificados associados a esse alias serão revogados.
Partes desta página são modificações baseadas no trabalho criado e compartilhado pelo Project Open Source do Open Source e usadas de acordo com os termos descritos na Creative Commons 2.5.
Aplica-se a
InstallKeyPair(ComponentName, IPrivateKey, Certificate[], String, Boolean)
Essa API pode ser chamada pelo seguinte para instalar uma cadeia de certificados e uma chave privada correspondente para o certificado folha: ul>li Proprietário do dispositivo</li li>><Proprietário do perfil</li li>><Instalador de certificado< delegado/li<>li>Aplicativo de gerenciamento< de credenciais/li li>><Um aplicativo que contém a android.Manifest.permission#MANAGE_DEVICE_POLICY_CERTIFICATES permissão</li></ul>><< Todos os aplicativos dentro do perfil poderão acessar a cadeia de certificados e usar a chave privada, dada a aprovação direta do usuário.
[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
Parâmetros
- admin
- ComponentName
À qual DeviceAdminReceiver essa solicitação está associada ou null se o chamador não é um administrador do dispositivo.
- privKey
- IPrivateKey
A chave privada a ser instalada.
- certs
- Certificate[]
A cadeia de certificados a ser instalada. A cadeia deve começar com o certificado folha e incluir a cadeia de confiança em ordem. Isso será retornado por android.security.KeyChain#getCertificateChain.
- alias
- String
O alias de chave privada no qual instalar o certificado. Se um certificado com esse alias já existir, ele será substituído.
- requestAccess
- Boolean
true para solicitar que o aplicativo de chamada tenha acesso às credenciais imediatamente. Caso contrário, o acesso às credenciais será fechado pela aprovação do usuário.
Retornos
true se as chaves foram instaladas, false caso contrário.
- Atributos
Comentários
Essa API pode ser chamada pelo seguinte para instalar uma cadeia de certificados e uma chave privada correspondente para o certificado folha: ul>li Proprietário do dispositivo</li li>><Proprietário do perfil</li li>><Instalador de certificado< delegado/li<>li>Aplicativo de gerenciamento< de credenciais/li li>><Um aplicativo que contém a android.Manifest.permission#MANAGE_DEVICE_POLICY_CERTIFICATES permissão</li></ul>><< Todos os aplicativos dentro do perfil poderão acessar a cadeia de certificados e usar a chave privada, dada a aprovação direta do usuário.
No Android android.os.Build.VERSION_CODES#S, o aplicativo de gerenciamento de credenciais pode chamar essa API. No entanto, essa API define o par de chaves como selecionável pelo usuário por padrão, o que não é permitido quando chamado pelo aplicativo de gerenciamento de credenciais. Em vez disso, #installKeyPair(ComponentName, PrivateKey, Certificate[], String, int) deve ser chamado sem #INSTALLKEY_SET_USER_SELECTABLE definir como um sinalizador. Observe que só pode haver um aplicativo de gerenciamento de credenciais em um dispositivo não gerenciado.
O chamador dessa API pode conceder a si mesmo acesso ao certificado e à chave privada imediatamente, sem a aprovação do usuário. É uma prática recomendada não solicitar isso, a menos que seja estritamente necessário, pois abre vulnerabilidades de segurança adicionais.
Observação: se o fornecido alias for de um alias existente, todas as concessões anteriores que os aplicativos receberam para acessar a chave e os certificados associados a esse alias serão revogados.
Partes desta página são modificações baseadas no trabalho criado e compartilhado pelo Project Open Source do Open Source e usadas de acordo com os termos descritos na Creative Commons 2.5.