查看源代码 ssh_agent (ssh v5.2.5)

使用 SSH 代理而不是默认 ssh_file 回调的的回调模块。

此模块定义了与 SSH 代理 通信的回调处理程序,可用于替换默认回调。这允许向存储 SSH 私钥的代理发出签名请求以进行身份验证。

Ssh_agent 实现了 ssh_client_key_api,允许在启动客户端时(例如使用 ssh:connect, ssh:shell)通过设置选项 key_cb 来使用它。

      {key_cb, {ssh_agent, []}}

代理通信通过 UNIX 域套接字建立。默认情况下,套接字路径将从 SSH_AUTH_SOCK 环境变量中获取,这是 OpenSSH 代理实现中的默认套接字路径。

为了设置不同的套接字路径,可以设置 socket_path 选项。

      {key_cb, {ssh_agent, [{socket_path, SocketPath}]}}

注意

这些函数是 SSH 应用程序的回调。它们不应从用户代码中调用!

概要

类型:选项

add_host_keyis_host_key 回调委托给的模块。默认为 ssh_file 模块。

设置与代理通信的套接字路径

设置通过套接字与代理通信时的超时时间,以毫秒为单位。默认值为 1000

类型:选项

链接到此类型

call_ssh_file_option()

查看源代码 (自 OTP 23.0 起)
-type call_ssh_file_option() :: {call_ssh_file, atom()}.

add_host_keyis_host_key 回调委托给的模块。默认为 ssh_file 模块。

链接到此类型

socket_path_option()

查看源代码 (自 OTP 23.0 起)
-type socket_path_option() :: {socket_path, string()}.

设置与代理通信的套接字路径

链接到此类型

timeout_option()

查看源代码 (自 OTP 23.0 起)
-type timeout_option() :: {timeout, integer()}.

设置通过套接字与代理通信时的超时时间,以毫秒为单位。默认值为 1000

函数

链接到此函数

add_host_key(Host, PublicKey, Options)

查看源代码 (自 OTP 23.0 起)
-spec add_host_key(string(), public_key:public_key(), Options) -> ok | {error, Error :: term()}
                      when Options :: ssh_client_key_api:client_key_cb_options(call_ssh_file_option()).

等同于 add_host_key/4

链接到此函数

add_host_key(Host, Port, PublicKey, Options)

查看源代码 (自 OTP 23.0 起)
-spec add_host_key(Host, inet:port_number(), public_key:public_key(), Options) -> Result
                      when
                          Host ::
                              inet:ip_address() |
                              inet:hostname() |
                              [inet:ip_address() | inet:hostname()],
                          Options :: ssh_client_key_api:client_key_cb_options(call_ssh_file_option()),
                          Result :: ok | {error, Error :: term()}.

此回调委托给 ssh_file 模块。

链接到此函数

is_host_key(Key, Host, Algorithm, Options)

查看源代码 (自 OTP 23.0 起)
-spec is_host_key(Key :: public_key:public_key(),
                  Host :: string(),
                  Algorithm :: ssh:pubkey_alg(),
                  Options) ->
                     boolean()
                     when Options :: ssh_client_key_api:client_key_cb_options(call_ssh_file_option()).

等同于 is_host_key/5

链接到此函数

is_host_key(Key, PeerName, Port, Algorithm, Opts)

查看源代码 (自 OTP 23.0 起)

此回调委托给 ssh_file 模块。

链接到此函数

user_key(Algorithm, Options)

查看源代码 (自 OTP 23.0 起)
-spec user_key(Algorithm :: ssh:pubkey_alg(), Options) -> Result
                  when
                      Result ::
                          {ok, public_key:private_key()} |
                          {ok, {ssh2_pubkey, PubKeyBlob :: binary()}} |
                          {error, string()},
                      Options ::
                          ssh_client_key_api:client_key_cb_options(socket_path_option() |
                                                                   timeout_option()).

类型和描述

请参阅 ssh_client_key_api, Module:user_key/2 中的 API 说明。