The telekomSMSTokenProvider randomly generates a 6-digit token after the user entered her correct password.
The token is then sent to the user via text message. The user's attribute sms is used as the recipient phone number. If this attribute has not been provided by the user data provider, the login attempt fails.
The text message is sent via Deutsche Telekom's developer garden REST API. To use this API, a registered user account with sufficient balance is necessary and the Send SMS API has to be enabled for this account. Membrane Service Proxy must be registered as an "application" on the developer garden website, and the "Global SMS API" must be enabled both for the user account as well as the registered application. Once completed, the scope, clientId and clientSecret settings must be copied from the website into Membrane's proxies.xml configuration file. Membrane uses these three parameters to identify itself when connecting to the Telekom API Gateway.
When using a non-standard environment (see https://www.developergarden.com/apis/documentation/bundle/telekom-api-rest/html/sendsms.html#environmental_infos for more information), the parameters senderName and senderAddress may be used to set the SMS sender address and name.
The token is prepended by prefixText to generate the text message's text.
If normalizeTelephoneNumber is set, the user's sms attribute will be normalized according to the following rules before using it:
- '+' is replaced by '00'.
- Any characters within round brackets, '(' and ')', are removed.
- '-' and ' ' are removed.
Can be used in
<telekomSMSTokenProvider scope="string" clientId="string" clientSecret="string" [prefixText="string"] [normalizeTelephoneNumber="boolean"] [environment="string"] [senderName="string"] [senderAddress="string"]/>
<telekomSMSTokenProvider scope="uFah4h" clientId="aed1quieZo" clientSecret="iep3sop9paejoo2yio6ha1weihoo6ouveita4uiTh8sae7LieFulaifi0aes3Noolai1matei8uRahfazia7riefuZegh0Nei7em" prefixText="Token: " normalizeTelephoneNumber="true" />
|clientId||true||-||The clientId assigned to you by developergarden.com .|
|clientSecret||true||-||The clientSecret assigned to you by developergarden.com .|
|environment||false||budget||The environment (program name) you are paying for on developergarden.com .||premium|
|prefixText||false||"Token: "||A string that will be prepended to the token when creating the text message.||"Token: "|
|scope||true||-||The scope assigned to you by developergarden.com .|
|senderAddress||false||-||The sender address (telephone number) of the text messages. May only be set, if you are a member of the premium program on developergarded.com .|
|senderName||false||-||The sender name of the text messages. May only be set, if you are a member of the premium program on developergarded.com .|
|simulate||false||-||Don't send any text messages, only write tokens to the log.|