ユーザーをログインさせ、パスワードを変更します。パスワードが失効した場合、または次のログイン時に変更が必要な場合にこの関数を使用します。
構文
| パラメータ | データ型 | 説明 |
|---|---|---|
HInstance |
ESS_HINST_T |
APIインスタンス・ハンドル。 |
Server |
ESS_STR_T |
ネットワーク・サーバー名の文字列。 サーバー名は、hostname、hostname:port、またはAPSサーブレットのエンドポイントにEssbaseフェイルオーバー・クラスタ名を付加したURLとして表すことができます。次に例を示します:
http://myhost:13080/aps/Essbase?clustername=Essbase-Cluster1
保護モード(SSL)の場合、URLの構文は次のとおりです
http[s]://host:port/aps/Essbase?ClusterName=logicalName&SecureMODE=yesORno
たとえば、
https://myhost:13080/aps/Essbase?clustername=Essbase-Cluster1&SecureMODE=Yes
|
UserName |
ESS_STR_T |
ユーザー名。 |
Password |
ESS_STR_T |
旧パスワード。 |
NewPassword |
ESS_STR_T |
新パスワード。 |
pDbCount |
ESS_PUSHORT_T |
アクセス可能なデータベースの数。 |
ppDbList |
ESS_PPAPPDB_T |
アクセス可能なアプリケーションデータベース構造体の配列へのポインタのアドレス。 |
phCtx |
ESS_PHCTX_T |
コンテキスト・ハンドルへのポインタ。 |
備考
この関数は、EssLoginを呼び出し、ステータス・コード1051090(パスワードが期限切れ)または1051093(すぐにパスワードを変更)を受け取った後に呼び出します。
Microsoft Windowsでは、EssLoginSetPasswordのかわりにEssAutoLoginを使用することを検討してください。
ppDbListに対して割り当てられたメモリーは、EssFreeを使用して解放します。
戻り値
成功の場合、この関数は次の値を戻します:
hCtxでは、コンテキスト・ハンドル。
pDbCountに、ユーザーがアクセス可能なデータベースの数。
ppDbListに、アクセス可能なアプリケーションデータベース構造体の配列へのポインタ。
アクセス
この関数を呼び出す前に、EssInitを呼び出してAPIを初期化し、有効なインスタンス・ハンドルを取得します。
例
ESS_FUNC_M
ESS_LoginSetPassword (ESS_HINST_T hInst)
{
ESS_FUNC_M sts = ESS_STS_NOERR;
ESS_HCTX_T hCtx;
ESS_USHORT_T Items;
ESS_USHORT_T ind;
ESS_PAPPDB_T pAppsDbs = NULL;
ESS_STR_T SvrName;
ESS_STR_T User;
ESS_STR_T Password;
ESS_STR_T NewPassword;
SvrName = "POPLAR";
User = "Joseph";
Password = "Password";
NewPassword = "NewPassword";
sts = EssLoginSetPassword (hInst, SvrName, User, Password, NewPassword
&Items, &pAppsDbs, &hCtx);
if (!sts)
{
for (ind = 0; ind < Items; ind++)
{
if ((pAppsDbs+ind) != NULL)
{
if ((pAppsDbs[ind].AppName != NULL) &&
(pAppsDbs[ind].DbName != NULL))
{
printf ("%s\r\n", pAppsDbs[ind].AppName);
printf ("%s\r\n", pAppsDbs[ind].DbName);
}
}
}
if (pAppsDbs)
EssFree(hInst,pAppsDbs);
}
return(sts);
}
関連トピック