[server]
#hostname = "km.wso2.com"
node_ip = "127.0.0.1"
server_role = "api-key-manager"

[user_store]
type = "database_unique_id"

[super_admin]
username = "admin"
password = "admin"
create_admin_account = true

[database.apim_db]
type = "mysql"
hostname = "apim.mysql"
name = "apimgt_db"
port = "3306"
username = "apimuser"
password = "apimuser"

[database.shared_db]
type = "mysql"
hostname = "shared_db.mysql"
name = "shared_db"
port = "3306"
username = "shareduser"
password = "shareduser"

[keystore.tls]
file_name =  "wso2carbon.jks"
type =  "JKS"
password =  "wso2carbon"
alias =  "wso2carbon"
key_password =  "wso2carbon"

[truststore]
file_name = "client-truststore.jks"
type = "JKS"
password = "wso2carbon"

[[apim.gateway.environment]]
name= "Production and Sandbox"
type= "hybrid"
display_in_api_console= true
description= "This is a hybrid gateway that handles both production and sandbox token traffic."
service_url= "https://gw.mgt.wso2.com:443/services/"
username= "${admin.username}"
password= "${admin.password}"

# Caches
[apim.cache.km_token]
enable = false
expiry_time = 15

[apim.cache.jwt_claim]
enable = true
expiry_time = 900

# JWT Generation
[apim.jwt]
enable = true
encoding = "base64" # base64,base64url
#generator_impl = "org.wso2.carbon.apimgt.keymgt.token.JWTGenerator"
claim_dialect = "http://wso2.org/claims"
header = "X-JWT-Assertion"
signing_algorithm = "SHA256withRSA"
#enable_user_claims = true
#claims_extractor_impl = "org.wso2.carbon.apimgt.impl.token.DefaultClaimsRetriever"

[apim.throttling]
# Required for JWT revocation
[[apim.throttling.url_group]]
traffic_manager_urls=["tcp://tm1.local:9611"]
traffic_manager_auth_urls=["ssl://tm1.local:9711"]

[[apim.throttling.url_group]]
traffic_manager_urls=["tcp://tm2.local:9611"]
traffic_manager_auth_urls=["ssl://tm2.local:9711"]
