Spec-Zone .ru
спецификации, руководства, описания, API
|
ADC домой > Ссылочная библиотека> Ссылка> Объединяющийся в сеть> Базовая Основа> Базовая Ссылка Идентификационных данных Служб
|
CSIdentity |
Платформа: | /System/Library/Frameworks/CoreServices.framework/Frameworks/OSServices.framework |
См. также: | |
Включает: |
Объект CSIdentity представляет пользователя или объект группы, известный системе. Объект идентификационных данных имеет следующие требуемые атрибуты: класс (пользователь или группа), уникальный identitfier (UUID), полное имя, ID Posix (UID или GID), и имя Posix (a.k.a. «короткое» имя). Существует также много дополнительных атрибутов, таких как адрес электронной почты, данные изображения, и т.д.
Идентификационные данные группы имеют членство, которое может включать обоих пользователей, а также другие группы. Идентификационные данные могут быть протестированы на членство в определенной группе.
Объект CSIdentity является частной копией информации об идентификационных данных. Это может быть изменено в памяти, но требует авторизации передать изменения назад в базе данных полномочий идентификационных данных. На версии 10.5 OS X только локальные идентификационные данные могут быть созданы, изменены или удалены, и только пользователями с Учетными данными администратора.
Изменения могут фиксироваться синхронно или асинхронно. Во время фиксации происходит все подтверждение правильности данных.
Два идентификационных данных являются CFEqual, если у них есть тот же класс и UUID.
Удаление
- CSIdentityDelete
- Постоянно удалите идентификационные данные из базы данных идентификационных данных
изменения
- CSIdentityCommit
- Синхронно передайте все незаконченные изменения в базе данных полномочий идентификационных данных
- CSIdentityCommitAsynchronously
- Asychronously передают все незаконченные изменения в базе данных полномочий идентификационных данных
- CSIdentityIsCommitting
- Определите, происходит ли работа фиксации
- CSIdentityRemoveClient
- Лишите законной силы клиентскую структуру идентификационных данных для остановки клиентских обратных вызовов
Методы
- CSIdentityAuthenticateUsingPassword
- Попытка аутентифицировать пароль для пользовательских идентификационных данных
- CSIdentityGetCertificate
- Получите сертификат аутентификации пользователя
- CSIdentityIsEnabled
- Определите, включают ли пользователю
Методы
- CSIdentityCreateGroupMembershipQuery
- Создает запрос для нахождения элементов группы
Атрибуты идентификационных данных
- CSIdentityCreatePersistentReference
- Создайте непрозрачную, персистентную ссылку на данные к идентификационным данным
- CSIdentityGetAliases
- Получите псевдонимы идентификационных данных.
- CSIdentityGetAuthority
- Возвращает полномочия идентификационных данных идентификационных данных
- CSIdentityGetClass
- Возвращает класс идентификационных данных
- CSIdentityGetEmailAddress
- Получите адрес электронной почты пользовательских идентификационных данных
- CSIdentityGetFullName
- Получите полное имя идентификационных данных
- CSIdentityGetImageData
- Получите изображение, связанное с пользовательскими идентификационными данными
- CSIdentityGetImageDataType
- Получите универсальный идентификатор типа (UTI) изображения идентификационных данных
- CSIdentityGetImageURL
- Получите URL к файлу образа идентификационных данных
- CSIdentityGetPosixID
- Получите POSIX ID идентификационных данных.
- CSIdentityGetPosixName
- Получите имя POSIX (краткое название) идентификационных данных.
- CSIdentityGetUUID
- Возвращает UUID идентификационных данных.
- CSIdentityIsHidden
- Определите, включен ли скрытый атрибут идентификационных данных
- CSIdentityIsMemberOfGroup
- Проверьте, являются ли идентификационные данные memeber группы
состав группы
- CSIdentityAddAlias
- Добавьте псевдоним имени к идентификационным данным
- CSIdentityAddMember
- Добавьте идентификационные данные к группе
- CSIdentityRemoveAlias
- Удалите имя псевдонима из идентификационных данных
- CSIdentityRemoveMember
- Удалите элемент из группы
- CSIdentitySetCertificate
- Установите сертификат аутентификации пользователя
- CSIdentitySetEmailAddress
- Установите адрес электронной почты идентификационных данных
- CSIdentitySetFullName
- Устанавливает полное имя идентификационных данных.
- CSIdentitySetImageData
- Установите внутренне сохраненный тип данных image и тип данных для идентификационных данных
- CSIdentitySetImageURL
- Установите URL внешнего хранения изображения идентификационных данных
- CSIdentitySetIsEnabled
- Включите или отключите пользователя
- CSIdentitySetPassword
- Установите пароль пользователя
Идентификационные данные
- CSIdentityCreate
- Создает новые идентификационные данные
- CSIdentityCreateCopy
- Создает копию идентификационных данных
- CSIdentitySetIsEnabled
- Включите или отключите пользователя
CSIdentityAddAlias |
Добавьте псевдоним имени к идентификационным данным
extern void CSIdentityAddAlias( CSIdentityRef identity, CFStringRef alias );
identity
alias
Это изменение должно фиксироваться.
CSIdentityAddMember |
Добавьте идентификационные данные к группе
extern void CSIdentityAddMember( CSIdentityRef group, CSIdentityRef member );
group
member
Это изменение в группе должно фиксироваться.
CSIdentityAuthenticateUsingPassword |
Попытка аутентифицировать пароль для пользовательских идентификационных данных
extern Boolean CSIdentityAuthenticateUsingPassword( CSIdentityRef user, CFStringRef password );
user
password
Если passord корректен для указанного пользователя, возвращает true
CSIdentityCommit |
Синхронно передайте все незаконченные изменения в базе данных полномочий идентификационных данных
extern Boolean CSIdentityCommit( CSIdentityRef identity, AuthorizationRef authorization, CFErrorRef *error );
identity
authorization
error
Если ошибка произошла, возвращает true в случае успеха, ложь
CSIdentityCommitAsynchronously |
Asychronously передают все незаконченные изменения в базе данных полномочий идентификационных данных
extern Boolean CSIdentityCommitAsynchronously( CSIdentityRef identity, const CSIdentityClientContext *clientContext, CFRunLoopRef runLoop, CFStringRef runLoopMode, AuthorizationRef authorization );
identity
clientContext
runLoop
runLoopMode
authorization
Возвращает true, если работа фиксации запускается, указал, что будет следовать statusUpdated обратный вызов. Возвращает false, если идентификационные данные не имеют никаких незафиксированных изменений, или фиксация уже происходит
CSIdentityCreate |
Создает новые идентификационные данные
extern CSIdentityRef CSIdentityCreate( CFAllocatorRef allocator, CSIdentityClass identityClass, CFStringRef fullName, CFStringRef posixName, CSIdentityFlags flags, CSIdentityAuthorityRef authority );
allocator
identityClass
fullName
posixName
flags
authority
CSIdentityRef недавно создаваемого объекта идентификационных данных. NULL возвратов, только если выделение перестало работать.
Новые идентификационные данные выделяются, но не посвящают себя базе данных полномочий идентификационных данных. Это станет персистентным и доступным другим клиентам, фиксируясь, используя CSIdentityCommit или CSIdentityCommitAsynchronously.
CSIdentityCreateCopy |
Создает копию идентификационных данных
extern CSIdentityRef CSIdentityCreateCopy( CFAllocatorRef allocator, CSIdentityRef identity );
allocator
identity
CSIdentityRef недавно создаваемого объекта идентификационных данных
CSIdentityCreateGroupMembershipQuery |
Создает запрос для нахождения элементов группы
extern CSIdentityQueryRef CSIdentityCreateGroupMembershipQuery( CFAllocatorRef allocator, CSIdentityRef group );
allocator
group
CSIdentityQueryRef недавно созданного объекта. Запрос готов быть выполненным.
Используя запрос к поиску состав группы позволяет вызывающей стороне выполнять запрос синхронно или асинхронно.
CSIdentityCreatePersistentReference |
Создайте непрозрачную, персистентную ссылку на данные к идентификационным данным
extern CFDataRef CSIdentityCreatePersistentReference( CFAllocatorRef allocator, CSIdentityRef identity );
allocator
identity
Возвращает новую персистентную ссылку для идентификационных данных
Персистентная ссылка идентификационных данных является непрозрачным объектом данных, от которого может объект идентификационных данных, запросил будущее (см. CSIdentityQueryCreateForPersistentReference). Персистентная ссылка подходит для хранения во внешнем хранилище данных, например, как запись в специализированном списке управления доступом, связанном с совместно используемым ресурсом. Использование персистентной ссылки идентификационных данных предпочтено по чистой основанной на UUID ссылке идентификационных данных, потому что персистентная ссылка содержит дополнительную информацию, должен был оптимизировать запрос идентификационных данных и улучшить пользовательский опыт при работе в распределенной среде идентификационных данных (LDAP, Active Directory, и т.д.).
CSIdentityDelete |
Постоянно удалите идентификационные данные из базы данных идентификационных данных
extern void CSIdentityDelete( CSIdentityRef identity );
identity
Устанавливает идентификационные данные в удаленное состояние. Это изменение должно фиксироваться.
CSIdentityGetAliases |
Получите псевдонимы идентификационных данных.
extern CFArrayRef CSIdentityGetAliases( CSIdentityRef identity );
identity
Возвращает массив, содержащий псевдонимы имени идентификационных данных как CFStringRefs. Массив может быть пустым. Когда идентификационные данные изменяются, объект идентификационных данных может выпустить свою ссылку на возвращаемое значение.
Псевдонимы являются альтернативными названиями для идентификационных данных. Как со всеми именами идентификационных данных, псевдонимы должны быть уникальными во всем пространстве имен полномочий идентификационных данных.
CSIdentityGetAuthority |
Возвращает полномочия идентификационных данных идентификационных данных
extern CSIdentityAuthorityRef CSIdentityGetAuthority( CSIdentityRef identity );
identity
Объект CSIdentityAuthorityRef
CSIdentityGetCertificate |
Получите сертификат аутентификации пользователя
extern SecCertificateRef CSIdentityGetCertificate( CSIdentityRef user );
user
Сертификат идентификационных данных или NULL, если нет никакого сертификата. Когда идентификационные данные изменяются, объект идентификационных данных может выпустить свою ссылку на возвращаемое значение.
Сертификат аутентификации может использоваться в основанных на PKI протоколах для аутентификации пользователей.
CSIdentityGetClass |
Возвращает класс идентификационных данных
extern CSIdentityClass CSIdentityGetClass( CSIdentityRef identity );
identity
CSIdentityClass идентификационных данных
CSIdentityGetEmailAddress |
Получите адрес электронной почты пользовательских идентификационных данных
extern CFStringRef CSIdentityGetEmailAddress( CSIdentityRef identity );
identity
Если нет никакого адреса электронной почты, возвращает адрес электронной почты идентификационных данных или NULL. Когда идентификационные данные изменяются, объект идентификационных данных может выпустить свою ссылку на возвращаемое значение.
CSIdentityGetFullName |
Получите полное имя идентификационных данных
extern CFStringRef CSIdentityGetFullName( CSIdentityRef identity );
identity
Возвращает полное имя идентификационных данных как CFStringRef. Этим атрибутом всегда является не-NULL. Когда идентификационные данные изменяются, объект идентификационных данных может выпустить свою ссылку на возвращаемое значение.
Полное имя является именем, выведенным на экран в пользовательском интерфейсе.
CSIdentityGetImageData |
Получите изображение, связанное с пользовательскими идентификационными данными
extern CFDataRef CSIdentityGetImageData( CSIdentityRef identity );
identity
Если нет никаких данных изображения, возвращает данные изображения идентификационных данных как CFDataRef или NULL. Когда идентификационные данные изменяются, объект идентификационных данных может выпустить свою ссылку на возвращаемое значение.
CSIdentityGetImageDataType |
Получите универсальный идентификатор типа (UTI) изображения идентификационных данных
extern CFStringRef CSIdentityGetImageDataType( CSIdentityRef identity );
identity
Если нет никаких данных изображения, возвращает UTI как CFStringRef для данных изображения этих идентификационных данных или NULL. Когда идентификационные данные изменяются, объект идентификационных данных может выпустить свою ссылку на возвращаемое значение.
CSIdentityGetImageURL |
Получите URL к файлу образа идентификационных данных
extern CFURLRef CSIdentityGetImageURL( CSIdentityRef identity );
identity
Возвращает CFURLRef, содержащий расположение файла образа пользователя или NULL, если нет никакого изображения URL. Когда идентификационные данные изменяются, объект идентификационных данных может выпустить свою ссылку на возвращаемое значение.
CSIdentityGetPosixID |
Получите POSIX ID идентификационных данных.
extern id_t CSIdentityGetPosixID( CSIdentityRef identity );
identity
Возвращает идентификатор POSIX идентификационных данных (UID или GID).
CSIdentityGetPosixName |
Получите имя POSIX (краткое название) идентификационных данных.
extern CFStringRef CSIdentityGetPosixName( CSIdentityRef identity );
identity
Возвращает имя POSIX идентификационных данных. Этим атрибутом всегда является не-NULL. Когда идентификационные данные изменяются, объект идентификационных данных может выпустить свою ссылку на возвращаемое значение.
Имя POSIX не может быть изменено после того, как идентификационные данные были созданы.
CSIdentityGetTypeID |
Возвращает идентификатор типа CSIdentity
extern CFTypeID CSIdentityGetTypeID( void );
CFTypeID Базового типа Основы CSIdentity
CSIdentityGetUUID |
Возвращает UUID идентификационных данных.
extern CFUUIDRef CSIdentityGetUUID( CSIdentityRef identity );
identity
Объект CFUUID, содержащий UUID идентификационных данных. Никогда не будет возвращать NULL.
CSIdentityIsCommitting |
Определите, происходит ли работа фиксации
extern Boolean CSIdentityIsCommitting( CSIdentityRef identity );
identity
Если работа фиксации происходит, возвращает true
CSIdentityIsEnabled |
Определите, включают ли пользователю
extern Boolean CSIdentityIsEnabled( CSIdentityRef user );
user
Если пользователю включают, возвращает true. Невключенный пользователь не может аутентифицировать.
Невключенный пользователь не может аутентифицировать. Эта установка может использоваться для временного предоставления доступа пользователя ко всем службам и ресурсам.
CSIdentityIsHidden |
Определите, включен ли скрытый атрибут идентификационных данных
extern Boolean CSIdentityIsHidden( CSIdentityRef identity );
identity
Если идентификационные данные создавались со скрытым атрибутом, возвращает true
CSIdentityIsMemberOfGroup |
Проверьте, являются ли идентификационные данные memeber группы
extern Boolean CSIdentityIsMemberOfGroup( CSIdentityRef identity, CSIdentityRef group );
identity
group
Если идентификационные данные являются элементом (прямо или косвенно) указанной группы, возвращает true
CSIdentityRemoveAlias |
Удалите имя псевдонима из идентификационных данных
extern void CSIdentityRemoveAlias( CSIdentityRef identity, CFStringRef alias );
identity
alias
Это изменение должно фиксироваться.
CSIdentityRemoveClient |
Лишите законной силы клиентскую структуру идентификационных данных для остановки клиентских обратных вызовов
extern void CSIdentityRemoveClient( CSIdentityRef identity );
identity
После возврата эта функция гарантирует, что клиентские обратные вызовы никогда не будут вызываться снова. Используйте эту функцию при выпуске идентификационных данных, которые могут иметь выдающийся асинхронный запрос. Эта функция не отменяет выдающуюся работу фиксации, потому что не может быть прервана фиксация.
CSIdentityRemoveMember |
Удалите элемент из группы
extern void CSIdentityRemoveMember( CSIdentityRef group, CSIdentityRef member );
group
member
Это изменение в группе должно фиксироваться.
CSIdentitySetCertificate |
Установите сертификат аутентификации пользователя
extern void CSIdentitySetCertificate( CSIdentityRef user, SecCertificateRef certificate );
user
certificate
Подчиненное имя в сертификате будет функционировать как псевдоним для идентификационных данных. Как со всеми именами идентификационных данных, подчиненное имя должно быть уникальным во всем пространстве имен полномочий идентификационных данных. Это изменение должно быть представлено.
CSIdentitySetEmailAddress |
Установите адрес электронной почты идентификационных данных
extern void CSIdentitySetEmailAddress( CSIdentityRef identity, CFStringRef emailAddress );
identity
emailAddress
Это изменение должно фиксироваться.
CSIdentitySetFullName |
Устанавливает полное имя идентификационных данных.
extern void CSIdentitySetFullName( CSIdentityRef identity, CFStringRef fullName );
identity
fullName
Это изменение должно фиксироваться.
CSIdentitySetImageData |
Установите внутренне сохраненный тип данных image и тип данных для идентификационных данных
extern void CSIdentitySetImageData( CSIdentityRef identity, CFDataRef imageData, CFStringRef imageDataType );
identity
imageData
imageDataType
Это изменение должно фиксироваться.
CSIdentitySetImageURL |
Установите URL внешнего хранения изображения идентификационных данных
extern void CSIdentitySetImageURL( CSIdentityRef identity, CFURLRef url );
identity
url
Это изменение должно фиксироваться.
CSIdentitySetIsEnabled |
Включите или отключите пользователя
extern void CSIdentitySetIsEnabled( CSIdentityRef user, Boolean isEnabled );
user
isEnabled
Отключенная учетная запись пользователя не может аутентифицировать. Учетные данные (пароль и сертификат) не затронуты. Это изменение должно фиксироваться.
CSIdentitySetPassword |
Установите пароль пользователя
extern void CSIdentitySetPassword( CSIdentityRef user, CFStringRef password );
user
password
Установка в NULL пароля удаляет текущий пароль и отключает аутентификацию по паролю для пользователя. Установка пароля к строке нулевой длины позволяет аутентификацию с пустым паролем. Это изменение должно фиксироваться.
CSIdentityQueryRef |
typedef opaque CSIdentityQueryRef;
Ссылка на идентификационные данные запрашивает объект, привыкший к идентификационным данным поиска в базе данных полномочий идентификационных данных.
CSIdentityRef |
typedef opaque CSIdentityRef;
Ссылка на объект идентификационных данных. Может быть или пользователь или группа.
CSIdentityClientContext |
struct CSIdentityClientContext { CFIndex version; void *info; CFAllocatorRetainCallBack retain; CFAllocatorReleaseCallBack release; CFAllocatorCopyDescriptionCallBack copyDescription; CSIdentityStatusUpdatedCallback statusUpdated; };
version
- Номер версии клиентского типа структуры. Число текущей версии 0.
info
- Произвольный указатель на определенные клиентами данные, которые могут быть связаны с клиентом и передаются обратным вызовам.
retain
- Обратный вызов раньше добавлял сохранение для на объекте клиента для жизни асинхронной работы и может использоваться для временных ссылок, которые должны взять идентификационные данные. Этот обратный вызов возвращает фактический информационный указатель, который будет передан statusUpdated обратному вызову. Может быть NULL.
release
- Обратный вызов раньше удалял сохранение ранее полученного за объект клиента. Может быть NULL.
copyDescription
- Обратный вызов раньше создавал представление описательной строки объекта клиента для отладки целей. Это используется CFCopyDescription () функция. Может быть NULL.
statusUpdated
- Когда состояние asnchronous работы изменяется, клиентский обратный вызов вызвал
Структура, содержащая определяемые пользователем данные и обратные вызовы, используется во время асинхронных фиксаций
Коды ошибки CSIdentity |
enum { kCSIdentityUnknownAuthorityErr = -1, kCSIdentityAuthorityNotAccessibleErr = -2, kCSIdentityPermissionErr = -3, kCSIdentityDeletedErr = -4, kCSIdentityInvalidFullNameErr = -5, kCSIdentityDuplicateFullNameErr = -6, kCSIdentityInvalidPosixNameErr = -7, kCSIdentityDuplicatePosixNameErr = -8 };
kCSIdentityUnknownAuthorityErr
- Указанные полномочия не распознаны
kCSIdentityAuthorityNotAccessibleErr
- Указанные полномочия в настоящее время не доступны
kCSIdentityPermissionErr
- Вызывающая сторона не имеет разрешения выполнить работу
kCSIdentityDeletedErr
- Требуемые идентификационные данные были deteled
kCSIdentityInvalidFullNameErr
- Полное имя не допустимо (длина: [1-255])
kCSIdentityDuplicateFullNameErr
- Полное имя является aleady, присвоенным другим идентификационным данным
kCSIdentityInvalidPosixNameErr
- Имя Posix не допустимо (символьный набор: [a-zA-Z0-9_-] длина: [1-255])
kCSIdentityDuplicatePosixNameErr
- Имя Posix является aleady, присвоенным другим идентификационным данным
Коды ошибки в ошибочном домене CSIdentity
CSIdentityClass |
enum { kCSIdentityClassUser = 1, kCSIdentityClassGroup = 2 };
kCSIdentityClassUser
- Значение класса для пользовательских идентификационных данных
kCSIdentityClassGroup
- Значение класса для идентификационных данных группы
Перечисление, указывающее класс идентификационных данных
CSIdentityFlags |
enum { kCSIdentityFlagNone = 0, kCSIdentityFlagHidden = 1 };
kCSIdentityFlagNone
- Используйте этот флаг для установки дополнительных атрибутов для новых идентификационных данных
kCSIdentityFlagHidden
- Этот флаг заставляет идентификационные данные быть «скрытыми», т.е. исключенными из большинства видимых пользователем списков идентификационных данных. Скрытые идентификационные данные включают административных пользователей и группы, такие как корень, www, и mysql. Группы управления доступом системной службы должны быть созданы со скрытым флагом.
Флаги, используемые при создании новых идентификационных данных
Состояние |
enum { kCSIdentityCommitCompleted = 1 };
kCSIdentityCommitCompleted
- Идентификационные данные посвятили себя базе данных полномочий
значения
Последнее обновление: 11.03.2008