グループからユーザーを削除します。EssDeleteFromGroupに似ていますが、ユーザー・ディレクトリの指定、またはGroupIdやUserIdの一意のID属性を受け入れることができます。
構文
ESS_FUNC_M EssDeleteFromGroupEx (
hCtx
,
GroupId
,
bIsGroupId
,
UserId
,
bUsingIdentity
);
| パラメータ | データ型 | 説明 |
|---|---|---|
hCtx |
ESS_HCTX_T |
APIコンテキスト・ハンドル(入力)。 |
GroupId |
ESS_STR_T |
グループ名またはID (入力)。groupname@providerまたは一意のID属性として指定できます。 |
bIsGroupId |
ESS_BOOL_T |
入力。GroupIdが名前かIDかを示します。TRUEの場合、GroupIdはIDです。 |
UserId |
ESS_STR_T |
グループから削除するユーザー名(入力)。username@providerまたは一意のID属性として指定できます。 |
bUsingIdentity |
ESS_BOOL_T |
入力。UserIDが名前かIDかを示します。TRUEの場合、UserIDはIDです。 |
備考
指定したグループのメンバー・リストから指定したユーザーを削除するのみでなく、この関数は削除するユーザーの関連グループのリストから指定したグループも削除します。
戻り値
なし。
アクセス
この関数を使用するには、ログインしたサーバーに対して、呼出し元がユーザーの作成/削除権限(ESS_PRIV_USERCREATE)を持っている必要があります。
例
void DisplayUserList(ESS_USHORT_T count, ESS_PSTR_T UserList)
{
ESS_USHORT_T i;
for (i = 0; i < count; i++)
{
if (UserList [i])
printf ("%s\n", UserList[i]);
}
}
ESS_FUNC_M ESS_RemoveUser (ESS_HCTX_T hCtx)
{
ESS_STS_T sts = ESS_STS_NOERR;
ESS_STR_T groupId, userId;
ESS_BOOL_T bGroupId, bUserId;
ESS_BOOL_T bisIdentity;
ESS_USHORT_T type;
ESS_USHORT_T count;
ESS_BOOL_T bUsingIdentity;
ESS_PSTR_T pUserList;
groupId = "IDRegularGroup@ldap";
userId = "IDUser8@ldap";
bGroupId = ESS_FALSE;
bUserId = ESS_TRUE;
sts = EssDeleteFromGroupEx (hCtx, groupId, bGroupId, userId, bUserId);
printf("EssDeleteFromGroupEx sts: %ld\n", sts);
if(!sts)
{
sts = EssGetGroupListEx(hCtx, groupId, bisIdentity, type, &count, &bUsingIdentity, &pUserList);
printf("EssGetGroupListEx sts: %ld\n", sts);
if(!sts)
{
if(pUserList)
{
printf ("\n---User/Group list for %s:\n", groupId);
DisplayUserList(count, pUserList);
}
else
printf ("\tUser list is empty\n");
}
}
return (sts);
}
関連トピック