GlideOAuthClient - スコープ対象、グローバル
GlideOAuthClient API は OAuth リフレッシュトークンとアクセストークンの要求と取り消しを行うメソッドを提供します。
この API はグローバルスクリプトおよびスコープ対象のスクリプトで使用できます。スコープ対象のスクリプトでは、sn_auth 名前空間識別子を使用します。
GlideOAuthClient - getToken(文字列 requestID, 文字列 oauthProfileID)
クライアントのアクセストークンとリフレッシュトークンを取得します。
| 名前 | タイプ | 説明 |
|---|---|---|
| requestID | 文字列 | OAuth エンティティプロファイル [oauth_entity_profile] テーブルを参照する OAuth 要求者プロファイル [oauth_requestor_profile] テーブルからの要求 ID。 |
| oauthProfileID | 文字列 | OAuth エンティティプロファイル [oauth_entity_profile] テーブルからの OAuth プロファイル ID。 |
| タイプ | 説明 |
|---|---|
| GlideOAuthToken | クライアントのアクセストークンとリフレッシュトークン。 |
このコード例は、インスタンスデータベースからアクセス権を取得してトークンを更新する方法を示しています。
function dumpToken(token) {
if(token) {
gs.info("AccessToken:" + token.getAccessToken());
gs.info("AccessTokenExpiresIn:" + token.getExpiresIn());
gs.info("RefreshToken:" + token.getRefreshToken());
}
}
var oAuthClient = new sn_auth.GlideOAuthClient();
var token = oAuthClient.getToken('248e3017c302301089a7dd5c2840dda5', '9c4e78d3c302301089a7dd5c2840dd76');
dumpToken(token);
出力:
*** Script: AccessToken:6MRxD3TRYYvIaoKr-JCy3KiaOxBPu4C9k8oafo3MYf9q8zDyHQr8UzMSM3Md2alfaES1rzSYe5ydqgbOwpm7TA
*** Script: AccessTokenExpiresIn:1207
*** Script: RefreshToken:sc0iTK-0PcVkRi14HXPM3vT0FyOPO8iCqC10huQoDSSLBGUSnmEv_fUfJzGWCWBb_StsXIOz6r8qF-hRhURWTA
GlideOAuthClient - requestToken(文字列 clientName, 文字列 jsonString)
JSON 形式でエンコードされた要求パラメーターを使用して、クライアントのトークンを取得します。
| 名前 | タイプ | 説明 |
|---|---|---|
| clientName | 文字列 | クライアント名。 |
| jsonString | 文字列 | クライアントの JSON 文字列。 |
| タイプ | 説明 |
|---|---|
| GlideOAuthClientResponse | クライアントのトークン。 |
この例は、JSON 形式でエンコードされた要求パラメーターを使用して、リソース所有者のパスワード権限許可タイプの要求を示しています。
var oAuthClient = new GlideOAuthClient();
var params ={grant_type:"password", username:"itil", password:'itil'};
var json =new JSON();
var text = json.encode(params);
var tokenResponse = oAuthClient.requestToken('TestClient', text);
var token = tokenResponse.getToken();
gs.log("AccessToken:"+ token.getAccessToken());
gs.log("AccessTokenExpiresIn:"+ token.getExpiresIn());
gs.log(" RefreshToken:"+ token.getRefreshToken());
GlideOAuthClient - requestTokenByRequest(文字列 clientName, GlideOAuthClientRequest request)
クライアント名と GlideOAuthClientResponse オブジェクトに設定された要求を使用して、クライアントのトークンを取得します。
| 名前 | タイプ | 説明 |
|---|---|---|
| clientName | 文字列 | クライアント名。 |
| request | GlideOAuthClientRequest | 要求。 |
| タイプ | 説明 |
|---|---|
| GlideOAuthClientResponse | クライアントのトークン。 |
GlideOAuthClient - revokeToken(文字列 clientName, 文字列 accessToken, 文字列 refreshToken, GlideOAuthClientRequest request)
GlideOAuthClientRequest オブジェクトに設定された要求とオプションのヘッダーパラメーターを使用して、クライアントのアクセストークンまたはリフレッシュトークンを取り消します。
| 名前 | タイプ | 説明 |
|---|---|---|
| clientName | 文字列 | クライアント名。 |
| accessToken | 文字列 | アクセストークン。 |
| refreshToken | 文字列 | リフレッシュトークン。 |
| request | GlideOAuthClientRequest | 要求。 |
| タイプ | 説明 |
|---|---|
| GlideOAuthClientResponse | クライアントのトークン。 |