com.softlayer.api.service.user.customer.external.binding.Verisign Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of softlayer-api-client Show documentation
Show all versions of softlayer-api-client Show documentation
API client for accessing the SoftLayer API
package com.softlayer.api.service.user.customer.external.binding;
import com.softlayer.api.ApiClient;
import com.softlayer.api.ResponseHandler;
import com.softlayer.api.annotation.ApiMethod;
import com.softlayer.api.annotation.ApiProperty;
import com.softlayer.api.annotation.ApiType;
import com.softlayer.api.service.user.customer.external.Binding;
import java.util.concurrent.Future;
/**
* The SoftLayer_User_Customer_External_Binding_Verisign data type contains information about a single VeriSign external binding. The external binding information is used when a SoftLayer customer logs into the SoftLayer customer portal to authenticate them against a 3rd party, in this case VeriSign.
*
* The information provided by the VeriSign external binding data type includes:
* * The type of credential
* * The current state of the credential
* ** Enabled
* ** Disabled
* ** Locked
* * The credential's expiration date
* * The last time the credential was updated
*
*
* SoftLayer users with an active external binding will be prohibited from using the API for security reasons.
*
* @see SoftLayer_User_Customer_External_Binding_Verisign
*/
@ApiType("SoftLayer_User_Customer_External_Binding_Verisign")
public class Verisign extends Binding {
/**
* The date that a VeriSign credential expires.
*/
@ApiProperty
protected String credentialExpirationDate;
public String getCredentialExpirationDate() {
return credentialExpirationDate;
}
public void setCredentialExpirationDate(String credentialExpirationDate) {
this.credentialExpirationDate = credentialExpirationDate;
}
/**
* The last time a VeriSign credential was updated.
*/
@ApiProperty
protected String credentialLastUpdateDate;
public String getCredentialLastUpdateDate() {
return credentialLastUpdateDate;
}
public void setCredentialLastUpdateDate(String credentialLastUpdateDate) {
this.credentialLastUpdateDate = credentialLastUpdateDate;
}
/**
* The current state of a VeriSign credential. This can be 'Enabled', 'Disabled', or 'Locked'.
*/
@ApiProperty
protected String credentialState;
public String getCredentialState() {
return credentialState;
}
public void setCredentialState(String credentialState) {
this.credentialState = credentialState;
}
/**
* The type of VeriSign credential. This can be either 'Hardware' or 'Software'.
*/
@ApiProperty
protected String credentialType;
public String getCredentialType() {
return credentialType;
}
public void setCredentialType(String credentialType) {
this.credentialType = credentialType;
}
public Service asService(ApiClient client) {
return service(client, id);
}
public static Service service(ApiClient client) {
return client.createService(Service.class, null);
}
public static Service service(ApiClient client, Long id) {
return client.createService(Service.class, id == null ? null : id.toString());
}
/**
* SoftLayer provides its customers the ability to add an additional layer of security to the SoftLayer customer portal by requiring that a user login and authenticate with a trusted 3rd party before they are given access to their SoftLayer account. This is accomplished by creating an external binding for a specific vendor, in this case VeriSign. When the SoftLayer user attempts to log in to the SoftLayer customer portal they will first be prompted for their normal SoftLayer username and password. Once that information is verified they will be asked to generate and provide a security code from their VeriSign credential. Once the security code has been authenticated with VeriSign the user will be allowed access to the SoftLayer customer portal.
*
* The VeriSign external binding service allows a user to create an external binding, enable, disable, or unlock an external binding, and delete an external binding. Currently SoftLayer provides the master account user of a SoftLayer account with one free VeriSign external binding. All subsequent VeriSign external bindings will need to be created by placing an order.
*
* Once a SoftLayer user has a valid and active VeriSign external binding, they will be required to always use their credential to login to the SoftLayer customer portal. In addition any user with an active external binding will be prohibited from using the API.
*
* @see SoftLayer_User_Customer_External_Binding_Verisign
*/
@com.softlayer.api.annotation.ApiService("SoftLayer_User_Customer_External_Binding_Verisign")
public static interface Service extends Binding.Service {
public ServiceAsync asAsync();
public Mask withNewMask();
public Mask withMask();
public void setMask(Mask mask);
/**
* Delete a VeriSign external binding. The only VeriSign external binding that can be deleted through this method is the free VeriSign external binding for the master user of a SoftLayer account. All other external bindings must be canceled using the SoftLayer service cancellation form.
*
* When a VeriSign external binding is deleted the credential is deactivated in VeriSign's system for use on the SoftLayer site and the $0 billing item associated with the free VeriSign external binding is cancelled.
*
* @see SoftLayer_User_Customer_External_Binding_Verisign::deleteObject
*/
@ApiMethod(value = "deleteObject", instanceRequired = true)
public Boolean deleteObjectForVerisign();
/**
* Disabling an external binding will allow you to keep the external binding on your SoftLayer account, but will not require you to authentication with our trusted 2 form factor vendor when logging into the SoftLayer customer portal.
*
* You may supply one of the following reason when you disable an external binding:
* *Unspecified
* *TemporarilyUnavailable
* *Lost
* *Stolen
*
* @see SoftLayer_User_Customer_External_Binding_Verisign::disable
*/
@ApiMethod(instanceRequired = true)
public Boolean disable(String reason);
/**
* Enabling an external binding will activate the binding on your account and require you to authenticate with our trusted 3rd party 2 form factor vendor when logging into the SoftLayer customer portal.
*
* Please note that API access will be disabled for users that have an active external binding.
*
* @see SoftLayer_User_Customer_External_Binding_Verisign::enable
*/
@ApiMethod(value = "enable", instanceRequired = true)
public Boolean enableForVerisign();
/**
* An activation code is required when provisioning a new mobile credential from Verisign. This method will return the required activation code.
*
* @see SoftLayer_User_Customer_External_Binding_Verisign::getActivationCodeForMobileClient
*/
@ApiMethod
public String getActivationCodeForMobileClient();
/**
* @see SoftLayer_User_Customer_External_Binding_Verisign::getObject
*/
@ApiMethod(value = "getObject", instanceRequired = true)
public Verisign getObjectForVerisign();
/**
* If a VeriSign credential becomes locked because of too many failed login attempts the unlock method can be used to unlock a VeriSign credential. As a security precaution a valid security code generated by the credential will be required before the credential is unlocked.
*
* @see SoftLayer_User_Customer_External_Binding_Verisign::unlock
*/
@ApiMethod(instanceRequired = true)
public Boolean unlock(String securityCode);
/**
* Validate the user id and VeriSign credential id used to create an external authentication binding.
*
* @see SoftLayer_User_Customer_External_Binding_Verisign::validateCredentialId
*/
@ApiMethod
public Boolean validateCredentialId(Long userId, String externalId);
/**
* The date that a VeriSign credential expires.
*
* @see SoftLayer_User_Customer_External_Binding_Verisign::getCredentialExpirationDate
*/
@ApiMethod(instanceRequired = true)
public String getCredentialExpirationDate();
/**
* The last time a VeriSign credential was updated.
*
* @see SoftLayer_User_Customer_External_Binding_Verisign::getCredentialLastUpdateDate
*/
@ApiMethod(instanceRequired = true)
public String getCredentialLastUpdateDate();
/**
* The current state of a VeriSign credential. This can be 'Enabled', 'Disabled', or 'Locked'.
*
* @see SoftLayer_User_Customer_External_Binding_Verisign::getCredentialState
*/
@ApiMethod(instanceRequired = true)
public String getCredentialState();
/**
* The type of VeriSign credential. This can be either 'Hardware' or 'Software'.
*
* @see SoftLayer_User_Customer_External_Binding_Verisign::getCredentialType
*/
@ApiMethod(instanceRequired = true)
public String getCredentialType();
}
public static interface ServiceAsync extends Binding.ServiceAsync {
public Mask withNewMask();
public Mask withMask();
public void setMask(Mask mask);
/**
* Async version of {@link Service#deleteObjectForVerisign}
*/
public Future deleteObjectForVerisign();
public Future> deleteObjectForVerisign(ResponseHandler callback);
/**
* Async version of {@link Service#disable}
*/
public Future disable(String reason);
public Future> disable(String reason, ResponseHandler callback);
/**
* Async version of {@link Service#enableForVerisign}
*/
public Future enableForVerisign();
public Future> enableForVerisign(ResponseHandler callback);
/**
* Async version of {@link Service#getActivationCodeForMobileClient}
*/
public Future getActivationCodeForMobileClient();
public Future> getActivationCodeForMobileClient(ResponseHandler callback);
/**
* Async version of {@link Service#getObjectForVerisign}
*/
public Future getObjectForVerisign();
public Future> getObjectForVerisign(ResponseHandler callback);
/**
* Async version of {@link Service#unlock}
*/
public Future unlock(String securityCode);
public Future> unlock(String securityCode, ResponseHandler callback);
/**
* Async version of {@link Service#validateCredentialId}
*/
public Future validateCredentialId(Long userId, String externalId);
public Future> validateCredentialId(Long userId, String externalId, ResponseHandler callback);
/**
* Async version of {@link Service#getCredentialExpirationDate}
*/
public Future getCredentialExpirationDate();
/**
* Async callback version of {@link Service#getCredentialExpirationDate}
*/
public Future> getCredentialExpirationDate(ResponseHandler callback);
/**
* Async version of {@link Service#getCredentialLastUpdateDate}
*/
public Future getCredentialLastUpdateDate();
/**
* Async callback version of {@link Service#getCredentialLastUpdateDate}
*/
public Future> getCredentialLastUpdateDate(ResponseHandler callback);
/**
* Async version of {@link Service#getCredentialState}
*/
public Future getCredentialState();
/**
* Async callback version of {@link Service#getCredentialState}
*/
public Future> getCredentialState(ResponseHandler callback);
/**
* Async version of {@link Service#getCredentialType}
*/
public Future getCredentialType();
/**
* Async callback version of {@link Service#getCredentialType}
*/
public Future> getCredentialType(ResponseHandler callback);
}
public static class Mask extends com.softlayer.api.service.user.customer.external.Binding.Mask {
public Mask credentialExpirationDate() {
withLocalProperty("credentialExpirationDate");
return this;
}
public Mask credentialLastUpdateDate() {
withLocalProperty("credentialLastUpdateDate");
return this;
}
public Mask credentialState() {
withLocalProperty("credentialState");
return this;
}
public Mask credentialType() {
withLocalProperty("credentialType");
return this;
}
}
}