Sm_PolicyApi_Login()
初期化の後、Sm_PolicyApi_Login() へのコールを成功させることが、追加の関数コールを行うための前提条件です。この関数は、管理者のログイン認証情報(ユーザ名とパスワード)を確認します。API が初期化されていない、または不適当に初期化された init ハンドルを検出すると、エラーが生成されます。管理者が認証されると、関数は内部データ構造体とリソースを初期化します。いったん管理者がログインされると、ポリシー サーバはセッション ハンドルを初期化します。このハンドルは、すべてのポリシー管理 API 関数への入力パラメータとして使用されます。
casso127jpjp
初期化の後、Sm_PolicyApi_Login() へのコールを成功させることが、追加の関数コールを行うための前提条件です。この関数は、管理者のログイン認証情報(ユーザ名とパスワード)を確認します。API が初期化されていない、または不適当に初期化された init ハンドルを検出すると、エラーが生成されます。管理者が認証されると、関数は内部データ構造体とリソースを初期化します。いったん管理者がログインされると、ポリシー サーバはセッション ハンドルを初期化します。このハンドルは、すべてのポリシー管理 API 関数への入力パラメータとして使用されます。
内部では、セッション ハンドルには、(init ハンドルからの)クライアント セッション データおよび管理者セッション データを含む、ポリシー管理 API の操作に必要なデータ構造およびコンテキスト情報が含まれます。データ構造およびコンテキスト情報は呼び出し元には見えません。
Sm_PolicyApi_Login() を呼び出して、管理者の認証情報を確認したり管理者を指定すること
なく
、セッション ハンドルを初期化することができます。これらの状況のいずれかでログインするには、パラメータ nCheckCreds
を「false」に設定します。詳細については、nCheckCreds
パラメータの説明を参照してください。この関数はクライアント セッション中に 2 回以上コールでき、ポリシー ストア接続の成功した初期化に応じます。
Type
必要な関数。
構文
int SM_EXTERN Sm_PolicyApi_Login (void*pInitHandle,void**ppSessionHandle,intnCheckCreds,const char*pszUserName,const char*pszPassword,const char*pszClientIP,char**pszUserMsg,char**pszErrMsg);
パラメータ | I/O | 説明 |
pInitHandle
| I | 内部ポリシー管理 API データ構造体へのポインタ。これは Sm_PolicyApi_Init() によって返された init ハンドルです。 |
ppSessionHandle
| O | 内部ポリシー管理 API データ構造体( pInitHandle からの構造体の別のインスタンス)へのポインタ。構造体には管理者セッション データが含まれます。セッション ハンドルは呼び出し元には見えません。 |
nCheckCreds
| I | 以下のように管理者の認証情報を確認するかどうかを示すフラグ nCheckCreds が false で、空の文字列("")が pszUserName で渡される場合、認証情報の確認はされておらず、呼び出し元には管理者権限がすべて付与されます。nCheckCreds が false で、ユーザ名が pszUserName で渡される場合、認証情報の確認は行われていません。ただし、渡される名前は有効な CA Single Sign-on 管理者の名前である必要があります。呼び出し元には、管理者に対して定義された権限が付与されます。nCheckCreds が true である場合、ユーザ名とパスワードの両方が確認され、有効な CA Single Sign-on 管理者に一致する必要があります。呼び出し元には、管理者に対して定義された権限が付与されます。 |
pszUserName
| I | ポリシー管理 API 管理者のユーザ名。 空の文字列("")を渡し、 nCheckCreds を false に設定した場合、管理者名およびパスワードは必要ありません。呼び出し元には管理者権限がすべて付与されます。 |
pszPassword
| I | ポリシー管理 API 管理者のパスワード。 |
pszClientIP
| I | 管理者がログインしている元のマシンの IP アドレス。 |
pszUserMsg
| O | ポリシー管理 API によって返されたユーザ メッセージです。Sm_PolicyApi_FreeString() を呼び出して、この変数に割り当てられたメモリを解放します。 |
pszErrMsg
| O | ポリシー管理 API によって返されたエラー メッセージです。Sm_PolicyApi_FreeString() を呼び出して、この変数に割り当てられたメモリを解放します。 |
戻り値
- Sm_PolicyApi_Success。ログインは正常に行われました。
- Sm_PolicyApi_Failure。メモリは割り当てることができません。
- Sm_PolicyApi_InvalidHandle。このコールに先立つ有効な初期化はありませんでした。
- Sm_PolicyApi_NoPrivilege。管理者はいくつかまたはすべてのドメインに対して権限がありません。
- Sm_PolicyApi_ErrorLogin。その認証は失敗しました。
例
例のアプリケーション smpolicyapiexample.cpp で Sm_PolicyApi_Login() コールを参照してください。