2017-11-13 23 views
0

私は、主にネイティブモバイルアプリケーションから使用されるJSONを使用して公開REST APIを設計しました。このAPIに登録する必要があるアプリケーションには、公開する必要があるため、ユーザー名とパスワードのログインメカニズムはありません。wso2 api manager安全な公開API

APIはバージョン2.1.0のWSO2 APIマネージャを使用して設計されており、アプリケーションはサービスを使用するためにTLSv1.2の信頼できる接続を確立する必要があります。

バックエンド側のAPIは、相互TLS認証を持つ内部REST APIに加入しています。

現在、OAuth2はAPI用に無効になっています。APIを使用しようとしているエンドポイントのより高い保証と識別を得るために、これを使用する方法を考えています。

私がこのケースで使用できるOAuth2グラントタイプは、アプリケーションがアクセストークンを要求できるようにコンシューマーキーとコンシューマーシークレットを取得できる私の視点からのクライアントクレデンシャルです。しかし、アプリケーションのソースコードまたは構成から取得できます。

ユーザ名/パスワードのメカニズムがないため、Implicit Grant Typeは使用できません。

この場合APIマネージャの使用方法は?

+0

重複:// stackoverflowの。com/questions/42822397/wso2-api-manager-how-to-associate-a-client-certificate-to-backend-target-end – Bee

答えて

0

mutual sslについては、次のブログ記事を参照してください。ここで

http://ishara-cooray.blogspot.com/2016/07/how-to-secure-your-backend-services-and.html

ブログ記事からの重要な部分です。

設定のAPI Managerは、新しいXMLファイルを作成する必要があり、HHTPS輸送送信者のための動的SSLプロファイルの をAPIMを設定するには、動的SSLプロファイル

を有効にする /リポジトリ/展開/サーバー/ multi_ssl_profiles .xmlファイル(この パスは設定可能です)とit.This に以下の設定をコピーは10.100.5.130:9443

へのすべての の接続のためのトラストストアとしてクライアントtruststore.jksを設定します

APIマネージャー ({AM_HOME} /repository/conf/axis2.xml)のトランスポート送信者構成 (PassThroughHttpSSLSender)に 構成の下追加、このような構成の動的ローディングを可能にします。ファイルのパスの上に "filePath"というパラメータを設定します。

<parameter name="dynamicSSLProfilesConfig"> 
    <filePath>repository/deployment/server/multi_ssl_profiles.xml</filePath> 
    <fileReadInterval>3600000</fileReadInterval> 
</parameter> 
<parameter name="HostnameVerifier">AllowAll</parameter> 

は今、両方のバックエンドサービスとESBは、デフォルトのキー ストアを使用するように設定されており、APIマネージャは、動的SSLプロファイルをロードするように設定されています。 APIマネージャを再起動します。以下のコンソールにメッセージ が表示され、動的構成がロードされたことが確認されます。

ClientConnFactoryBuilder customSSLProfiles構成がパスから をロードされます。httpsの

+1

これがWSO2 APIマネージャのOAuth2による認証をどのように作成するのか分かりません...モバイルデバイス上のクライアントにはクライアント証明書がありません。 – user1563721

関連する問題