Compartilhar via


Função SspiPromptForCredentialsA (sspi.h)

Permite que um aplicativo SSPI (Security Support Provider Interface ) solicite que um usuário insira credenciais.

Sintaxe

unsigned long SEC_ENTRY SspiPromptForCredentialsA(
  [in]                PCSTR                           pszTargetName,
  [in]                PCREDUI_INFOA                   pUiInfo,
  [in]                unsigned long                   dwAuthError,
  [in]                PCSTR                           pszPackage,
  [in]                PSEC_WINNT_AUTH_IDENTITY_OPAQUE pInputAuthIdentity,
  [out]               PSEC_WINNT_AUTH_IDENTITY_OPAQUE *ppAuthIdentity,
  [in, out, optional] int                             *pfSave,
  [in]                unsigned long                   dwFlags
);

Parâmetros

[in] pszTargetName

O nome do destino a ser usado.

[in] pUiInfo

Um ponteiro para uma estrutura CREDUI_INFO que contém informações para personalizar a aparência da caixa de diálogo exibida por essa função.

Se o hwndParent membro da estrutura CREDUI_INFO não estiver NULL, essa função exibirá uma caixa de diálogo modal centralizada na janela pai.

Se o hwndParent membro da estrutura CREDUI_INFO for NULL, a função exibirá uma caixa de diálogo centralizada na tela.

Essa função ignora o hbmBanner membro da estrutura CREDUI_INFO.

[in] dwAuthError

Um código de erro do Windows, definido em Winerror.h, que é exibido na caixa de diálogo. Se as credenciais coletadas anteriormente não forem válidas, o chamador usará esse parâmetro para passar a mensagem de erro da API que coletou as credenciais (por exemplo, Winlogon) para essa função. A mensagem de erro correspondente é formatada e exibida na caixa de diálogo. Defina o valor desse parâmetro como zero para não exibir nenhuma mensagem de erro.

[in] pszPackage

O nome do pacote de segurança a ser usado.

[in] pInputAuthIdentity

Uma estrutura de identidade usada para preencher campos de credencial na caixa de diálogo. Para deixar os campos de credencial vazios, defina o valor desse parâmetro como NULL.

[out] ppAuthIdentity

Uma estrutura de identidade que representa as credenciais coletadas por essa função.

Quando terminar de usar essa estrutura, libere-a chamando a função SspiFreeAuthIdentity.

[in, out, optional] pfSave

Um ponteiro para um valor booliano que, na entrada, especifica se a caixa de seleção Salvar está marcada na caixa de diálogo exibida por essa função. Na saída, o valor desse parâmetro especifica se a caixa de seleção Salvar foi selecionada quando o usuário clicou no botão enviar na caixa de diálogo. Defina esse parâmetro para NULL para ignorar a caixa de seleção salvar .

Esse parâmetro será ignorado se o sinalizador de CREDUIWIN_CHECKBOX não estiver definido no parâmetro dwFlags.

[in] dwFlags

Sinalizadores que determinam o comportamento dessa função. O sinalizador a seguir está definido no momento.

Valor Significado
SSPIPFC_CREDPROV_DO_NOT_SAVE
0x00000001
O valor do parâmetro pfSave é ignorado e as credenciais coletadas por essa função não são salvas.

Windows 7 e Windows Server 2008 R2: O valor do parâmetro pfSave é ignorado e as credenciais coletadas por essa função não são salvas. Somente o nome desse valor possível foi SSPIPFC_SAVE_CRED_BY_CALLER.

SSPIPFC_NO_CHECKBOX
0x00000002
O valor significa que os provedores de credenciais de senha e cartão inteligente não exibirão a caixa de seleção "Lembrar minhas credenciais" para o usuário. A função SspiPromptForCredentials passa esse valor de sinalizador, SSPIPFC_NO_CHECKBOX, no parâmetro pvInAuthBuffer da função CredUIPromptForWindowsCredentials.

Valor de retorno

Se a função for bem-sucedida, ela retornará SEC_E_OK.

Se a função falhar, ela retornará um código de erro diferente de zero.

Observações

Nota

O cabeçalho sspi.h define SspiPromptForCredentials como um alias que seleciona automaticamente a versão ANSI ou Unicode dessa função com base na definição da constante do pré-processador UNICODE. A combinação do uso do alias neutro de codificação com código que não é neutro em codificação pode levar a incompatibilidades que resultam em erros de compilação ou de runtime. Para obter mais informações, consulte Conventions for Function Prototypes.

Requisitos

Requisito Valor
de cliente com suporte mínimo Windows 7 [somente aplicativos da área de trabalho]
servidor com suporte mínimo Windows Server 2008 R2 [somente aplicativos da área de trabalho]
da Plataforma de Destino Windows
cabeçalho sspi.h
biblioteca Credui.lib
de DLL Credui.dll