プライマリ・コンテンツに移動
Oracle® Fusion Middleware Oracle Web Services Managerでの資格証明およびキーストアの管理のためのREST API
12c (12.2.1.3.0)
E90306-02
目次へ移動
目次

前
次

2 REST APIの使用事例

この章では、REST APIの使用事例をいくつか示します。

REST APIによる資格証明ストア・フレームワークの管理

REST APIを使用して、資格証明ストア・フレームワークを参照および管理できます。

次の方法を使用事例で示します。

  • 資格証明ストアの資格証明の作成

  • 資格証明ストアのすべての資格証明の参照

  • 資格証明ストアからの資格証明の削除

注意:

資格証明ストアの管理の詳細は、『Webサービスの管理』の資格証明ストアの構成に関する項を参照してください。

テスト済

REST APIを使用して資格証明ストア・フレームワークを管理する手順:

  1. 次の手順を実行して、資格証明ストア・フレームワークに資格証明を作成します。

    1. 作成する資格証明を定義するJSONドキュメント(createcred.json)を作成します。

      リクエスト・ドキュメントの例を次に示します。この例では、資格証明マップ名はdefault、資格証明キーはmyKey、ユーザー名とパスワードの資格証明はmyUsrmyPwdです。

      {
          "username" : "username",
          "credential" : "pwd",
          "key" : "mykey",
          "map" : "oracle.wsm.security"
      }
      

      リクエストの属性の詳細は、資格証明のPOSTメソッドを参照してください。

    2. cURLを使用して、前のステップで定義したJSONドキュメントを渡して資格証明ストア・フレームワークに資格証明を作成します。

      curl -i -X POST -u username:password --data @createcred.json -H Content-Type:application/json http://myhost:7001/idaas/platform/admin/v1/credential
      

      次にリクエストの成功を示すレスポンスの例を示します。

      {
          "STATUS": "Succeeded"
      }
      

      詳細は、資格証明のPOSTメソッドを参照してください。

  2. 資格証明ストアのすべての資格証明を参照します。

    curl -i -X GET -u username:password http://myhost:7001/idaas/platform/admin/v1/credential
    

    次は、資格証明ストアのすべての資格証明を示しているレスポンスの例です。

    {
        "CSF_MAP_NAME": "CSF_KEY_NAME",
        "default": "systemuser",
        "oracle.wsm.security": [
            "sign-csf-key",
            "jwt-sign-csf-key",
            "owsmtest.credentials",
            "basic.client.credentials",
            "weblogic-csf-key",
            "enc-csf-key",
            "mykey",
            "dummy-pwd-csf-key",
            "weblogic-kerberos-csf-key",
            "keystore-csf-key",
            "weblogic-windowsdomain-csf-key",
            "oratest-csf-key",
            "csr-csf-key",
            "invalid-csf-key",
            "ca-signed-sign-csf-key"
        ]
    }
    

    詳細は、資格証明のGETメソッドを参照してください。

  3. 資格証明ストアから資格証明を削除します。

    curl -i -X DELETE -u username:password http://myhost:7001/idaas/webservice/admin/v1/credential?"key=mykey&map=oracle.wsm.security"
    
    

    削除する資格証明ストアに関連付けられたマップおよびキーの名前を定義するために問合せパラメータを渡す必要があります。詳細は、資格証明のDELETEメソッドを参照してください。

    次にリクエストの成功を示すレスポンスの例を示します。

    {
        "STATUS": "Succeeded"
    }
    

REST APIによるJKSキーストアの管理

REST APIを使用して、現在のドメイン内でJavaキーストア(JKS)証明書を参照および管理できます。

次の方法を使用事例で示します。

  • JKSキーストア内のすべての別名を参照する。

  • JKSキーストアに信頼できる証明書をインポートする。

  • JKSキーストアの信頼できる証明書を参照する。

  • JKSキーストアから信頼できる証明書を削除する。

注意:

JKSキーストアの管理の詳細は、『Webサービスの管理』のメッセージ保護のためのキーストアの構成に関する項を参照してください。

テスト済

REST APIを使用してJKSキーストアを管理する手順:

  1. 現在のドメイン内のJKSキーストアに存在するすべての別名を参照します。

    curl -i -X GET -u username:password http://myhost:7001/idaas/platform/admin/v1/keystore
    

    次は、JKSキーストアのすべての別名を示しているレスポンスの例です。

    {
       "aliases":"oratest,orakey,testkey,jkstest,ms-oauthkey"
    }
    

    詳細は、JKSキーストアの信頼できる証明書のすべての別名のGETメソッド

  2. 次の手順を実行して、指定した別名でJKSキーストアに信頼できる証明書をインポートします。

    1. JKSキーストアにインポートされる信頼できる証明書を定義するJSONドキュメント(importjks.json)を作成します。

      リクエスト・ドキュメントの例を次に示します。この例では、信頼できる証明書をBase64でエンコードし、コンポーネント・タイプはこのリリースのJKSに設定する必要があります。

      {   "component":"JKS",
        "certificate": "Bese64-encoded certificate"
      }
      

      リクエストの属性の詳細は、JKSキーストアの信頼できる証明書の特定の別名のPOSTメソッドを参照してください。

    2. cURLを使用して、インポートする信頼できるキーの別名(mytestkey)を指定し、前のステップで定義したJSONリクエスト・ドキュメントを渡して、信頼できる証明書をインポートします。

      curl -i -X POST -u username:password -H Content-type:application/json --data @importjks.json http://myhost:7001/idaas/platform/admin/v1/keystore/mytestkey
      

      次にリクエストの成功を示すレスポンスの例を示します。

      {
          "STATUS":"Succeeded",
          "SUBJECT_DN":"CN=y,OU=y,O=y,L=y,ST=y,C=y"
      }
      

      詳細は、JKSキーストアの信頼できる証明書の特定の別名のPOSTメソッドを参照してください。

  3. ステップ3でインポートした信頼できる証明書を参照します。

    curl -i -X GET -u username:password http://myhost:7001/idaas/platform/admin/v1/keystore/mytestkey
    

    次に信頼できる証明書の詳細が示されたレスポンスの例を示します。

    {
        "SUBJECT_DN":"CN=y,OU=y,O=y,L=y,ST=y,C=y",
        "ISSUER_DN":"CN=y,OU=y,O=y,L=y,ST=y,C=y",
        "NOT_BEFORE":"Thu Jul 03 04:00:16 PDT 2014",
        "NOT_AFTER":"Wed Oct 01 04:00:16 PDT 2014",
        "SERIAL_NO":"1784168778",
        "SIGNING_ALGORITHM":"1.2.840.10040.4.3",
        "CONTENT":"-----BEGIN CERTIFICATE-----\
    Bese64-encoded certificate
    -----END CERTIFICATE-----",
        "SIGNATURE": "Bese64-encoded signature key",
        "Extensions": "{subjectKeyIDExtension {oid = 2.5.29.14, critical = false, value = f74ca5c1016d848260c749884e2b710c5fecc7b8}}"
    }
    

    詳細は、JKSキーストアの信頼できる証明書の指定した別名のGETメソッドを参照してください。

  4. JKSキーストアから信頼できる証明書を削除します。

    curl -i -X DELETE -u username:password http://myhost:7001/idaas/platform/admin/v1/keystore/mytestkey
    

    次にリクエストの成功を示すレスポンスの例を示します。

    {
        "STATUS": "Succeeded"
    }
    

    詳細は、JKSキーストアの信頼できる証明書のDELETEメソッドを参照してください。

REST APIによるKSSキーストアの管理

REST APIを使用して、キーストア・サービス(KSS)キーストアを参照および管理できます。

次の方法を使用事例で示します。

  • KSSキーストアの作成

  • ストライプのすべてのKSSキーストアの参照

  • KSSキーストアへの信頼できる証明書のインポート

  • JKSキーストアの信頼できる証明書の参照

  • KSSキーストアの削除

注意:

KSSキーストアの管理の詳細は、『Webサービスの管理』のメッセージ保護のためのOPSSキーストア・サービスの構成に関する項を参照してください。

テスト済

REST APIを使用してKSSキーストアを管理する手順:

  1. 次の手順を実行して、KSSキーストアを作成します。

    1. 作成するKSSキーストアを定義するJSONドキュメント(createkss.json)を作成します。

      リクエスト・ドキュメントの例を次に示します。この例では、KSSストライプおよびキーストアの名前はmyStripeおよびmyKeystore、KSSキーストアのパスワードはPassowrd、作成されるKSSキーストアは権限ベースではありません。

      {
          "stripe" : "myStripe",
          "keystore" : "myKeystore",
          "pwd" : "Password",
          "permission" : "false"
      }
      

      リクエストの属性の詳細は、新しいKSSキーストアのPOSTメソッドを参照してください。

    2. cURLを使用して、前のステップで定義したJSONドキュメントを渡してKSSキーストアを作成します。

      curl -i -X POST -u username:password -H Content-Type:application/json --data @createkss.json http://myhost:7001/idaas/platform/admin/v1/keystoreservice
      

      次にリクエストの成功を示すレスポンスの例を示します。

      {
          "STATUS": "Succeeded"
      }
      

      詳細は、新しいKSSキーストアのPOSTメソッドを参照してください。

  2. ストライプのすべてのKSSキーストアを参照して、KSSキーストアが作成されたことを確認します。

    curl -i -X GET -u username:password http://myhost:7001/idaas/platform/admin/v1/keystoreservice/myStripe
    

    次は、ストライプのすべてのKSSキーストアを示しているレスポンスの例です。

    {
        "keystore 1:"myKeystore"
    }
    

    詳細は、ストライプのKSSキーストアのGETメソッドを参照してください。

  3. 次の手順を実行して、KSSキーストアに信頼できる証明書をインポートします。

    1. KSSキーストアにインポートする信頼できる証明書の詳細を定義するJSONドキュメント(importkss.json)を作成します。

      リクエスト・ドキュメントの例を次に示します。この例では、KSSキーストアはストライプ名とキーストア名(myStripemyKeystore)で識別され、KSSキーストアのパスワード(Password)は必須であり、キーの別名はmyAliasです。証明書はTrustedCertificateとして定義され、keystoreEntryは暗号化された証明書の内容を指定します。

      {
          "keyAlias" : "myAlias",
          "keystoreEntry":
      "Bese64-encoded certificate",
          "keystoreEntryType" : "TrustedCertificate",
          "keystoreName" : "myKeystore",
          "stripeName" : "myStripe",
          "keystorePassword" : "Password"
      }
      

      リクエストの属性の詳細は、KSSキーストアの信頼できる証明書のPOSTメソッドを参照してください。

    2. cURLを使用して、前のステップで定義したJSONドキュメントを渡してKSSキーストアに信頼できる証明書をインポートします。

      curl -i -X POST -u username:password -H Content-Type:application/json --data @importcertkss.json http://myhost:7001/idaas/platform/admin/v1/keystoreservice/certificates
      

      次にリクエストの成功を示すレスポンスの例を示します。

      {
          "STATUS": "Succeeded"
          "SUBJECT_DN": "CN=y,OU=y,O=y,L=y,ST=y,C=y"
      }
      

      詳細は、KSSキーストアの信頼できる証明書POSTメソッドを参照してください。

  4. KSSキーストアにインポートされた信頼できる証明書を参照します。

    curl -i -X GET -u username:password -H keystorePassword:cHdkMQ== http://myhost:7001/idaas/platform/admin/v1/keystoreservice/certificates?"stripeName=myStripe&keystoreName=myKeystore&keyAlias=myAlias&keystoreEntryType=TrustedCertificate"
    

    参照する信頼できる証明書に関連付けられたストライプ名、キーストアの名前とエントリ・タイプ、および別名を定義するために問合せパラメータを渡す必要があります。

    次に信頼できる証明書の詳細が示されたレスポンスの例を示します。

    {
        "SUBJECT_DN":"CN=y,OU=y,O=y,L=y,ST=y,C=y",
        "ISSUER_DN":"CN=y,OU=y,O=y,L=y,ST=y,C=y",
        "NOT_BEFORE":"Fri Jul 25 02:45:11 PDT 2014",
        "NOT_AFTER":"Thu Oct 23 02:45:11 PDT 2014",
        "SERIAL_NO":"982191050",
        "SIGNING_ALGORITHM":"1.2.840.10040.4.3",
        "CONTENT":"-----BEGIN CERTIFICATE----- \n
    Bese64-encoded certificate\n
    -----END CERTIFICATE-----",
        "SIGNATURE":"Bese64-encoded signature key",
        "Extensions":"{subjectKeyIDExtension {oid = 2.5.29.14 critical = false, value = 329b98f6b6225e92ca52513d3bfc43ee02aa9121}}"
    }
    
    

    詳細は、KSSキーストアの信頼できる証明書のGETメソッドを参照してください。

  5. KSSキーストアを削除します。

    curl -i -X DELETE -u username:password -H keystorePassword:cHdkMQ== http://myhost:7001/idaas/platform/admin/v1/keystoreservice?"stripeName=myStripe&keystoreName=myKeystore"
    
    

    削除するKSSキーストアのストライプおよびキーストア名を定義するために問合せパラメータを渡す必要があります。詳細は、キーストア・サービスKSSキーストアのDELETEメソッドを参照してください。

    次にリクエストの成功を示すレスポンスの例を示します。

    HTTP/1.1 204 No Content
    

REST APIによるトークン発行者の信頼の管理

REST APIを使用して、トークン発行者の信頼を参照および管理できます。

次の方法を使用事例で示します。

  • すべての信頼できる発行者の参照

  • 信頼できる発行者の作成

  • トークン属性ルールの作成

  • 信頼できる発行者の削除

  • 信頼ドキュメントの作成

注意:

トークン発行者の信頼の管理の詳細は、『Webサービスの管理』の署名証明書の信頼できる発行者および信頼できるDNリストの定義に関する項を参照してください。

REST APIを使用してトークン発行者の信頼を管理する手順:

  1. 信頼できる発行者ドキュメントを作成します。

    curl -i -X POST -u username:password http://myhost:7001/idaas/webservice/admin/v1/trustdocument?"documentName=myTrustDocument&displayName=myTrustDocument"
    
    

    信頼できる発行者ドキュメントのドキュメント名および表示名を定義するために問合せパラメータを渡す必要があります。

    次にリクエストの成功を示すレスポンスの例を示します。

    {
        "STATUS": "Succeeded",
        "Result": "New Token Issuer Trust document named "myTrustDocument" created."
    }
    

    詳細は、信頼ドキュメント名のPOSTメソッドを参照してください。

  2. 次の手順を実行して、信頼できる発行者およびDNリストを作成します。

    1. 作成する信頼できる発行者および識別名(DN)リストを定義するJSONドキュメント(createtrust.json)を作成します。

      リクエスト・ドキュメントの例を次に示します。この例では、タイプがSAML holder-of-key、SAML送信者保証およびJSON Webトークン(JWT)の信頼できる発行者を作成します。信頼できる発行者ごとに名前とDNリストを定義します。

      { 
          "saml-trusted-dns": 
          { 
               "saml-hok-trusted-dns": 
               { 
                   "issuer": [ 
                   { 
                       "-name": "www.oracle.com", 
                       "dn": [ "wls1", ]
                   } 
                   ] 
               }, 
              "saml-sv-trusted-dns": 
              { 
                  "issuer": [ 
                      { 
                          "-name": "www.oracle.com", 
                          "dn": [ "wls2", ] 
                      } 
                 ] 
              }, 
              "jwt-trusted-issuers": 
              { 
                  "issuer": [ 
                  { 
                      "-name": "www.oracle.com", 
                      "dn": [ "CN=orakey, OU=Orakey,O=Oracle, C=US", ] 
                  }
                  ] 
              } 
          } 
      }

      リクエストの属性の詳細は、ドメインの信頼できる発行者と識別名リストのPOSTメソッドを参照してください。

    2. cURLを使用して、ステップ2で定義したJSONドキュメントを渡して信頼できる発行者およびDNリストを作成します。

      curl -i -X POST -u username:password --data @createtrust.json -H Content-Type:application/json http://myhost:7001/idaas/webservice/admin/v1/trust/issuers
      

      次にリクエストの成功を示すレスポンス本文の例を示します。

      {
          "STATUS": "Succeeded"
      }
      

      詳細は、ドメインの信頼できる発行者と識別名リストのPOSTメソッドを参照してください。

  3. 信頼できるDNリストのトークン属性ルールを定義するJSONドキュメント(createtoken.json)を作成します。

    リクエスト・ドキュメントの例を次に示します。この例では、次のようにします。

    • トークン属性ルールが作成される信頼できるDNリストごとに、別々の"token-attribute-rule"エントリを作成する。

    • 必要に応じて、name-idおよびユーザー属性のフィルタを指定する。

    リクエストの属性の詳細は、トークン属性ルール識別名のPOSTメソッド(ドメイン・コンテキスト)を参照してください。

    {
        "token-attribute-rules":
        {
            "token-attribute-rule": 
            [
                {
                    "-dn": "cn=orcladmin,o=oracle",
                    "name-id":{
                        "filter": 
                        {
                            "value":[ "filter1" ]
                        },
                        "mapping":
                        {
                            "user-attribute": "val3",
                            "user-mapping-attribute":"val4"
                        }
                    },
                    "attributes":
                    [
                        {
                            "-name": "tenant1",
                            "attribute":
                            {
                                "filter":
                                {
                                    "value": [
                                        "filter1",
                                        "filter2"
                                    ]
                                },
                                "mapping":{
                                    "user-attribute": "val1",
                                    "user-mapping-attribute":"val2"
                                }
                            }
                        }
                    ]
                }
            ]
        }
    }
    
  4. ステップ4で定義したJSONドキュメントを渡して、信頼できるDNリストのトークン属性ルールを作成します。

    curl -i -X POST -u username:password --data @createrule.json http://myhost:7001/idaas/webservice/admin/v1/trust/token
    

    次にリクエストの成功を示すレスポンス本文の例を示します。

    {
        "STATUS": "Succeeded"
    }
    

    詳細は、トークン属性ルール識別名のPOSTメソッド(ドメイン・コンテキスト)を参照してください。

  5. 信頼できる発行者の構成の詳細を参照します。

    curl -i -X GET -u username:password http://myhost:7001/idaas/platform/admin/v1/trustdocument?"documentName=myTrustDocument"
    

    次に構成の詳細を示すレスポンス本文の例を示します。

    {
        "STATUS":"Succeeded",
        "Result":"List of token issuer trust documents in the Repository:\nDetails of the document matching your request:\nName         : myTrustDocument\tDisplay Name : myTrustDocument\tStatus       : DOCUMENT_STATUS_COMMITED \nList of trusted issuers for this type:\tNone\nList of Token Attribute Rules\tNone"
    }
    

    詳細は、信頼ドキュメントのGETメソッドを参照してください。

  6. 信頼できる発行者ドキュメントを削除します。

    curl -i -X DELETE -u username:password http://myhost:7001/idaas/webservice/admin/v1/trustdocument?"documentName=myTrustDocument&displayName=myTrustDocument"
    
    

    削除する信頼できる発行者ドキュメントのドキュメント名および表示名を定義するために問合せパラメータを渡す必要があります。詳細は、資格証明のDELETEメソッドを参照してください。

    次の例では、レスポンス本文のコンテンツを示しています。

    {
        "STATUS": "Succeeded",
        "Result": "Token Issuer Trust document named "myTrustDocument" deleted from the repository."
    }