ユーザー複製とは、サードパーティ製アプリケーション内の各ユーザーを、Yellowfinの指名ユーザーと同期させることを指します。
これによりYellowfinは、ログインしているユーザーを識別し、必要に応じて、制限を適用することができます。同期は通常、サードパーティ製アプリケーションからYellowfinへのWebサービスの呼び出しを使用して実行されます。サードパーティ製アプリケーションのユーザーが静的である場合は、これを手動で管理することもできます。
こちらのセクションでは、Webサービスを介したユーザーの作成、操作、および削除方法について紹介します。こちらでは、サードパーティ製アプリケーションでユーザーの変更が行われるとすぐに、Webサービスが呼び出され、ユーザーの変更がミラーリングされることを想定しています。
主なユーザー管理関数
こちらの関数は、Yellowfinに新規ユーザーアカウントを作成します。
リクエストパラメーター
以下の要素は、こちらのリクエストとともに渡されます。
リクエスト要素 | データ型 | 説明 |
LoginId | String | Yellowfin Webサービスの管理者ユーザーIDです。これは、これは、ログインIDの方法に応じて、ユーザーID、または電子メールアドレスになります。 このYellowfinアカウントは、「Yellowfin Webサービス使用権」が有効化されたロールを持ち、デフォルト(プライマリー)組織に所属していなくてはいけません。 |
Password | String | 上記アカウントのパスワードです。 |
OrgId | Integer | Yellowfin内のデフォルト(プライマリー)組織IDです。常に、「1」に設定します。 |
Function | String | Webサービス関数です。こちらは、「ADDUSER」に設定します。 |
Person | AdministrationPerson | ユーザー作成プロセスに関する新規ユーザーの詳細のすべてを含むオブジェクトです。以下の表を参照してください。 |
OrgRef | String | クライアント組織内部参照IDです(こちらの設定はオプションです)。こちらは、参照されるクライアント組織に新規ユーザーを作成します。こちらを設定しない場合、新規ユーザーはデフォルト(プライマリー)組織内に作成されます。 |
以下は、新規ユーザーを作成するために、「AdministrationPerson」オブジェクトに設定しなくてはいけない必須のパラメーターです。
AdministrationPerson 要素 | データ型 | 説明 |
UserId | String | 新規ユーザーのユーザーIDです。これは、ログインIDの方法に応じて、ユーザーID、または電子メールアドレスになります。 |
Password | String | 新規ユーザーのパスワードです。こちらは、Yellowfinのパスワードポリシーに準拠する必要があります。 |
FirstName | String | 新規ユーザーの名です。 |
LastName | String | 新規ユーザーの姓です。 |
RoleCode | String | 新規ユーザーのロールを設定します。例:YFREPORTCONSUMER 注意:リポジトリデータベースから、Yellowfinのロールコードの一覧を取得することができます。例:SQLクエリーを使用する場合:SELECT * FROM OrgRole |
EmailAddress | String | 新規ユーザーの電子メールアドレスです。 |
リクエストの例
以下のSOAP XMLの例は、この呼び出しに渡すことのできるパラメーターを表示しています。
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:web="http://webservices.web.mi.hof.com/"> <soapenv:Header/> <soapenv:Body> <web:remoteAdministrationCall> <arg0> <loginId>admin@yellowfin.com.au</loginId> <password>test</password> <orgId>1</orgId> <function>ADDUSER</function> <person> <userId>binish.sheikh@yellowfin.com.au</userId> <emailAddress>binish.sheikh@yellowfin.com.au</emailAddress> <password>admin</password> <firstName>Binish</firstName> <lastName>Sheikh</lastName> <roleCode>YFREPORTCONSUMER</roleCode> </person> </arg0> </web:remoteAdministrationCall> </soapenv:Body> </soapenv:Envelope>
応答パラメーター
返される応答には、これらのパラメーターが含まれます。
応答要素 | データ型 | 説明 |
StatusCode | String | Webサービス呼び出しのステータスです。値の選択肢は、以下の通りです。
|
応答の例
サービスは、今回のSOAPの例に基づき、以下の応答を返します。
<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/"> <S:Body> <ns2:remoteAdministrationCallResponse xmlns:ns2="http://webservices.web.mi.hof.com/"> <return> <errorCode>0</errorCode> <messages>Successfully Authenticated User: admin@yellowfin.com.au</messages> <messages>Creating New User via Webservices...</messages> <messages>Creating SessionBean for webservices user...</messages> <messages>Looking up user...</messages> <messages>Web Service Request Complete</messages> <sessionId>8090cb7879f7d5e72eab9625772c00b5</sessionId> <statusCode>SUCCESS</statusCode> </return> </ns2:remoteAdministrationCallResponse> </S:Body> </S:Envelope>
手順
Javaの例を使用して、こちらの呼び出しを実行するための詳細な手順は、以下を参照してください。
こちらは、Yellowfinの新規ユーザーを作成する基礎的なリクエストであり、管理ユーザーとしてのログインと、実行するWebサービスの呼び出しの指定を含みます。
AdministrationServiceRequest rsr = new AdministrationServiceRequest(); rsr.setLoginId("admin@yellowfin.com.au"); rsr.setPassword("test"); rsr.setOrgId(1); rsr.setFunction("ADDUSER");
特定のクライアント組織に新規ユーザーを作成する場合は、こちらをコードに追加します。
rsr.setOrgRef("org1"); // A new user will be added to the client org with "org1" as an organization reference ID
orgRefパラメーターを定義しない場合は、新規ユーザーはデフォルト(プライマリー)組織内に作成されます。
ADDUSER関数は、新規Yellowfinユーザーの詳細を定義するために、AdministrationPersonオブジェクトを要求します。
AdministrationPerson ap = new AdministrationPerson();
新規ユーザーを作成するには、これら必須パラメーターの提供が必要です。:UserId、FirstName、LastName、RoleCode、Password、EmailAddress
ap.setUserId("john.smith@yellowfin.com.au"); // if Yellowfin authentication option is set to "email address" ap.setFirstName("John"); ap.setLastName("Smith"); ap.setRoleCode("YFREPORTCONSUMER"); // Yellowfin role codes can be found performing this query against // Yellowfin configuration database: SELECT * FROM OrgRole ap.setPassword("test"); // Password must comply with your Yellowfin password policy ap.setEmailAddress("john.smith@yellowfin.com.au");
AdministrationPersonオブジェクトのその他のパラメーターの設定はオプションです。
リクエストに「ap」オブジェクトを渡します。
rsr.setPerson(ap);
リクエストを構成したら、呼び出しを実行します。
AdministrationServiceResponse rs = adminService.remoteAdministrationCall(rsr);
管理サービスを初期化します。実行方法の詳細は、こちらを参照してください。
- 返される応答には、StatusCodeパラメーターが含まれます。詳細については、上記の応答パラメーターの表を参照してください。
完成例
以下は、ADDUSER関数の完成例です。こちらを使用するには、以下の手順に従います。
- コードをコピーして、「ws_adduser.jsp」として保存します。
- root(Yellowfin/appserver/webapps/ROOT)フォルダーにファイルを配置します。
- 環境に応じた詳細を追加するために、ホスト、ポート番号、管理ユーザー、ユーザーを調整します。
- インターネットブラウザから、「http://<host>:<port>/ws_adduser.jsp」を実行します。
<% /* ws_adduser.jsp */ %> <%@ page language="java" contentType="text/html; charset=UTF-8" %> <%@ page import="com.hof.util.*, java.util.*, java.text.*" %> <%@ page import="com.hof.web.form.*" %> <%@ page import="com.hof.mi.web.service.*" %> <% AdministrationServiceService s_adm = new AdministrationServiceServiceLocator("localhost",8080, "/services/AdministrationService", false); // adjust host and port number AdministrationServiceSoapBindingStub adminService = (AdministrationServiceSoapBindingStub) s_adm.getAdministrationService(); AdministrationServiceRequest rsr = new AdministrationServiceRequest(); rsr.setLoginId("admin@yellowfin.com.au"); // provide your Yellowfin web service admin account rsr.setPassword("test"); // change this to the password of the above account rsr.setOrgId(1); rsr.setFunction("ADDUSER"); AdministrationPerson ap = new AdministrationPerson(); ap.setUserId("john.smith@yellowfin.com.au"); // If Yellowfin authentication option is set to "email address" ap.setFirstName("John"); ap.setLastName("Smith"); ap.setRoleCode("YFREPORTCONSUMER"); // Yellowfin role codes can be found performing this query against // Yellowfin configuration database: SELECT * FROM OrgRole ap.setPassword("test"); // Password must comply with your Yellowfin password policy ap.setEmailAddress("john.smith@yellowfin.com.au"); rsr.setPerson(ap); AdministrationServiceResponse rs = adminService.remoteAdministrationCall(rsr); if ("SUCCESS".equals(rs.getStatusCode()) ) { out.write("Success"); } else { out.write("Failure"); out.write(" Code: " + rs.getErrorCode()); } %>
こちらの関数は、一度に複数のユーザーを作成します。ADDUSER関数と類似していますが、こちらの関数はAdministrationPersonオブジェクトの配列を渡すように要求します。
リクエストパラメーター
以下の要素は、こちらのリクエストとともに渡されます。
リクエスト要素 | データ型 | 説明 |
LoginId | String | Yellowfin Webサービスの管理者ユーザーIDです。これは、これは、ログインIDの方法に応じて、ユーザーID、または電子メールアドレスになります。 このYellowfinアカウントは、「Yellowfin Webサービス使用権」が有効化されたロールを持ち、デフォルト(プライマリー)組織に所属していなくてはいけません。 |
Password | String | 上記アカウントのパスワードです。 |
OrgId | Integer | Yellowfin内のデフォルト(プライマリー)組織IDです。常に、「1」に設定します。 |
Function | String | Webサービス関数です。こちらは、「ADDUSERS」に設定します。 |
Person | AdministrationPerson[] | 一度に追加されるユーザーの詳細を含むオブジェクト配列です。以下の表を参照してください。 |
OrgRef | String | クライアント組織内部参照IDです(こちらの設定はオプションです)。こちらは、参照されるクライアント組織に新規ユーザーを作成します。こちらを設定しない場合、新規ユーザーはデフォルト(プライマリー)組織内に作成されます。 |
以下は、新規ユーザーを作成するために、「AdministrationPerson」オブジェクトに設定しなくてはいけない必須のパラメーターです。
AdministrationPerson 要素 | データ型 | 説明 |
UserId | String | 新規ユーザーのユーザーIDです。これは、ログインIDの方法に応じて、ユーザーID、または電子メールアドレスになります。 |
Password | String | 新規ユーザーのパスワードです。こちらは、Yellowfinのパスワードポリシーに準拠する必要があります。 |
FirstName | String | 新規ユーザーの名です。 |
LastName | String | 新規ユーザーの姓です。 |
RoleCode | String | 新規ユーザーのロールを設定します。例:YFREPORTCONSUMER 注意:リポジトリデータベースから、Yellowfinのロールコードの一覧を取得することができます。例:SQLクエリーを使用する場合:SELECT * FROM OrgRole |
EmailAddress | String | 新規ユーザーの電子メールアドレスです。 |
応答パラメーター
返される応答には、これらのパラメーターが含まれます。
応答要素 | データ型 | 説明 |
StatusCode | String | Webサービス呼び出しのステータスです。値の選択肢は、以下の通りです。
|
手順
Javaの例を使用して、こちらの呼び出しを実行するための詳細な手順は、以下を参照してください。
こちらは、Yellowfinの新規ユーザーを作成する基礎的なリクエストであり、管理ユーザーとしてのログインと、実行するWebサービスの呼び出しの指定を含みます。
AdministrationServiceRequest rsr = new AdministrationServiceRequest(); rsr.setLoginId("admin@yellowfin.com.au"); rsr.setPassword("test"); rsr.setOrgId(1); rsr.setFunction("ADDUSERS");
特定のクライアント組織に新規ユーザーを作成する場合は、こちらをコードに追加します。
rsr.setOrgRef("org1");
orgRefパラメーターを定義しない場合は、新規ユーザーはデフォルト(プライマリー)組織内に作成されます。
新規Yellowfinユーザーの詳細を定義するために、AdministrationPersonオブジェクトを使用します。
AdministrationPerson[] ap = new AdministrationPerson[2];
これらの必須パラメーターを提供することで、最初のユーザーの詳細を追加します。:UserId、FirstName、LastName、RoleCode、Password、EmailAddress
ap[0] = new AdministrationPerson(); ap[0].setUserId("user1@yellowfin.com.au"); ap[0].setFirstName("user1"); ap[0].setLastName("Lastname1"); ap[0].setRoleCode("YFREPORTCONSUMER"); ap[0].setPassword("test"); ap[0].setEmailAddress("user1@yellowfin.com.au");
AdministrationPersonオブジェクトのその他のパラメーターの設定はオプションです。
同様に、他のユーザーの詳細を提供します。
ap[1] = new AdministrationPerson(); ap[1].setUserId("user2@yellowfin.com.au"); ap[1].setFirstName("user2"); ap[1].setLastName("Lastname2"); ap[1].setRoleCode("YFREPORTCONSUMER"); ap[1].setPassword("test"); ap[1].setEmailAddress("user2@yellowfin.com.au");
これを、必要なユーザー分繰り返します。
リクエストに「ap」オブジェクトを渡します。
rsr.setPeople(ap);
リクエストを構成したら、呼び出しを実行します。
AdministrationServiceResponse rs = adminService.remoteAdministrationCall(rsr);
管理サービスを初期化します。実行方法の詳細は、こちらを参照してください。
- 返される応答には、StatusCodeパラメーターが含まれます。詳細については、上記の応答パラメーターの表を参照してください。
完成例
以下は、ADDUSERS関数の完成例です。今回の例では、デフォルト組織に、user1@yellowfin.com.auとuser2@yellowfin.com.auという2つの新規ユーザーを追加します。
こちらを使用するには、以下の手順に従います。
- コードをコピーして、「ws_adduser.jsp」として保存します。
- root(Yellowfin/appserver/webapps/ROOT)フォルダーにファイルを配置します。
- 環境に応じた詳細を追加するために、ホスト、ポート番号、管理ユーザー、ユーザーを調整します。
- インターネットブラウザから、「http://<host>:<port>/ws_adduser.jsp」を実行します。
<% /* ws_adduser.jsp */ %> <%@ page language="java" contentType="text/html; charset=UTF-8" %> <%@ page import="com.hof.util.*, java.util.*, java.text.*" %> <%@ page import="com.hof.web.form.*" %> <%@ page import="com.hof.mi.web.service.*" %> <% AdministrationServiceService s_adm = new AdministrationServiceServiceLocator("localhost",8080, "/services/AdministrationService", false); // adjust host and port number AdministrationServiceSoapBindingStub adminService = (AdministrationServiceSoapBindingStub) s_adm.getAdministrationService(); AdministrationServiceRequest rsr = new AdministrationServiceRequest(); rsr.setLoginId("admin@yellowfin.com.au"); // provide your Yellowfin web service admin account rsr.setPassword("test"); // change this to the password of the above account rsr.setOrgId(1); rsr.setFunction("ADDUSER"); AdministrationPerson ap = new AdministrationPerson(); ap.setUserId("john.smith@yellowfin.com.au"); // If Yellowfin authentication option is set to "email address" ap.setFirstName("John"); ap.setLastName("Smith"); ap.setRoleCode("YFREPORTCONSUMER"); // Yellowfin role codes can be found performing this query against // Yellowfin configuration database: SELECT * FROM OrgRole ap.setPassword("test"); // Password must comply with your Yellowfin password policy ap.setEmailAddress("john.smith@yellowfin.com.au"); rsr.setPerson(ap); AdministrationServiceResponse rs = adminService.remoteAdministrationCall(rsr); if ("SUCCESS".equals(rs.getStatusCode()) ) { out.write("Success"); } else { out.write("Failure"); out.write(" Code: " + rs.getErrorCode()); } %>
以下のコードは、ユーザーを削除するためのYellowfin Webサービスを呼び出します。
AdministrationServiceRequest rsr = new AdminstrationServiceRequest(); AdministrationServiceResponse rs = null; AdministrationPerson person = new AdministrationPerson(); person.setUserId("test@yellowfin.com.au"); rsr.setLoginId(this.username); rsr.setPassword(this.password); rsr.setOrgId(new Integer(1)); rsr.setFunction("DELUSER"); rsr.setPerson(person); rs = AdministrationService.remoteAdministrationCall(rsr); if ("SUCCESS".equals(rs.getStatusCode()) ) { out.write("Success"); } else { out.write("Failure"); out.write(" Code: " + rs.getErrorCode()); }
このコードは「rs.getStatusCode()」
で、「SUCCESS」
を返します。それ以外の場合は、ユーザー削除プロセスが失敗した理由を説明するエラーメッセージを返します。
この関数は、Yellowfinからユーザーを削除します。「AdministrationPerson」オブジェクト内の詳細が、ユーザー削除プロセスで使用されます。
リクエスト要素 | データ型 | 説明 |
LoginId | String | Yellowfin Webサービスへの接続に使用されるアカウントのログインIDです(例:admin@yellowfin.com.au)。 |
Password | String | Yellowfin Webサービスへの接続に使用されるアカウントのパスワードです。 |
OrgId | Integer | Yellowfin内のデフォルト組織IDです。常に、「1」に設定します。 |
Function = “DELUSER”、または“DELETEUSER” |
| Webサービス関数です。 |
Person | AdministrationPerson | ユーザー削除プロセスに関するユーザー詳細のすべてを保持する、「AdministrationPerso」オブジェクトです。 |
「AdministrationPerson」オブジェクトで設定が必要なパラメーターは、以下の通りです。
AdministrationPerson要素 | データ型 | 説明 |
UserId | String | YellowfinユーザーのユーザーIDです。これは、ログインIDの方法に応じて、ユーザーID、または電子メールアドレスにすることができます。 |
返される応答には、以下のパラメーターが含まれます。
応答要素 | データ型 | 説明 |
StatusCode | String | Webサービス呼び出しのステータスです。値の選択肢は、以下の通りです。
|
ユーザー情報の取得とテスト
作成されたユーザーの詳細は、Webサービス呼び出しを使用して取得することができます。「AdministrationPerson」オブジェクトのUser IDフィールドは、ユーザーを識別するために使用されます。結果として、投入された「AdministrationPerson」オブジェクトが返されます。セキュリティ上の理由から、パスワードは返されず、「NULL」
となります。また、こちらのセクションでは、ユーザー情報をアプリケーションに照らし合わせてテストすることもできます。
以下のコードは、ユーザー詳細を取得するためのYellowfin Webサービスを呼び出します。
AdministrationServiceRequest rsr = new AdminstrationServiceRequest(); AdministrationServiceResponse rs = null; AdministrationPerson person = new AdministrationPerson(); Person.setUserId("testuser@yellowfin.com.au"); rsr.setLoginId(this.username); rsr.setPassword(this.password); rsr.setOrgId(new Integer(1)); rsr.setFunction("GETUSER"); rsr.setPerson(person); rs = AdministrationService.remoteAdministrationCall(rsr); if ("SUCCESS".equals(rs.getStatusCode()) ) { out.write("Success"); } else { out.write("Failure"); out.write(" Code: " + rs.getErrorCode()); }
こちらのコードは、ユーザー詳細を含む「AdministrationPerson」オブジェクトを返し、「rs.getStatusCode()」
で、「SUCCESS」
を返します。それ以外の場合は、プロセスが失敗した理由を説明するエラーメッセージを返します。
この関数は、Yellowfinの特定ユーザー詳細を取得します。「AdministrationPerson」オブジェクト内の詳細が取得プロセスで使用されます。
リクエスト要素 | データ型 | 説明 |
LoginId | String | Yellowfin Webサービスへの接続に使用されるアカウントのログインIDです(例:admin@yellowfin.com.au)。 |
Password | String | Yellowfin Webサービスへの接続に使用されるアカウントのパスワードです。 |
OrgId | Integer | Yellowfin内のデフォルト組織IDです。常に、「1」に設定します。 |
Function = “GETUSER” |
| Webサービス関数です。 |
Person | AdministrationPerson | 取得プロセスに関するYellowfinユーザーのユーザーIDを保持する、「AdministrationPerson」オブジェクトです。 |
「AdministrationPerson」オブジェクトで設定が必要なパラメーターは、以下の通りです。
AdministrationPerson要素 | データ型 | 説明 |
UserId | String | YellowfinユーザーのユーザーIDです。これは、ログインIDの方法に応じて、ユーザーID、または電子メールアドレスにすることができます。 |
返される応答には、以下のパラメーターが含まれます。
応答要素 | データ型 | 説明 |
StatusCode | String | Webサービス呼び出しのステータスです。値の選択肢は、以下の通りです。
|
Person | AdministrationPerson | 返されたユーザー詳細のすべてを保持する、「AdministrationPerson」オブジェクトです。 |
以下のコードは、内部IpIdを介してユーザー詳細を取得するための、Yellowfin Webサービスを呼び出します。
AdministrationServiceRequest rsr = new AdminstrationServiceRequest(); AdministrationServiceResponse rs = null; AdministrationPerson person = new AdministrationPerson(); Person.setIpId(5); rsr.setLoginId(this.username); rsr.setPassword(this.password); rsr.setOrgId(new Integer(1)); rsr.setFunction("GETUSERBYIP"); rsr.setPerson(person); rs = AdministrationService.remoteAdministrationCall(rsr); if ("SUCCESS".equals(rs.getStatusCode()) ) { out.write("Success"); } else { out.write("Failure"); out.write(" Code: " + rs.getErrorCode()); }
こちらのコードは、ユーザー詳細を含む「AdministrationPerson」オブジェクトを返し、「rs.getStatusCode()」
で、「SUCCESS」
を返します。それ以外の場合は、プロセスが失敗した理由を説明するエラーメッセージを返します。
この関数は、Yellowfinの特定ユーザーのIP IDを検索し、そのユーザーの詳細を取得します。「AdministrationPerson」オブジェクト内の詳細が取得プロセスで使用されます。
リクエスト要素 | データ型 | 説明 |
LoginId | String | Yellowfin Webサービスへの接続に使用されるアカウントのログインIDです(例:admin@yellowfin.com.au)。 |
Password | String | Yellowfin Webサービスへの接続に使用されるアカウントのパスワードです。 |
OrgId | Integer | Yellowfin内のデフォルト組織IDです。常に、「1」に設定します。 |
Function = “GETUSERBYIP” |
| Webサービス関数です。 |
Person | AdministrationPerson | 取得プロセスに関するYellowfinユーザーのユーザーIDを保持する、「AdministrationPerson」オブジェクトです。 |
「AdministrationPerson」オブジェクトで設定が必要なパラメーターは、以下の通りです。
AdministrationPerson要素 | データ型 | 説明 |
IP ID | Integer| | YellowfinユーザーのIP ID |
返される応答には、以下のパラメーターが含まれます。
応答要素 | データ型 | 説明 |
StatusCode | String | Webサービス呼び出しのステータスです。値の選択肢は、以下の通りです。
|
Person | AdministrationPerson | 返されたユーザー詳細のすべてを保持する、「AdministrationPerson」オブジェクトです。 |
この関数は、特定の検索文字列に基づいて、Yellowfinからユーザーを取得します。この文字列がユーザーの名、姓、および電子メールアドレスと比較されます。
リクエスト要素 | データ型 | 説明 |
LoginId | String | Yellowfin Webサービスへの接続に使用されるアカウントのログインIDです(例:admin@yellowfin.com.au)。 |
Password | String | Yellowfin Webサービスへの接続に使用されるアカウントのパスワードです。 |
OrgId | Integer | Yellowfin内のデフォルト組織IDです。常に、「1」に設定します。 |
Function = “GETUSERSFROMSEARCH” |
| Webサービス関数です。 |
Parameters | Array(String) | Yellowfinユーザーの名、姓、および電子メールアドレスと照合する検索文字列です。 |
返される応答には、以下のパラメーターが含まれます。
応答要素 | データ型 | 説明 |
StatusCode | String | Webサービス呼び出しのステータスです。値の選択肢は、以下の通りです。
|
People | Array(AdministrationPerson) | 「AdministrationPerson」オブジェクトの配列です。これらのオブジェクトには、検索文字列に一致した、返されたユーザーの詳細が保持されます。 |
以下のコードは、ユーザーをテストするためのYellowfin Webサービスを呼び出します。
AdministrationServiceRequest rsr = new AdminstrationServiceRequest(); AdministrationServiceResponse rs = null; AdministrationPerson person = new AdministrationPerson(); person.setUserId("admin@yellowfin.com.au"); rsr.setLoginId(this.username); rsr.setPassword(this.password); rsr.setFunction("VALIDATEUSER"); rsr.setPerson(person); rs = AdministrationService.remoteAdministrationCall(rsr);
こちらのコードは、成功すると、特定ユーザーの「AdministrationPerson」オブジェクトを返します。それ以外の場合は、ユーザー検証プロセスが失敗した理由を説明するエラーメッセージを返します。
こちらの関数は、指定されたYellowfinユーザーが、現在アプリケーション内に存在するかどうかを確認してテストします。「AdministrationPerson」オブジェクト内の詳細が、ユーザー検証プロセスで使用されます。
リクエスト要素 | データ型 | 説明 |
LoginId | String | Yellowfin Webサービスへの接続に使用されるアカウントのログインIDです(例:admin@yellowfin.com.au)。 |
Password | String | Yellowfin Webサービスへの接続に使用されるアカウントのパスワードです。 |
OrgId | Integer | Yellowfin内のデフォルト組織IDです。常に、「1」に設定します。 |
Function = “VALIDATEUSER” |
| Webサービス関数です。 |
Person | AdministrationPerson | 取得プロセスに関するYellowfinユーザーのユーザーIDを保持する、「AdministrationPerson」オブジェクトです。 |
「AdministrationPerson」オブジェクトで設定が必要なパラメーターは、以下の通りです。
AdministrationPerson要素 | データ型 | 説明 |
UserId | String | YellowfinユーザーのユーザーIDです。これは、ログインIDの方法に応じて、ユーザーID、または電子メールアドレスにすることができます。 |
返される応答には、以下のパラメーターが含まれます。
応答要素 | データ型 | 説明 |
StatusCode | String | Webサービス呼び出しのステータスです。値の選択肢は、以下の通りです。
|
Person | AdministrationPerson | 返されたユーザーの詳細すべてを保持する、「AdministrationPerson」オブジェクトです。 |
以下のコードは、ユーザーのパスワードをテストするためのYellowfin Webサービスを呼び出します。
AdministrationServiceRequest rsr = new AdminstrationServiceRequest(); AdministrationServiceResponse rs = null; AdministrationPerson person = new AdministrationPerson(); person.setUserId("testuser@yellowfin.com.au"); person.setPassword("test"); rsr.setLoginId(this.username); rsr.setPassword(this.password); rsr.setOrgId(new Integer(1)); rsr.setFunction("VALIDATEPASSWORD"); rsr.setPerson(person); rs = AdministrationService.remoteAdministrationCall(rsr);
こちらのコードは、パスワードの有効期限が切れているかどうかを確認し、有効期限が切れていない場合は、「rs.getStatusCode()」
で、「FAILURE」
を返します。それ以外の場合は、「SUCCESS」
を返します。
こちらの関数は、Yellowfinユーザーのパスワードをテストします。「AdministrationPerson」オブジェクト内の詳細が、パスワード検証プロセスで使用されます。
リクエスト要素 | データ型 | 説明 |
LoginId | String | Yellowfin Webサービスへの接続に使用されるアカウントのログインIDです(例:admin@yellowfin.com.au)。 |
Password | String | Yellowfin Webサービスへの接続に使用されるアカウントのパスワードです。 |
OrgId | Integer | Yellowfin内のデフォルト組織IDです。常に、「1」に設定します。 |
Function = “VALIDATEUSER” |
| Webサービス関数です。 |
Person | AdministrationPerson | 取得プロセスに関するYellowfinユーザーのユーザーIDを保持する、「AdministrationPerson」オブジェクトです。 |
「AdministrationPerson」オブジェクトで設定が必要なパラメーターは、以下の通りです。
AdministrationPerson要素 | データ型 | 説明 |
UserId | String | YellowfinユーザーのユーザーIDです。これは、ログインIDの方法に応じて、ユーザーID、または電子メールアドレスにすることができます。 |
Password | String | Yellowfinユーザーのパスワードです。 |
返される応答には、以下のパラメーターが含まれます。
応答要素 | データ型 | 説明 |
StatusCode | String | Webサービス呼び出しのステータスです。値の選択肢は、以下の通りです。
|
ユーザー情報の操作
ユーザーの詳細は、Webサービスの呼び出しを使用して、後から変更することができます。「AdministrationPerson」オブジェクトの「User ID」フィールドは、ユーザーを識別するために使用されるため、変更することができません。「AdministrationPerson」オブジェクト内のその他のフィールドには、新しい変更内容が投入されます。セキュリティ上の理由から、このWebサービス呼び出しを使用してユーザーのパスワードを変更することはできませんが、個別の「CHANGEPASSWORD」関数(下記)を使用して変更することができます。
以下のコードは、ユーザーの詳細を編集するためのYellowfin Webサービスを呼び出します。
AdministrationServiceRequest rsr = new AdminstrationServiceRequest(); AdministrationServiceResponse rs = null; AdministrationPerson person = new AdministrationPerson(); person.setUserId("testuser"); person.setFirstName("John"); person.setLastName("Doe"); person.setInitial("F"); person.setSalutationCode("MR"); person.setRoleCode("YFADMIN"); person.setEmailAddress("testuser@yellowfin.com.au") rsr.setLoginId(this.username); rsr.setPassword(this.password); rsr.setOrgId(new Integer(1)); rsr.setFunction("UPDATEUSER"); rsr.setPerson(person); rs = AdministrationService.remoteAdministrationCall(rsr);
こちらのコードは、ユーザー詳細を含む「AdministrationPerson」オブジェクトを返し、「rs.getStatusCode()」
で「SUCCESS」
を返します。それ以外の場合は、プロセスが失敗した理由を説明するエラーメッセージを返します。
こちらの関数は、指定されたYellowfinユーザーの詳細を更新します。「AdministrationPerson」オブジェクト内の詳細が更新プロセスで使用されます。
リクエスト要素 | データ型 | 説明 |
LoginId | String | Yellowfin Webサービスへの接続に使用されるアカウントのログインIDです(例:admin@yellowfin.com.au)。 |
Password | String | Yellowfin Webサービスへの接続に使用されるアカウントのパスワードです。 |
OrgId | Integer | Yellowfin内のデフォルト組織IDです。常に、「1」に設定します。 |
Function = “UPDATEUSER” |
| Webサービス関数です。 |
Person | AdministrationPerson | 取得プロセスに関するYellowfinユーザーのユーザーIDを保持する、「AdministrationPerson」オブジェクトです。 |
「AdministrationPerson」オブジェクトで設定できるパラメーターは、以下の通りです。
AdministrationPerson要素 | データ型 | 説明 |
UserId | String | YellowfinユーザーのユーザーIDです。これは、ログインIDの方法に応じて、ユーザーID、または電子メールアドレスにすることができます。 |
Password | String | Yellowfinユーザーのパスワードです。 |
FirstName | String | Yellowfinユーザーの名です。 |
LastName | String | Yellowfinユーザーの姓です。 |
Initial | String | Yellowfinユーザーのミドルネームです。 |
SalutationCode | String | Yellowfinユーザーの敬称です。値の選択肢は、は以下の通りです。
|
RoleCode | String | Yellowfinのロールです。こちらで指定するロールは、「参照コード(YFADMIN)」、または「ロール(Yellowfin管理者)」の名前にすることができます。 |
EmailAddress | String | Yellowfinユーザーの電子メールアドレスです。 |
LanguageCode | String | 優先言語を表す2文字のコードです。 |
IpId | Integer | 内部Yellowfin IP IDです。 |
TimeZoneCode | String | YellowfinユーザーのTimeZoneCodeです。有効な値については、付録を参照してください。 |
Status | String | ユーザーのステータスを示します。値の選択肢は、以下の通りです。
|
返される応答には、以下のパラメーターが含まれます。
応答要素 | データ型 | 説明 |
StatusCode | String | Webサービス呼び出しのステータスです。値の選択肢は、以下の通りです。
|
Person | AdministrationPerson | 更新されたユーザーの詳細すべてを保持する「AdministrationPerson」オブジェクトです。 |
以下のコードは、Yellowfin Webサービスを呼び出し、指定されたYellowfinユーザーのパスワードを変更します。
AdministrationServiceRequest rsr = new AdministrationServiceRequest(); AdministrationServiceResponse rs = null; AdministrationPerson person = new AdministrationPerson(); person.setUserId("test@yellowfin.com.au"); person.setPassword("testtest"); rsr.setLoginId(this.username); rsr.setPassword(this.password); rsr.setOrgId(new Integer(1)); rsr.setFunction("CHANGEPASSWORD"); rsr.setPerson(person); rs = AdministrationService.remoteAdministrationCall(rsr);
こちらのコードは、「rs.getStatusCode()」
で「SUCCESS」
を返します。それ以外の場合は、プロセスが失敗した理由を説明するエラーを返します。
こちらの関数は、指定されたYellowfinユーザーのパスワードを変更します。
リクエスト要素 | データ型 | 説明 |
LoginId | String | Yellowfin Webサービスへの接続に使用されるアカウントのログインIDです(例:admin@yellowfin.com.au)。 |
Password | String | Yellowfin Webサービスへの接続に使用されるアカウントのパスワードです。 |
OrgId | Integer | Yellowfin内のデフォルト組織IDです。常に、「1」に設定します。 |
Function = “CHANGEPASSWORD” |
| Webサービス関数です。 |
Person | AdministrationPerson | 取得プロセスに関するYellowfinユーザーのユーザーIDを保持する「AdministrationPerson」オブジェクト。 |
「AdministrationPerson」オブジェクトで、設定が必要なパラメーターは、以下の通りです。
AdministrationPerson要素 | データ型 | 説明 |
UserId | String | YellowfinユーザーのユーザーIDです。これは、ログインIDの方法に応じて、ユーザーID、または電子メールアドレスにすることができます。 |
Password | String | Yellowfinユーザーの新規パスワードです。 |
返される応答には、以下のパラメーターが含まれます。
応答要素 | データ型 | 説明 |
StatusCode | String | Webサービス呼び出しのステータスです。値の選択肢は、以下の通りです。
|