JavaScript is required to for searching.
跳过导航链接
退出打印视图
Oracle Solaris 10 开发者安全性指南     Oracle Solaris 10 1/13 Information Library (简体中文)
search filter icon
search icon

文档信息

前言

1.  面向开发者的 Oracle Solaris 安全(概述)

2.  开发特权应用程序

3.  编写 PAM 应用程序和服务

4.  编写使用 GSS-API 的应用程序

5.  GSS-API 客户机示例

6.  GSS-API 服务器示例

7.  编写使用 SASL 的应用程序

8.  Oracle Solaris 加密框架介绍

9.  编写用户级加密应用程序和提供者

10.  使用智能卡框架

A.  基于 C 的 GSS-API 样例程序

B.  GSS-API 参考

GSS-API 函数

早期 GSS-API 版本中的函数

用于处理 OID 的函数

重命名的函数

GSS-API 状态码

GSS-API 主状态码值

显示状态码

状态码宏

GSS-API 数据类型和值

基本 GSS-API 数据类型

OM_uint32

gss_buffer_desc

gss_OID_desc

gss_OID_set_desc

gss_channel_bindings_struct

名称类型

通道绑定的地址类型

GSS-API 中特定于实现的功能

特定于 Oracle Solaris 的函数

人工可读的名称语法

匿名名称的格式

实现选定数据类型

删除上下文和存储数据

保护通道绑定信息

上下文导出和进程间令牌

支持的凭证类型

凭证到期

上下文到期

回绕大小限制和 QOP 值

使用 minor_status 参数

Kerberos v5 状态码

Kerberos v5 中状态码 1 的返回消息

Kerberos v5 中状态码 2 的返回消息

Kerberos v5 中状态码 3 的返回消息

Kerberos v5 中状态码 4 的返回消息

Kerberos v5 中状态码 5 的返回消息

Kerberos v5 中状态码 6 的返回消息

Kerberos v5 中状态码 7 的返回消息

C.  指定 OID

D.  SASL 示例的源代码

E.  SASL 参考表

F.  打包和签署加密提供者

词汇表

索引

GSS-API 数据类型和值

本节介绍各种类型的 GSS-API 数据类型和值。某些数据类型(如 gss_cred_id_tgss_name_t)对用户是不透明的。这些数据类型无需介绍。本节介绍以下主题:

基本 GSS-API 数据类型

本节介绍 GSS-API 使用的数据类型。

OM_uint32

OM_uint32 是与平台无关的 32 位无符号整数。

gss_buffer_desc

包含 gss_buffer_t 指针的 gss_buffer_desc 的定义采用以下格式:

typedef struct gss_buffer_desc_struct {
        size_t length;
        void *value;
} gss_buffer_desc, *gss_buffer_t;

gss_OID_desc

包含 gss_OID 指针的 gss_OID_desc 的定义采用以下格式:

typedef struct gss_OID_desc_struct {
        OM_uint32 length;
        void*elements;
} gss_OID_desc, *gss_OID;

gss_OID_set_desc

包含 gss_OID_set 指针的 gss_OID_set_desc 的定义采用以下格式:

typedef struct gss_OID_set_desc_struct  {
        size_t  count;
        gss_OID elements;
} gss_OID_set_desc, *gss_OID_set;

gss_channel_bindings_struct

gss_channel_bindings_struct 结构和 gss_channel_bindings_t 指针的定义的格式如下:

typedef struct gss_channel_bindings_struct {
        OM_uint32 initiator_addrtype;
        gss_buffer_desc initiator_address;
        OM_uint32 acceptor_addrtype;
        gss_buffer_desc acceptor_address;
        gss_buffer_desc application_data;
} *gss_channel_bindings_t;

名称类型

名称类型指示关联名称的格式。有关名称和名称类型的更多信息,请参见GSS-API 中的名称GSS-API OID。GSS-API 支持下表中的 gss_OID 名称类型。

GSS_C_NO_NAME

建议将符号名称 GSS_C_NO_NAME 作为参数值,以指示在名称传输中未提供任何值。

GSS_C_NO_OID

此值对应于空输入值,而不是实际的对象标识符。如果指定了该值,则该值基于机制特定缺省可列显语法指示关联名称的解释。

GSS_C_NT_ANONYMOUS

标识匿名名称的方式。可以比较此值,以与机制无关的方式确定名称是否引用匿名主体。

GSS_C_NT_EXPORT_NAME

使用 gss_export_name() 函数导出的名称。

GSS_C_NT_HOSTBASED_SERVICE

用于表示与主机关联的服务。此名称格式是按照以下方式使用两个元素(服务和主机名)构造的:service@hostname

GSS_C_NT_MACHINE_UID_NAME

用于指示与本地系统中的用户对应的数字用户标识符。该值的解释特定于 OS。gss_import_name() 函数将此 UID 解析为用户名,之后该 UID 就表示为用户名形式。

GSS_C_NT_STRING_STRING_UID_NAME

用于指示一个数字字符串,该字符串表示本地系统中的用户的数字用户标识符。该值的解释特定于 OS。此名称类型与计算机 UID 格式类似,不同的是缓冲区包含表示用户 ID 的字符串。

GSS_C_NT_USER_NAME

本地系统中的命名用户。该值的解释特定于 OS。该值采用以下格式:username

通道绑定的地址类型

下表给出了 gss_channel_bindings_struct 结构的 initiator_addrtype acceptor_addrtype 字段的可能值。这些字段指示名称可以采用的格式,例如 ARPAnet IMP 地址或 AppleTalk 地址。通道绑定将在在 GSS-API 中使用通道绑定中讨论。

表 B-4 通道绑定地址类型

字段
值(十进制)
地址类型
GSS_C_AF_UNSPEC
0
未指定的地址类型
GSS_C_AF_LOCAL
1
本地主机
GSS_C_AF_INET
2
Internet 地址类型,例如 IP
GSS_C_AF_IMPLINK
3
ARPAnet IMP
GSS_C_AF_PUP
4
pup 协议,例如 BSP
GSS_C_AF_CHAOS
5
MIT CHAOS 协议
GSS_C_AF_NS
6
XEROX NS
GSS_C_AF_NBS
7
nbs
GSS_C_AF_ECMA
8
ECMA
GSS_C_AF_DATAKIT
9
Datakit 协议
GSS_C_AF_CCITT
10
CCITT
GSS_C_AF_SNA
11
IBM SNA
GSS_C_AF_DECnet
12
DECnet
GSS_C_AF_DLI
13
直接数据链接接口
GSS_C_AF_LAT
14
LAT
GSS_C_AF_HYLINK
15
NSC 超级通道
GSS_C_AF_APPLETALK
16
AppleTalk
GSS_C_AF_BSC
17
BISYNC
GSS_C_AF_DSS
18
分布式系统服务
GSS_C_AF_OSI
19
OSI TP4
GSS_C_AF_X25
21
X.25
GSS_C_AF_NULLADDR
255
未指定任何地址