Função SspiPromptForCredentialsA (sspi.h)

Permite que um aplicativo SSPI ( Interface do Provedor de Suporte de Segurança ) 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 membro hwndParent da estrutura CREDUI_INFO não for NULL, essa função exibirá uma caixa de diálogo modal centralizada na janela pai.

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

Essa função ignora o membro hbmBanner 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 Salvar marcar está selecionada na caixa de diálogo exibida por essa função. Na saída, o valor desse parâmetro especifica se a caixa Salvar marcar foi selecionada quando o usuário clicou no botão Enviar na caixa de diálogo. Defina esse parâmetro como NULL para ignorar a caixa Salvar marcar.

Esse parâmetro será ignorado se o sinalizador 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 a senha e os provedores de credenciais de cartão inteligentes 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 .

Retornar valor

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.

Comentários

Observação

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 de pré-processador UNICODE. Misturar o uso do alias neutro de codificação com código que não seja neutro em codificação pode levar a incompatibilidades que resultam em erros de compilação ou de runtime. Para obter mais informações, consulte Convenções para protótipos de função.

Requisitos

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