cisco.ise.selfregportal module – Resource module for Selfregportal

Note

This module is part of the cisco.ise collection (version 3.0.0).

To install it, use: ansible-galaxy collection install cisco.ise. You need further requirements to be able to use this module, see Requirements for details.

To use it in a playbook, specify: cisco.ise.selfregportal.

New in cisco.ise 1.0.0

Synopsis

  • Manage operation create of the resource Selfregportal.

Note

This module has a corresponding action plugin.

Requirements

The below requirements are needed on the host that executes this module.

  • ciscoisesdk >= 2.0.1

  • python >= 3.5

Parameters

Parameter

Comments

customizations

dictionary

Selfregportal’s customizations.

globalCustomizations

dictionary

Selfregportal’s globalCustomizations.

backgroundImage

dictionary

Selfregportal’s backgroundImage.

data

string

Represented as base 64 encoded string of the image byte array.

bannerImage

dictionary

Selfregportal’s bannerImage.

data

string

Represented as base 64 encoded string of the image byte array.

bannerTitle

string

Selfregportal’s bannerTitle.

contactText

string

Selfregportal’s contactText.

footerElement

string

Selfregportal’s footerElement.

mobileLogoImage

dictionary

Selfregportal’s mobileLogoImage.

data

string

Represented as base 64 encoded string of the image byte array.

language

dictionary

This property is supported only for Read operation and it allows to show the customizations in English. Other languages are not supported.

pageCustomizations

dictionary

Selfregportal’s pageCustomizations.

data

list / elements=dictionary

The Dictionary will be exposed here as key value pair.

portalTheme

dictionary

Selfregportal’s portalTheme.

id

string

The unique internal identifier of the portal theme.

name

string

The system- or user-assigned name of the portal theme.

themeData

string

A CSS file, represented as a Base64-encoded byte array.

portalTweakSettings

dictionary

Selfregportal’s portalTweakSettings.

banneColor

string

Selfregportal’s banneColor.

bannerTextColor

string

Selfregportal’s bannerTextColor.

pageBackgroundColor

string

Selfregportal’s pageBackgroundColor.

pageLabelAndTextColor

string

Selfregportal’s pageLabelAndTextColor.

description

string

Description.

id

string

Id.

ise_debug

boolean

Flag for Identity Services Engine SDK to enable debugging.

Choices:

ise_hostname

string / required

The Identity Services Engine hostname.

ise_password

string / required

The Identity Services Engine password to authenticate.

ise_single_request_timeout

integer

added in cisco.ise 3.0.0

Timeout (in seconds) for RESTful HTTP requests.

Default: :ansible-option-default:`60`

ise_username

string / required

The Identity Services Engine username to authenticate.

ise_uses_api_gateway

boolean

added in cisco.ise 1.1.0

Flag that informs the SDK whether to use the Identity Services Engine’s API Gateway to send requests.

If it is true, it uses the ISE’s API Gateway and sends requests to https://{{ise_hostname}}.

If it is false, it sends the requests to https://{{ise_hostname}}:{{port}}, where the port value depends on the Service used (ERS, Mnt, UI, PxGrid).

Choices:

ise_uses_csrf_token

boolean

added in cisco.ise 3.0.0

Flag that informs the SDK whether we send the CSRF token to ISE’s ERS APIs.

If it is True, the SDK assumes that your ISE CSRF Check is enabled.

If it is True, it assumes you need the SDK to manage the CSRF token automatically for you.

Choices:

ise_verify

boolean

Flag to enable or disable SSL certificate verification.

Choices:

ise_version

string

Informs the SDK which version of Identity Services Engine to use.

Default: :ansible-option-default:`"3.1\_Patch\_1"`

ise_wait_on_rate_limit

boolean

Flag for Identity Services Engine SDK to enable automatic rate-limit handling.

Choices:

name

string

Name.

portalTestUrl

string

URL to bring up a test page for this portal.

portalType

string

Allowed values byod, hotspotGuest, mydevice, selfRegGuest, sponsor and sponsoredGuest.

settings

dictionary

Selfregportal’s settings.

aupSettings

dictionary

Selfregportal’s aupSettings.

displayFrequency

string

How the AUP should be displayed, either on page or as a link. Only valid if includeAup = true. Allowed Values firstLogin, everyLogin and recurring.

displayFrequencyIntervalDays

float

Number of days between AUP confirmations (when displayFrequency = recurring).

includeAup

boolean

Require the portal user to read and accept an AUP.

Choices:

requireAupScrolling

boolean

Require the portal user to scroll to the end of the AUP. Only valid if requireAupAcceptance = true.

Choices:

skipAupForEmployees

boolean

Only valid if requireAupAcceptance = true.

Choices:

useDiffAupForEmployees

boolean

Only valid if requireAupAcceptance = true.

Choices:

authSuccessSettings

dictionary

Selfregportal’s authSuccessSettings.

redirectUrl

string

Target URL for redirection, used when successRedirect = url.

successRedirect

string

After an Authentication Success where should user be redirected. Allowed Values authSuccessPage, originatingURL and url.

byodSettings

dictionary

Selfregportal’s byodSettings.

byodRegistrationSettings

dictionary

Selfregportal’s byodRegistrationSettings.

endPointIdentityGroupId

string

TIdentity group id for which endpoint belongs.

showDeviceID

boolean

Display Device ID field during registration.

Choices:

byodRegistrationSuccessSettings

dictionary

Selfregportal’s byodRegistrationSuccessSettings.

redirectUrl

string

Target URL for redirection, used when successRedirect = url.

successRedirect

string

After an Authentication Success where should device be redirected, allowedValues authSuccessPage, originatingURL and url.

byodWelcomeSettings

dictionary

Selfregportal’s byodWelcomeSettings.

aupDisplay

string

How the AUP should be displayed, either on page or as a link. Only valid if includeAup = true. AllowedValues onPage, asLink.

enableBYOD

boolean

enableGuestAccess

boolean

includeAup

boolean

requireAupAcceptance

boolean

requireMDM

boolean

requireScrolling

boolean

Require BYOD devices to scroll down to the bottom of the AUP, Only valid if includeAup = true.

Choices:

guestChangePasswordSettings

dictionary

Selfregportal’s guestChangePasswordSettings.

allowChangePasswdAtFirstLogin

boolean

Allow guest to change their own passwords.

Choices:

guestDeviceRegistrationSettings

dictionary

Selfregportal’s guestDeviceRegistrationSettings.

allowGuestsToRegisterDevices

boolean

autoRegisterGuestDevices

boolean

Automatically register guest devices.

Choices:

loginPageSettings

dictionary

Selfregportal’s loginPageSettings.

accessCode

string

Access code that must be entered by the portal user (only valid if requireAccessCode = true).

allowAlternateGuestPortal

boolean

allowGuestToChangePassword

boolean

Require the portal user to enter an access code.

Choices:

allowGuestToCreateAccounts

boolean

alternateGuestPortal

string

Selfregportal’s alternateGuestPortal.

aupDisplay

string

How the AUP should be displayed, either on page or as a link. Only valid if includeAup = true. Allowed Values onPage and asLink.

includeAup

boolean

Include an Acceptable Use Policy (AUP) that should be displayed during login.

Choices:

maxFailedAttemptsBeforeRateLimit

float

Maximum failed login attempts before rate limiting.

requireAccessCode

boolean

Require the portal user to enter an access code.

Choices:

requireAupAcceptance

boolean

Require the portal user to accept the AUP. Only valid if includeAup = true.

Choices:

timeBetweenLoginsDuringRateLimit

float

Time between login attempts when rate limiting.

portalSettings

dictionary

Selfregportal’s portalSettings.

allowedInterfaces

string

Interfaces that the portal will be reachable on. Allowed values eth0, eth1, eth2, eth3, eth4, eth5, bond0, bond1 and bond2.

alwaysUsedLanguage

string

Used when displayLang = alwaysUse.

assignedGuestTypeForEmployee

string

Unique Id of a guest type. Employees using this portal as a guest inherit login options from the guest type.

authenticationMethod

string

Unique Id of the identity source sequence .

certificateGroupTag

string

Logical name of the x.509 server certificate that will be used for the portal.

displayLang

string

Allowed values useBrowserLocale and alwaysUse.

fallbackLanguage

string

Used when displayLang = useBrowserLocale.

httpsPort

float

The port number that the allowed interfaces will listen on. Range from 8000 to 8999.

postLoginBannerSettings

dictionary

Selfregportal’s postLoginBannerSettings.

includePostAccessBanner

boolean

selfRegPageSettings

dictionary

Selfregportal’s selfRegPageSettings.

accountValidityDuration

float

Self-registered guest account is valid for this many account_validity_time_units.

accountValidityTimeUnits

string

Time units for account_validity_duration. Allowed Values days, hours and minutes.

approvalEmailAddresses

string

Only valid if requireGuestApproval = true and sendApprovalRequestTo = selectedEmailAddresses.

approveDenyLinksTimeUnits

string

This attribute, along with approveDenyLinksValidFor, specifies how long the link can be used. Only valid if requireGuestApproval = true. Allowed Values days, hours and minutes.

approveDenyLinksValidFor

float

This attribute, along with approveDenyLinksTimeUnits, specifies how long the link can be used. Only valid if requireGuestApproval = true.

assignGuestsToGuestType

string

Guests are assigned to this guest type.

aupDisplay

string

How the AUP should be displayed, either on page or as a link. Only valid if includeAup = true. Allowed Values onPage and asLink.

autoLoginSelfWait

boolean

Allow guests to login automatically from self-registration after sponsor’s approval. No need to provide the credentials by guest to login.

Choices:

autoLoginTimePeriod

dictionary

Waiting period for auto login until sponsor’s approval. If time exceeds, guest has to login manually by providing the credentials. Default value is 5 minutes.

credentialNotificationUsingEmail

boolean

If true, send credential notification upon approval using email. Only valid if requireGuestApproval = true.

Choices:

credentialNotificationUsingSMS

boolean

If true, send credential notification upon approval using SMS. Only valid if requireGuestApproval = true.

Choices:

enableGuestEmailAllowlist

boolean

Allow guests with an e-mail address from selected domains.

Choices:

enableGuestEmailBlocklist

boolean

Disallow guests with an e-mail address from selected domains.

Choices:

fieldCompany

dictionary

Selfregportal’s fieldCompany.

displayFrequency

boolean

include

boolean

fieldEmailAddr

dictionary

Selfregportal’s fieldEmailAddr.

displayFrequency

boolean

include

boolean

fieldFirstName

dictionary

Selfregportal’s fieldFirstName.

displayFrequency

boolean

include

boolean

fieldLastName

dictionary

Selfregportal’s fieldLastName.

displayFrequency

boolean

include

boolean

fieldLocation

dictionary

Selfregportal’s fieldLocation.

displayFrequency

boolean

include

boolean

fieldPersonBeingVisited

dictionary

Selfregportal’s fieldPersonBeingVisited.

displayFrequency

boolean

include

boolean

fieldPhoneNo

dictionary

Selfregportal’s fieldPhoneNo.

displayFrequency

boolean

include

boolean

fieldReasonForVisit

dictionary

Selfregportal’s fieldReasonForVisit.

displayFrequency

boolean

include

boolean

fieldSMSProvider

dictionary

Selfregportal’s fieldSMSProvider.

displayFrequency

boolean

include

boolean

fieldUserName

dictionary

Selfregportal’s fieldUserName.

displayFrequency

boolean

include

boolean

guestEmailAllowlistDomains

list / elements=string

Self-registered guests whose e-mail address is in one of these domains will be allowed. Only valid if enableGuestEmailWhitelist = true.

guestEmailBlocklistDomains

list / elements=string

Self-registered guests whose e-mail address is in one of these domains will be disallowed. Only valid if enableGuestEmailBlacklist = true.

includeAup

boolean

Include an Acceptable Use Policy (AUP) that should be displayed during login.

Choices:

postRegistrationRedirect

string

After the registration submission direct the guest user to one of the following pages. Only valid if requireGuestApproval = true. Allowed Values selfRegistrationSuccess, loginPageWithInstructions and url.

postRegistrationRedirectUrl

string

URL where guest user is redirected after registration. Only valid if requireGuestApproval = true and postRegistrationRedirect = url.

registrationCode

string

The registration code that the guest user must enter.

requireApproverToAuthenticate

boolean

When self-registered guests require approval, an approval request is e-mailed to one or more sponsor users. If the ISE Administrator chooses to include an approval link in the e-mail, a sponsor user who clicks the link will be required to enter their username and password if this attribute is true. Only valid if requireGuestApproval = true.

Choices:

requireAupAcceptance

boolean

Require the portal user to accept the AUP. Only valid if includeAup = true.

Choices:

requireGuestApproval

boolean

Require self-registered guests to be approved if true.

Choices:

requireRegistrationCode

boolean

Self-registered guests are required to enter a registration code.

Choices:

selectableLocations

list / elements=string

Guests can choose from these locations to set their time zone.

selectableSMSProviders

list / elements=string

This attribute is an array of SMS provider names.

sendApprovalRequestTo

string

Specifies where approval requests are sent. Only valid if requireGuestApproval = true. Allowed Values selectedEmailAddresses and personBeingVisited.

sponsorPortalList

list / elements=string

When self-registered guests require approval, an approval request is e-mailed to one or more sponsor users. If the ISE Administrator chooses to include an approval link in the e-mail, a sponsor user who clicks the link will be authenticated against the selected sponsor portals in the order specified. Only valid if requireGuestApproval = true. The array should contain the names of the selected portals.

selfRegSuccessSettings

dictionary

Selfregportal’s selfRegSuccessSettings.

allowGuestLoginFromSelfregSuccessPage

boolean

AllowGuestLoginFromSelfregSuccessPage flag.

Choices:

allowGuestSendSelfUsingEmail

boolean

allowGuestSendSelfUsingPrint

boolean

allowGuestSendSelfUsingSMS

boolean

aupOnPage

boolean

includeAup

boolean

includeCompany

boolean

includeEmailAddr

boolean

includeFirstName

boolean

includeLastName

boolean

includeLocation

boolean

includePassword

boolean

includePersonBeingVisited

boolean

includePhoneNo

boolean

includeReasonForVisit

boolean

includeSMSProvider

boolean

includeUserName

boolean

requireAupAcceptance

boolean

requireAupScrolling

boolean

supportInfoSettings

dictionary

Selfregportal’s supportInfoSettings.

defaultEmptyFieldValue

string

The default value displayed for an empty field Only valid when emptyFieldDisplay = displayWithDefaultValue.

emptyFieldDisplay

string

Specifies how empty fields are handled on the Support Information Page. AllowedValues hide, displayWithNoValue and displayWithDefaultValue.

includeBrowserUserAgent

boolean

includeFailureCode

boolean

includeIpAddress

boolean

includeMacAddr

boolean

includePolicyServer

boolean

includeSupportInfoPage

boolean

Notes

Note

  • SDK Method used are selfregportal.Selfregportal.create_selfregportal,

  • Paths used are post /selfregportal/,

  • Does not support check_mode

  • The plugin runs on the control node and does not use any ansible connection plugins, but instead the embedded connection manager from Cisco ISE SDK

  • The parameters starting with ise_ are used by the Cisco ISE Python SDK to establish the connection

Examples

---
- name: Create
  cisco.ise.selfregportal:
    ise_hostname: "{{ise_hostname}}"
    ise_username: "{{ise_username}}"
    ise_password: "{{ise_password}}"
    ise_verify: "{{ise_verify}}"
    state: present
    customizations:
      globalCustomizations:
        bannerImage:
          data: base 64 encoded value of image
        bannerTitle: Banner Title
        contactText: 'Contact Information '
        desktopLogoImage:
          data: base 64 encoded value of image
        footerElement: Footer Element
        mobileLogoImage:
          data: base 64 encoded value of image
      language:
        viewLanguage: English
      pageCustomizations:
        data:
          - key: ui_contact_link
            value: Contact Support
      portalTheme:
        id: themeId
        name: ThemeName
        themeData: Base 64 encoded string of Theme CSS file
      portalTweakSettings:
        bannerColor: Banner Color from GUI
        bannerTextColor: Banner Text color code from GUI
        pageBackgroundColor: Color code from GUI
        pageLabelAndTextColor: Label and Text color from GUI
    description: description
    id: f75760e7-a4f9-40ef-93bb-88a97e9fb171
    name: name
    portalType: SELFREGGUEST
    settings:
      aupSettings:
        displayFrequency: FIRSTLOGIN
        includeAup: false
        requireAccessCode: false
        requireScrolling: true
        skipAupForEmployees: true
        useDiffAupForEmployees: false
      authSuccessSettings:
        redirectUrl: www.cisco.com
        successRedirect: AUTHSUCCESSPAGE
      guestChangePasswordSettings:
        allowChangePasswdAtFirstLogin: false
      guestDeviceRegistrationSettings:
        allowGuestsToRegisterDevices: true
        autoRegisterGuestDevices: false
      loginPageSettings:
        accessCode: Access Code
        allowAlternateGuestPortal: false
        allowForgotPassword: false
        allowGuestToChangePassword: false
        allowGuestToCreateAccounts: false
        allowGuestToUseSocialAccounts: false
        allowShowGuestForm: false
        aupDisplay: ASLINK
        includeAup: false
        maxFailedAttemptsBeforeRateLimit: 5
        requireAccessCode: false
        requireAupAcceptance: false
        requireAupScrolling: false
        socialConfigs: []
        timeBetweenLoginsDuringRateLimit: 2
      portalSettings:
        allowedInterfaces:
          - eth0
          - bond0
        alwaysUsedLanguage: English
        assignedGuestTypeForEmployee: Guest Type configured
        authenticationMethod: Identity Sequence
        availableSsids: []
        certificateGroupTag: Default Portal Certificate Group
        displayLang: USEBROWSERLOCALE
        endpointIdentityGroup: f14227b0-6e5c-11e6-8f6a-005056873bd0
        fallbackLanguage: English
        httpsPort: 8443
      postLoginBannerSettings:
        includePostAccessBanner: true
      selfRegPageSettings:
        accountValidityDuration: 1
        accountValidityTimeUnits: DAYS
        allowGraceAccess: false
        approveDenyLinksTimeUnits: DAYS
        assignGuestsToGuestType: Guest Type
        aupDisplay: ASLINK
        authenticateSponsorsUsingPortalList: false
        autoLoginSelfWait: false
        autoLoginTimePeriod: 1
        credentialNotificationUsingEmail: false
        credentialNotificationUsingSms: false
        enableGuestEmailBlacklist: false
        enableGuestEmailWhitelist: false
        fieldCompany:
          include: true
          require: false
        fieldEmailAddr:
          include: true
          require: false
        fieldFirstName:
          include: true
          require: false
        fieldLastName:
          include: true
          require: false
        fieldLocation:
          include: true
          require: false
        fieldPhoneNo:
          include: true
          require: false
        fieldReasonForVisit:
          include: true
          require: false
        fieldSmsProvider:
          include: true
          require: false
        fieldUserName:
          include: true
          require: false
        graceAccessExpireInterval: 10
        graceAccessSendAccountExpiration: false
        guestEmailBlacklistDomains:
          - test1@cisco.com
        guestEmailWhitelistDomains:
          - test@cisco.com
        includeAup: false
        postRegistrationRedirect: SELFREGISTRATIONSUCCESS
        registrationCode: Registration Code
        requireAupAcceptance: false
        requireGuestApproval: false
        requireRegistrationCode: false
        selectableLocations:
          - location1
          - location2
        selectableSmsProviders:
          - Sms1
        sendApprovalRequestTo: SELECTEDEMAILADDRESSES
        sponsorPortalList: []
      selfRegSuccessSettings:
        allowGuestLoginFromSelfregSuccessPage: true
        allowGuestSendSelfUsingEmail: true
        allowGuestSendSelfUsingPrint: true
        allowGuestSendSelfUsingSms: true
        aupOnPage: false
        includeAup: false
        includeCompany: true
        includeEmailAddr: true
        includeFirstName: true
        includeLastName: true
        includeLocation: true
        includePassword: true
        includePersonBeingVisited: true
        includePhoneNo: true
        includeReasonForVisit: true
        includeSmsProvider: true
        includeUserName: true
        requireAupAcceptance: false
        requireAupScrolling: false
      supportInfoSettings:
        emptyFieldDisplay: HIDE
        includeBrowserUserAgent: true
        includeFailureCode: true
        includeIpAddress: true
        includeMacAddr: true
        includePolicyServer: true
        includeSupportInfoPage: false

Return Values

Common return values are documented here, the following are the fields unique to this module:

Key

Description

ise_response

list / elements=dictionary

Authors

  • Rafael Campos (@racampos)