- OIRMode=TEMPORARY
- OIRMode=TEMPORARY - OIRDefaultBehaviourType=PRESENTATION_NOT_RESTRICTED
- OIRMode=TEMPORARY - OIRDefaultBehaviourType=PRESENTATION_NOT_RESTRICTED - OIRUserPolicy=NONE
- OIRMode=TEMPORARY - OIRDefaultBehaviourType=PRESENTATION_NOT_RESTRICTED - OIRUserPolicy=ANONYMIZE_FROM
- OIRMode=TEMPORARY - OIRDefaultBehaviourType=PRESENTATION_NOT_RESTRICTED - OIRUserPolicy=ADD_USER_PRIVACY
- OIRMode=TEMPORARY - OIRDefaultBehaviourType=PRESENTATION_RESTRICTED
- OIRMode=TEMPORARY - OIRDefaultBehaviourType=PRESENTATION_RESTRICTED - OIRPresentationRestrictionType=ONLY_IDENTITY - OIRUserPolicy=NONE
- OIRMode=TEMPORARY - OIRDefaultBehaviourType=PRESENTATION_RESTRICTED - OIRPresentationRestrictionType=ONLY_IDENTITY - OIRUserPolicy=ANONYMISE_FROM
- OIRMode=TEMPORARY - OIRDefaultBehaviourType=PRESENTATION_RESTRICTED - OIRPresentationRestrictionType=ONLY_IDENTITY - OIRUserPolicy=ADD_USER_PRIVACY
- OIRMode=TEMPORARY - OIRDefaultBehaviourType=PRESENTATION_RESTRICTED - OIRPresentationRestrictionType=ALL_PRIVATE_INFORMATION - OIRUserPolicy=NONE
- OIRMode=TEMPORARY - OIRDefaultBehaviourType=PRESENTATION_RESTRICTED - OIRPresentationRestrictionType=ALL_PRIVATE_INFORMATION - OIRUserPolicy=ANONYMIZE_FROM
- OIRMode=TEMPORARY - OIRDefaultBehaviourType=PRESENTATION_RESTRICTED - OIRPresentationRestrictionType=ALL_PRIVATE_INFORMATION - OIRUserPolicy=ADD_USER_PRIVACY
- OIRMode=TEMPORARY - OIRDefaultBehaviourType=PRESENTATION_NOT_RESTRICTED
- OIRMode=PERMANENT
- OIRMode=PERMANENT - OIRDefaultBehaviourType=PRESENTATION_RESTRICTED - OIRPresentationRestrictionType=ONLY_IDENTITY - OIRUserPolicy=NONE
- OIRMode=PERMANENT - OIRDefaultBehaviourType=PRESENTATION_RESTRICTED - OIRPresentationRestrictionType=ONLY_IDENTITY - OIRUserPolicy=ANONYMIZE_FROM
- OIRMode=PERMANENT - OIRDefaultBehaviourType=PRESENTATION_RESTRICTED - OIRPresentationRestrictionType=ONLY_IDENTITY - OIRUserPolicy=ADD_USER_PRIVACY
- OIRMode=PERMANENT - OIRDefaultBehaviourType=PRESENTATION_RESTRICTED - OIRPresentationRestrictionType=ALL_PRIVATE_INFORMATION - OIRUserPolicy=NONE
- OIRMode=PERMANENT - OIRDefaultBehaviourType=PRESENTATION_RESTRICTED - OIRPresentationRestrictionType=ALL_PRIVATE_INFORMATION - OIRUserPolicy=ANONYMIZE_FROM
- OIRMode=PERMANENT - OIRDefaultBehaviourType=PRESENTATION_RESTRICTED - OIRPresentationRestrictionType=ALL_PRIVATE_INFORMATION - OIRUserPolicy=ADD_USER_PRIVACY
OIRMode=TEMPORARY
OIRMode=TEMPORARY - OIRDefaultBehaviourType=PRESENTATION_NOT_RESTRICTED
In this mode the network default is to not restrict the originating user identity. If the originating user wishes to override the "no restriction" default the UE of the originating user will add Privacy header set to the value "id", "header" or "user".
If the OIRDefaultBehaviourType is set to PRESENTATION_NOT_RESTRICTED and the request received contains Privacy header with value set to "id" or "header" (user is temporarily requesting privacy) the AS of originating user shall either (as a matter of operator policy):
-
Add Privacy value set to "user", or
-
change the From header value to remove the originating user identity.
In the example below, AS change the From header to anonymous values while preserving the privacy header value:
1: INVITE sip:userB_public1@home1.net;gr=2ad8950e-48a5-4a74-8d99-ad76cc7fc74c SIP/2.0
...
10: From: <sip:userA_public1@home1.net>;tag=171828
18: Contact: <sip:userA_public1@home1.net;gr=urn:uuid:388s9-48js9-37749-3774-usuw8u38;comp=sigcomp>;+g.3gpp.icsi - ref="urn%3Aurn-7%3gpp-service.ims.icsi.mmtel"
30: P-Asserted-Identity: "John Doe" <sip:userA_public1@home1.net>
30: Privacy: id
...
1: INVITE sip:userB_public1@home1.net;gr=2ad8950e-48a5-4a74-8d99-ad76cc7fc74c SIP/2.0
...
10: From: <sip:anonymous@anonymous.invalid>;tag=637364
18: Contact: <sip:userA_public1@home1.net;gr=urn:uuid:388s9-48js9-37749-3774-usuw8u38;comp=sigcomp>;+g.3gpp.icsi - ref="urn%3Aurn-7%3gpp-service.ims.icsi.mmtel"
30: P-Asserted-Identity: "John Doe" <sip:userA_public1@home1.net>
31: Privacy: id
...
OIRMode=TEMPORARY - OIRDefaultBehaviourType=PRESENTATION_NOT_RESTRICTED - OIRUserPolicy=NONE
No action is required at AS of originating user. Unrestricted privacy level is overridden by UE setting the Privacy header value to an appropriate value (other than none).
OIRMode=TEMPORARY - OIRDefaultBehaviourType=PRESENTATION_NOT_RESTRICTED - OIRUserPolicy=ANONYMIZE_FROM
AS of originating user shall set/adjust value of the Privacy header in the request received depending on precondition.
Precondition | Action of AS originating user |
---|---|
Privacy header value contains id or header or both values |
1. Set URI of the From header to sip:anonymous@anonymous.invalid 2. Set display name of the From header to "Anonymous" |
OIRMode=TEMPORARY - OIRDefaultBehaviourType=PRESENTATION_NOT_RESTRICTED - OIRUserPolicy=ADD_USER_PRIVACY
AS of originating user shall set/adjust value of the Privacy header in the request received depending on precondition.
Precondition | Action of AS originating user |
---|---|
No Privacy header |
No action |
Privacy header value set to none |
No Action |
Privacy header value set to header |
Unless already included add value user |
Privacy header value set to id |
Unless already included add value user |
Privacy header value set to id and header |
Unless already included add value user |
OIRMode=TEMPORARY - OIRDefaultBehaviourType=PRESENTATION_RESTRICTED
In this mode the network default is to restrict the originating user identity. The default is overridden by UE inserting Privacy header set to value "none" in a received request.
If request contains no Privacy header or the Privacy header is not set to the value of "none" then the AS of originating user shall insert Privacy header with value to "id" or "header" according to the Restriction Privacy Attribute.
In the example below the privacy option id is added (asserted identity restriction option):
1: INVITE sip:userB_public1@home1.net;gr=2ad8950e-48a5-4a74-8d99-ad76cc7fc74c SIP/2.0
...
10: From: <sip:userA_public1@home1.net>;tag=171828
18: Contact: <sip:userA_public1@home1.net;gr=urn:uuid:388s9-48js9-37749-3774-usuw8u38;comp=sigcomp>;+g.3gpp.icsi - ref="urn%3Aurn-7%3gpp-service.ims.icsi.mmtel"
30: P-Asserted-Identity: "John Doe" <sip:userA_public1@home1.net>
30: Privacy: user
...
In the below example, the UE sets the privacy value of "none" in the received request indicates user’s preference to override the PRESENTATION_RESTRICTED default. In this case, headers P-Asserted-Identity and Privacy with value set to "none" will be forwarded by AS unchanged.
1: INVITE sip:userB_public1@home1.net;gr=2ad8950e-48a5-4a74-8d99-ad76cc7fc74c SIP/2.0
...
10: From: <sip:userA_public1@home1.net>;tag=171828
18: Contact: <sip:userA_public1@home1.net;gr=urn:uuid:388s9-48js9-37749-3774-usuw8u38;comp=sigcomp>;+g.3gpp.icsi - ref="urn%3Aurn-7%3gpp-service.ims.icsi.mmtel"
30: P-Asserted-Identity: "John Doe" <sip:userA_public1@home1.net>
30: Privacy: none
...
OIRMode=TEMPORARY - OIRDefaultBehaviourType=PRESENTATION_RESTRICTED - OIRPresentationRestrictionType=ONLY_IDENTITY - OIRUserPolicy=NONE
AS of originating user shall set/adjust value of the Privacy header in the request received depending on precondition.
Precondition | Action of AS originating user |
---|---|
No Privacy header |
Add Privacy header set to value id |
Privacy header value set to none |
No Action |
Privacy header value doesn’t include id |
Add value id |
OIRMode=TEMPORARY - OIRDefaultBehaviourType=PRESENTATION_RESTRICTED - OIRPresentationRestrictionType=ONLY_IDENTITY - OIRUserPolicy=ANONYMISE_FROM
AS of originating user shall set/adjust value of the Privacy header in the request received depending on precondition.
Precondition | Action of AS originating user |
---|---|
No Privacy header |
1. Add Privacy header set to value id 2. Set URI of the From header to sip:anonymous@anonymous.invalid 3. Set display name of the From header to "Anonymous" |
Privacy header value set to none |
No Action |
Privacy header value doesn’t include id |
1. Add value id 2. Set URI of the From header to sip:anonymous@anonymous.invalid 3. Set display name of the From header to "Anonymous" |
OIRMode=TEMPORARY - OIRDefaultBehaviourType=PRESENTATION_RESTRICTED - OIRPresentationRestrictionType=ONLY_IDENTITY - OIRUserPolicy=ADD_USER_PRIVACY
AS of originating user shall set/adjust value of the Privacy header in the request received depending on precondition.
Precondition | Action of AS originating user |
---|---|
No Privacy header |
Add Privacy header set to value id and user |
Privacy header value set to none |
No Action |
Privacy header value doesn’t include id |
1. Add value id 2. Add value user unless already included |
OIRMode=TEMPORARY - OIRDefaultBehaviourType=PRESENTATION_RESTRICTED - OIRPresentationRestrictionType=ALL_PRIVATE_INFORMATION - OIRUserPolicy=NONE
AS of originating user shall set/adjust value of the Privacy header in the request received depending on precondition.
Precondition | Action of AS originating user |
---|---|
No Privacy header |
Add Privacy header set to value header |
Privacy header value set to none |
No Action |
Privacy header value doesn’t include header |
Add value header |
OIRMode=TEMPORARY - OIRDefaultBehaviourType=PRESENTATION_RESTRICTED - OIRPresentationRestrictionType=ALL_PRIVATE_INFORMATION - OIRUserPolicy=ANONYMIZE_FROM
AS of originating user shall set/adjust value of the Privacy header in the request received depending on precondition.
Precondition | Action of AS originating user |
---|---|
No Privacy header |
1. Add Privacy header set to value header 2. Set URI of the From header to sip:anonymous@anonymous.invalid 3. Set display name of the From header to "Anonymous" |
Privacy header value set to none |
No Action |
Privacy header value doesn’t include header |
1. Add value header 2. Set URI of the From header to sip:anonymous@anonymous.invalid 3. Set display name of the From header to "Anonymous" |
OIRMode=TEMPORARY - OIRDefaultBehaviourType=PRESENTATION_RESTRICTED - OIRPresentationRestrictionType=ALL_PRIVATE_INFORMATION - OIRUserPolicy=ADD_USER_PRIVACY
AS of originating user shall set/adjust value of the Privacy header in the request received depending on precondition.
Precondition | Action of AS originating user |
---|---|
No Privacy header |
Add Privacy header set to value header and user |
Privacy header value set to none |
No Action |
Privacy header value doesn’t include header |
1. Add value header 2. Add value user unless already included |
OIRMode=PERMANENT
In a simple scenario, the AS of the originating user must inspect the identity of the originating caller.
-
If Privacy header is not present AS must insert Privacy header set to header information
-
If Privacy header is present and does not include values "id" or "header" corresponding to subscription restriction option AS must insert the appropriate value.
-
If Privacy header is present and includes value "none" this value must be removed
The Privacy value of "id" is selected when "restrict asserted identity" restriction option is subscribed to. The Privacy value of "header" is selected when "restrict all private header information" restriction option is subscribed to.
Additionally, as an operator option From header can be anonymized or Privacy header value "user" added. The latter shall mandate AS of terminating user to anonymize all user configurable headers before forwarding the request to terminating P-CSCF. In case of internetworking, IBCF will be responsible for stripping identity headers and anonymizing other headers before forwarding the request into untrusted network.
Where From header is required to be anonymized the URI value shall be set to the value "sip:anonymous@anonymous.invalid".
Typically, the originating UE would already have the Privacy header value set correctly, however, since UE is considered to be untrusted entity AS must apply these procedures.
Example of Privacy header received from S-CSCF without privacy being requested by UE:
1: INVITE sip:userB_public1@home1.net;gr=2ad8950e-48a5-4a74-8d99-ad76cc7fc74c SIP/2.0
...
10: From: <sip:userA_public1@home1.net>;tag=171828
18: Contact: <sip:userA_public1@home1.net;gr=urn:uuid:388s9-48js9-37749-3774-usuw8u38;comp=sigcomp>;+g.3gpp.icsi - ref="urn%3Aurn-7%3gpp-service.ims.icsi.mmtel"
30: P-Asserted-Identity: "John Doe" <sip:userA_public1@home1.net>
30: Privacy: none
...
AS adjusts the value of Privacy header by removing "none" and adding "id" (restrict asserted identity option):
1: INVITE sip:userB_public1@home1.net;gr=2ad8950e-48a5-4a74-8d99-ad76cc7fc74c SIP/2.0
...
10: From: <sip:userA_public1@home1.net>;tag=637364
18: Contact: <sip:userA_public1@home1.net;gr=urn:uuid:388s9-48js9-37749-3774-usuw8u38;comp=sigcomp>;+g.3gpp.icsi - ref="urn%3Aurn-7%3gpp-service.ims.icsi.mmtel"
30: P-Asserted-Identity: "John Doe" <sip:userA_public1@home1.net>
31: Privacy: id
...
Example of anonymization of the From header in the outgoing INVITE (operator option):
1: INVITE sip:userB_public1@home1.net;gr=2ad8950e-48a5-4a74-8d99-ad76cc7fc74c SIP/2.0
...
10: From: <sip:anonymous@anonymous.invalid>;tag=637364
18: Contact: <sip:userA_public1@home1.net;gr=urn:uuid:388s9-48js9-37749-3774-usuw8u38;comp=sigcomp>;+g.3gpp.icsi - ref="urn%3Aurn-7%3gpp-service.ims.icsi.mmtel"
30: P-Asserted-Identity: "John Doe" <sip:userA_public1@home1.net>
31: Privacy: id
...
OIRMode=PERMANENT - OIRDefaultBehaviourType=PRESENTATION_RESTRICTED - OIRPresentationRestrictionType=ONLY_IDENTITY - OIRUserPolicy=NONE
AS of originating user shall set/adjust value of the Privacy header in the request received depending on precondition.
Precondition | Action of AS originating user |
---|---|
No Privacy header |
Insert header "Privacy: id" |
Privacy header value set to none |
Replace value none with id |
Privacy header exists but doesn’t include value id |
Add value id |
OIRMode=PERMANENT - OIRDefaultBehaviourType=PRESENTATION_RESTRICTED - OIRPresentationRestrictionType=ONLY_IDENTITY - OIRUserPolicy=ANONYMIZE_FROM
-
Replace URI of the From header to sip:anonymous@anonymous.invalid
-
Set the From header display name to "Anonymous"
OIRMode=PERMANENT - OIRDefaultBehaviourType=PRESENTATION_RESTRICTED - OIRPresentationRestrictionType=ONLY_IDENTITY - OIRUserPolicy=ADD_USER_PRIVACY
AS of originating user shall set/adjust value of the Privacy header in the request received depending on precondition.
Precondition | Action of AS originating user |
---|---|
No Privacy header |
Insert header "Privacy: id;user" |
Privacy header value set to none |
Replace value none with id;user |
Privacy header exists but doesn’t include value id or user |
Add value id or user to make sure both are included |
OIRMode=PERMANENT - OIRDefaultBehaviourType=PRESENTATION_RESTRICTED - OIRPresentationRestrictionType=ALL_PRIVATE_INFORMATION - OIRUserPolicy=NONE
AS of originating user shall set/adjust value of the Privacy header in the request received depending on precondition.
Precondition | Action of AS originating user |
---|---|
No Privacy header |
Insert header "Privacy: header" |
Privacy header value set to none |
Replace value none with header |
Privacy header exists but doesn’t include value header |
Add value header |
OIRMode=PERMANENT - OIRDefaultBehaviourType=PRESENTATION_RESTRICTED - OIRPresentationRestrictionType=ALL_PRIVATE_INFORMATION - OIRUserPolicy=ANONYMIZE_FROM
-
Replace URI of the From header to sip:anonymous@anonymous.invalid
-
Set the From header display name to "Anonymous"
OIRMode=PERMANENT - OIRDefaultBehaviourType=PRESENTATION_RESTRICTED - OIRPresentationRestrictionType=ALL_PRIVATE_INFORMATION - OIRUserPolicy=ADD_USER_PRIVACY
AS of originating user shall set/adjust value of the Privacy header in the request received depending on precondition.
Precondition | Action of AS originating user |
---|---|
No Privacy header |
Insert header "Privacy: header;user" |
Privacy header value set to none |
Replace value none with header;user |
Privacy header exists but doesn’t include value header or user |
Add value header or user to make sure both are included |