インポート
このアクションにより、管理者はウィジェット xml ファイルからウィジェット文書を容易に作成できるようになります。ウィジェットが OpenSocial ウィジェットタイプの場合、インポートアクションではウィジェットのプロキシデータと OAuth データをインポートできます。ウィジェット定義、プロキシルール、OAuth 情報の保存には、以下のように別々のファイルが使用されます。
- ウィジェット xml は、widget_name.extension.xml という名前のファイルに格納されます。
- プロキシルールは、widget_name.proxy.xml という名前のファイルに格納されます。
- OAuth 情報は、widget_name.oauth.xml という名前のファイルに格納されます。
インポートアクションを選択する場合、管理者はインポート対象のウィジェット xml ファイルを参照する必要があります。インポートアクションでは、プロキシファイルと OAuth ファイルは自動的に同じディレクトリ内で検索されます。 ウィジェットをインポートした後に OpenSocial ウィジェットをインポートする場合は、管理者がそのウィジェットを承認する必要があります。
プロキシ定義ファイルのサンプルを以下に示します。ガジェットプロキシルールやコンテンツプロキシルールを指定できます。gadget 要素の ContentProxy 属性は、それがガジェットプロキシルールであるかコンテンツプロキシルールであるかを示すために使用されます。
<proxyrules>
<gadget url="http://server.com/directory/GadgetFile.xml">
<allow ip="9.6.1.0/255.255.255.0,9.6.1.1/255.255.255.0" /><!-- Multiple values are separated by comma -->
<deny ip="9.6.0.0/255.255.0.0,9.6.1.4" /><!-- Multiple values are separated by comma -->
<ProxyRule url="*" actions="GET,POST,PUT,HEAD,DELETE" headers="*" mime_types="" cookies=""></ProxyRule><!-- can be multiple-->
</gadget>
<gadget ContentProxy="true" url="http://server.com/directory/GadgetFile.xml">
<allow ip="9.6.1.0/255.255.255.0,9.6.1.1/255.255.255.0" /><!-- Multiple values are separated by comma -->
<deny ip="9.6.0.0/255.255.0.0,9.6.1.4" /><!-- Multiple values are separated by comma -->
<ProxyRule url="*" actions="GET,POST,PUT,HEAD,DELETE" headers="*" mime_types="" cookies=""></ProxyRule><!-- can be multiple-->
</gadget>
</proxyrules>
OAuth 定義ファイルのサンプルを以下に示します。すべての OAuth2 情報は、OAuth2 要素の下で定義されます。すべての OAuth1.0a 情報は、OAuth1a 要素の下で定義されます。複数の OAuth サービスを同じ OAuth 定義ファイルで定義することができます。
<App ID="http://server.com/directory/GadgetFile.xml">
<OAuth2 ServiceName="OAuth2ServiceName"
AllowModuleOverides="false"
OAuth_Authorization_URI="http://server.com/oauth2/endpoint/provider/authorize"
OAuth_Access_Token_URI="http://server.com/oauth2/endpoint/provider/token"
Consumer_Key="key"
Consumer_Secret="secret"
Client_Type="CONFIDENTIAL"
Grant_Type="AUTHORIZATION_CODE"
Client_Auth_Type="STANDARD"
Use_Authorization_Header="false"
Use_Url_Parameter="true"
Shared="true"
/>
<OAuth1a ServiceName="OAuthServiceName"
OAuth_Request_Token_URI="request token"
OAuth_Authorization_URI="http://server.com/oauth/endpoint/authorize"
OAuth_Access_Token_URI="http://server.com/oauth/endpoint/token"
Consumer_Key="key"
Signature_Method="RSA-SHA1"
Consumer_Secret="secret"
Include_Body_Hash="true"
/>
</App>