ユーザーにかわるヒューマン・ワークフロー・コンテキストの作成
タスク問合せサービスに対するauthenticateOnBehalfOf
APIメソッドでは、管理ユーザーのユーザーIDとパスワードをリクエストで渡すことで、ユーザーのかわりにヒューマン・ワークフロー・コンテキストを作成できます。管理ユーザーにはworkflow.admin
権限があります。この場合は、ユーザーのかわりにパスワードを使用して作成した場合と同様のコンテキストが作成されます。
これは、バックエンド・システムがワークフロー・タスクを操作し、一方でユーザーが自分のシステムで操作する環境で役立ちます。ワークフロー・サービスとの直接の相互作用はありません。システムは、ユーザーにかわってログインし、ユーザーのコンテキストを取得できます。
ノート:
この機能は、システム操作に対してのみ使用することをお薦めします。これは、管理ユーザー・コンテキストを作成して、ユーザーのかわりに作成したヒューマン・ワークフロー・コンテキストを問い合せる必要があるためです。かわりにアイデンティティ伝播を使用すると、ユーザーはすでに認証されているため、クライアントはすでに認証されているそのユーザーのIWorkflowContext
を取得できます。詳細は、「JAASアプリケーションによって以前に認証されたユーザーのワークフロー・コンテキストの取得」を参照してください。
次のコード・サンプルでは、ユーザーjcooper
のヒューマン・ワークフロー・コンテキストを作成します。
String adminUser = "...." String adminPassword = "...." String realm = "...." IWorkflowContext adminCtx = taskQueryService.authenticate(user,password.toCharArray(),realm); IWorkflowContext behalfOfCtx = taskQueryService.authenticateOnBehalfOf(adminCtx,"jcooper");